Ast.UsingDeclaration Class
Namespace: Ast
Superclasses: AstNodeProperties
Represents the using_declaration nodes in the syntax tree of your code
Since R2026a
Description
The PQL class UsingDeclaration represents the node using_declaration in the syntax tree of your code.
Using Declaration u = someNamespace::using_declaration;
In this code, the using_declaration node corresponds to a using declaration in C++ such as using namespace std; or using std::printf; in the source.
Predicates
| Type | Raisable | Printable |
|---|---|---|
UsingDeclaration
| Yes | No |
This class defines these predicates that act on the objects of this class. In addition, objects of this class can access the predicates defined by the base class AstNodeProperties. An object of this class is an object of AstNodeProperties class.
| Predicates | Description | Example |
|---|---|---|
is(UsingDeclaration &decl)
| The predicate Example C++ code: #include <vector> using std::vector; // using_declaration node using MyType = int; // using_declaration node The equivalent tree-sitter node is | This example shows a
#include <vector>
using std::vector;
void foo() {
vector<int> v;
}
rule CheckUsingDeclarationIs = { defectUsingIs }
defect defectUsingIs =
when
Cpp.UsingDeclaration.is(&ud)
and ud.nodeText(&txt)
raise "UsingDeclaration.is matched: '{txt}'"
on ud
|
isa(Cpp.Node.Node node, UsingDeclaration &cast)
| The predicate Example C++ code: #include <vector> using std::vector; // using_declaration node using MyType = int; // using_declaration node The equivalent tree-sitter node is | This example shows a
#include <vector>
using std::vector;
void foo() {
vector<int> v;
}
rule CheckUsingDeclarationIs = { defectUsingIs }
defect defectUsingIs =
when
Cpp.UsingDeclaration.is(&ud)
and ud.nodeText(&txt)
raise "UsingDeclaration.is matched: '{txt}'"
on ud
|
identifier(UsingDeclaration self, Cpp.Node.Node &child)
| The For example, consider the following C++ code: // C++ code: using MyType = int; // Equivalent tree-sitter node: // (using_declaration // name: (identifier) @id // ...) The | This example demonstrates using
#include <vector>
using std::vector;
void foo() { vector<int> v; }
rule CheckUsingIdentifier = { defectUsingIdentifier }
defect defectUsingIdentifier =
when
Cpp.UsingDeclaration.is(&ud)
and ud.identifier(&id)
and id.nodeText(&txt)
raise "UsingDeclaration.identifier matched: '{txt}'"
on ud
|
qualifiedIdentifier(UsingDeclaration self, Cpp.Node.Node &child)
| The predicate Example C++ code: using std::vector; Equivalent tree-sitter node: (using_declaration
(qualified_identifier
(namespace_identifier)
(identifier)))
The | This example demonstrates using
#include <vector>
using std::vector;
void foo() {
vector<int> v;
}
rule CheckQualifiedIdentifier = { defectQualifiedIdentifier }
defect defectQualifiedIdentifier =
when
Cpp.UsingDeclaration.is(&ud)
and ud.qualifiedIdentifier(&qid)
and qid.nodeText(&txt)
raise "UsingDeclaration.qualifiedIdentifier matched: "{txt}""
on ud
|
Version History
Introduced in R2026a
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)