|
|
|
@ -0,0 +1,103 @@
|
|
|
|
|
+- Input[@CanonicalImage = null, @ExcludedLinesCount = 0, @ExcludedRangesCount = 0, @Sourcecode = "--
|
|
|
|
|
-- See https://github.com/pmd/pmd/issues/3515
|
|
|
|
|
--
|
|
|
|
|
|
|
|
|
|
CREATE OR REPLACE PROCEDURE EXAMPLE_PROCEDURE IS
|
|
|
|
|
--
|
|
|
|
|
TYPE example_data_rt IS RECORD(
|
|
|
|
|
field_one PLS_INTEGER,
|
|
|
|
|
field_two PLS_INTEGER,
|
|
|
|
|
field_three PLS_INTEGER);
|
|
|
|
|
--
|
|
|
|
|
TYPE example_data_aat IS TABLE OF example_data_rt INDEX BY BINARY_INTEGER;
|
|
|
|
|
--
|
|
|
|
|
l_example_data example_data_aat;
|
|
|
|
|
--
|
|
|
|
|
BEGIN
|
|
|
|
|
--
|
|
|
|
|
SELECT 1 field_value_one, 2 field_value_two, 3 field_value_three
|
|
|
|
|
INTO l_example_data(1).field_one,l_example_data(1).field_two,l_example_data(1).field_three
|
|
|
|
|
FROM DUAL;
|
|
|
|
|
--
|
|
|
|
|
END EXAMPLE_PROCEDURE;
|
|
|
|
|
"]
|
|
|
|
|
+- Global[@CanonicalImage = null]
|
|
|
|
|
+- ProgramUnit[@CanonicalImage = null, @MethodName = "EXAMPLE_PROCEDURE", @Name = "EXAMPLE_PROCEDURE", @ObjectName = null]
|
|
|
|
|
+- MethodDeclarator[@CanonicalImage = "EXAMPLE_PROCEDURE", @Image = "EXAMPLE_PROCEDURE", @ParameterCount = 1]
|
|
|
|
|
| +- ObjectNameDeclaration[@CanonicalImage = "EXAMPLE_PROCEDURE", @Image = "EXAMPLE_PROCEDURE"]
|
|
|
|
|
| +- ID[@CanonicalImage = "EXAMPLE_PROCEDURE", @Image = "EXAMPLE_PROCEDURE"]
|
|
|
|
|
+- DeclarativeSection[@CanonicalImage = null]
|
|
|
|
|
| +- DeclarativeUnit[@CanonicalImage = null]
|
|
|
|
|
| | +- SubTypeDefinition[@CanonicalImage = "EXAMPLE_DATA_RT", @Image = "example_data_rt"]
|
|
|
|
|
| | +- QualifiedID[@CanonicalImage = "EXAMPLE_DATA_RT", @Image = "example_data_rt"]
|
|
|
|
|
| | +- FieldDeclaration[@CanonicalImage = "FIELD_ONE", @Image = "field_one"]
|
|
|
|
|
| | | +- ID[@CanonicalImage = "FIELD_ONE", @Image = "field_one"]
|
|
|
|
|
| | | +- Datatype[@CanonicalImage = "PLS_INTEGER", @Image = "PLS_INTEGER", @TypeImage = "PLS_INTEGER"]
|
|
|
|
|
| | | +- ScalarDataTypeName[@CanonicalImage = "PLS_INTEGER", @Image = "PLS_INTEGER"]
|
|
|
|
|
| | +- FieldDeclaration[@CanonicalImage = "FIELD_TWO", @Image = "field_two"]
|
|
|
|
|
| | | +- ID[@CanonicalImage = "FIELD_TWO", @Image = "field_two"]
|
|
|
|
|
| | | +- Datatype[@CanonicalImage = "PLS_INTEGER", @Image = "PLS_INTEGER", @TypeImage = "PLS_INTEGER"]
|
|
|
|
|
| | | +- ScalarDataTypeName[@CanonicalImage = "PLS_INTEGER", @Image = "PLS_INTEGER"]
|
|
|
|
|
| | +- FieldDeclaration[@CanonicalImage = "FIELD_THREE", @Image = "field_three"]
|
|
|
|
|
| | +- ID[@CanonicalImage = "FIELD_THREE", @Image = "field_three"]
|
|
|
|
|
| | +- Datatype[@CanonicalImage = "PLS_INTEGER", @Image = "PLS_INTEGER", @TypeImage = "PLS_INTEGER"]
|
|
|
|
|
| | +- ScalarDataTypeName[@CanonicalImage = "PLS_INTEGER", @Image = "PLS_INTEGER"]
|
|
|
|
|
| +- DeclarativeUnit[@CanonicalImage = null]
|
|
|
|
|
| | +- SubTypeDefinition[@CanonicalImage = "EXAMPLE_DATA_AAT", @Image = "example_data_aat"]
|
|
|
|
|
| | +- QualifiedID[@CanonicalImage = "EXAMPLE_DATA_AAT", @Image = "example_data_aat"]
|
|
|
|
|
| | +- Datatype[@CanonicalImage = "EXAMPLE_DATA_RT", @Image = "example_data_rt", @TypeImage = "example_data_rt"]
|
|
|
|
|
| | | +- QualifiedName[@CanonicalImage = "EXAMPLE_DATA_RT", @Image = "example_data_rt"]
|
|
|
|
|
| | | +- UnqualifiedID[@CanonicalImage = "EXAMPLE_DATA_RT", @Image = "example_data_rt"]
|
|
|
|
|
| | +- Datatype[@CanonicalImage = "BINARY_INTEGER", @Image = "BINARY_INTEGER", @TypeImage = "BINARY_INTEGER"]
|
|
|
|
|
| | +- ScalarDataTypeName[@CanonicalImage = "BINARY_INTEGER", @Image = "BINARY_INTEGER"]
|
|
|
|
|
| +- DeclarativeUnit[@CanonicalImage = null]
|
|
|
|
|
| +- VariableOrConstantDeclaration[@CanonicalImage = null]
|
|
|
|
|
| +- VariableOrConstantDeclarator[@CanonicalImage = "L_EXAMPLE_DATA EXAMPLE_DATA_AAT", @Image = "l_example_data example_data_aat"]
|
|
|
|
|
| +- VariableOrConstantDeclaratorId[@Array = false, @ArrayDepth = 0, @CanonicalImage = "L_EXAMPLE_DATA", @Image = "l_example_data"]
|
|
|
|
|
| | +- ID[@CanonicalImage = "L_EXAMPLE_DATA", @Image = "l_example_data"]
|
|
|
|
|
| +- Datatype[@CanonicalImage = "EXAMPLE_DATA_AAT", @Image = "example_data_aat", @TypeImage = "example_data_aat"]
|
|
|
|
|
| +- QualifiedName[@CanonicalImage = "EXAMPLE_DATA_AAT", @Image = "example_data_aat"]
|
|
|
|
|
| +- UnqualifiedID[@CanonicalImage = "EXAMPLE_DATA_AAT", @Image = "example_data_aat"]
|
|
|
|
|
+- Statement[@CanonicalImage = null]
|
|
|
|
|
| +- UnlabelledStatement[@CanonicalImage = null]
|
|
|
|
|
| +- SelectIntoStatement[@All = false, @CanonicalImage = null, @Distinct = false, @Unique = false]
|
|
|
|
|
| +- SelectList[@CanonicalImage = null]
|
|
|
|
|
| | +- SqlExpression[@CanonicalImage = "1", @Image = "1"]
|
|
|
|
|
| | | +- PrimaryPrefix[@CanonicalImage = "1", @Image = "1", @SelfModifier = false]
|
|
|
|
|
| | | +- Literal[@CanonicalImage = "1", @Image = "1"]
|
|
|
|
|
| | | +- NumericLiteral[@CanonicalImage = "1", @Image = "1"]
|
|
|
|
|
| | +- ColumnAlias[@CanonicalImage = "FIELD_VALUE_ONE", @Image = "field_value_one"]
|
|
|
|
|
| | | +- ID[@CanonicalImage = "FIELD_VALUE_ONE", @Image = "field_value_one"]
|
|
|
|
|
| | +- SqlExpression[@CanonicalImage = "2", @Image = "2"]
|
|
|
|
|
| | | +- PrimaryPrefix[@CanonicalImage = "2", @Image = "2", @SelfModifier = false]
|
|
|
|
|
| | | +- Literal[@CanonicalImage = "2", @Image = "2"]
|
|
|
|
|
| | | +- NumericLiteral[@CanonicalImage = "2", @Image = "2"]
|
|
|
|
|
| | +- ColumnAlias[@CanonicalImage = "FIELD_VALUE_TWO", @Image = "field_value_two"]
|
|
|
|
|
| | | +- ID[@CanonicalImage = "FIELD_VALUE_TWO", @Image = "field_value_two"]
|
|
|
|
|
| | +- SqlExpression[@CanonicalImage = "3", @Image = "3"]
|
|
|
|
|
| | | +- PrimaryPrefix[@CanonicalImage = "3", @Image = "3", @SelfModifier = false]
|
|
|
|
|
| | | +- Literal[@CanonicalImage = "3", @Image = "3"]
|
|
|
|
|
| | | +- NumericLiteral[@CanonicalImage = "3", @Image = "3"]
|
|
|
|
|
| | +- ColumnAlias[@CanonicalImage = "FIELD_VALUE_THREE", @Image = "field_value_three"]
|
|
|
|
|
| | +- ID[@CanonicalImage = "FIELD_VALUE_THREE", @Image = "field_value_three"]
|
|
|
|
|
| +- IntoClause[@CanonicalImage = null]
|
|
|
|
|
| | +- VariableName[@CanonicalImage = "L_EXAMPLE_DATA(1).FIELD_ONE", @Image = "l_example_data(1).field_one"]
|
|
|
|
|
| | | +- ID[@CanonicalImage = "L_EXAMPLE_DATA", @Image = "l_example_data"]
|
|
|
|
|
| | | +- Literal[@CanonicalImage = "1", @Image = "1"]
|
|
|
|
|
| | | | +- NumericLiteral[@CanonicalImage = "1", @Image = "1"]
|
|
|
|
|
| | | +- ID[@CanonicalImage = "FIELD_ONE", @Image = "field_one"]
|
|
|
|
|
| | +- VariableName[@CanonicalImage = "L_EXAMPLE_DATA(1).FIELD_TWO", @Image = "l_example_data(1).field_two"]
|
|
|
|
|
| | | +- ID[@CanonicalImage = "L_EXAMPLE_DATA", @Image = "l_example_data"]
|
|
|
|
|
| | | +- Literal[@CanonicalImage = "1", @Image = "1"]
|
|
|
|
|
| | | | +- NumericLiteral[@CanonicalImage = "1", @Image = "1"]
|
|
|
|
|
| | | +- ID[@CanonicalImage = "FIELD_TWO", @Image = "field_two"]
|
|
|
|
|
| | +- VariableName[@CanonicalImage = "L_EXAMPLE_DATA(1).FIELD_THREE", @Image = "l_example_data(1).field_three"]
|
|
|
|
|
| | +- ID[@CanonicalImage = "L_EXAMPLE_DATA", @Image = "l_example_data"]
|
|
|
|
|
| | +- Literal[@CanonicalImage = "1", @Image = "1"]
|
|
|
|
|
| | | +- NumericLiteral[@CanonicalImage = "1", @Image = "1"]
|
|
|
|
|
| | +- ID[@CanonicalImage = "FIELD_THREE", @Image = "field_three"]
|
|
|
|
|
| +- FromClause[@CanonicalImage = null]
|
|
|
|
|
| +- TableReference[@CanonicalImage = null]
|
|
|
|
|
| +- TableName[@CanonicalImage = "DUAL", @Image = "DUAL"]
|
|
|
|
|
| +- ID[@CanonicalImage = "DUAL", @Image = "DUAL"]
|
|
|
|
|
+- ID[@CanonicalImage = "EXAMPLE_PROCEDURE", @Image = "EXAMPLE_PROCEDURE"]
|