Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/php-static-scanner-instrumentalization.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/nikic/php-parser/test/code/parser/expr/new.test')
-rw-r--r--vendor/nikic/php-parser/test/code/parser/expr/new.test146
1 files changed, 146 insertions, 0 deletions
diff --git a/vendor/nikic/php-parser/test/code/parser/expr/new.test b/vendor/nikic/php-parser/test/code/parser/expr/new.test
new file mode 100644
index 0000000..a132bbb
--- /dev/null
+++ b/vendor/nikic/php-parser/test/code/parser/expr/new.test
@@ -0,0 +1,146 @@
+New
+-----
+<?php
+
+new A;
+new A($b);
+
+// class name variations
+new $a();
+new $a['b']();
+new A::$b();
+// DNCR object access
+new $a->b();
+new $a->b->c();
+new $a->b['c']();
+new $a->b{'c'}();
+
+// test regression introduces by new dereferencing syntax
+(new A);
+-----
+array(
+ 0: Expr_New(
+ class: Name(
+ parts: array(
+ 0: A
+ )
+ )
+ args: array(
+ )
+ )
+ 1: Expr_New(
+ class: Name(
+ parts: array(
+ 0: A
+ )
+ )
+ args: array(
+ 0: Arg(
+ value: Expr_Variable(
+ name: b
+ )
+ byRef: false
+ unpack: false
+ )
+ )
+ )
+ 2: Expr_New(
+ class: Expr_Variable(
+ name: a
+ )
+ args: array(
+ )
+ comments: array(
+ 0: // class name variations
+ )
+ )
+ 3: Expr_New(
+ class: Expr_ArrayDimFetch(
+ var: Expr_Variable(
+ name: a
+ )
+ dim: Scalar_String(
+ value: b
+ )
+ )
+ args: array(
+ )
+ )
+ 4: Expr_New(
+ class: Expr_StaticPropertyFetch(
+ class: Name(
+ parts: array(
+ 0: A
+ )
+ )
+ name: b
+ )
+ args: array(
+ )
+ )
+ 5: Expr_New(
+ class: Expr_PropertyFetch(
+ var: Expr_Variable(
+ name: a
+ )
+ name: b
+ )
+ args: array(
+ )
+ comments: array(
+ 0: // DNCR object access
+ )
+ )
+ 6: Expr_New(
+ class: Expr_PropertyFetch(
+ var: Expr_PropertyFetch(
+ var: Expr_Variable(
+ name: a
+ )
+ name: b
+ )
+ name: c
+ )
+ args: array(
+ )
+ )
+ 7: Expr_New(
+ class: Expr_ArrayDimFetch(
+ var: Expr_PropertyFetch(
+ var: Expr_Variable(
+ name: a
+ )
+ name: b
+ )
+ dim: Scalar_String(
+ value: c
+ )
+ )
+ args: array(
+ )
+ )
+ 8: Expr_New(
+ class: Expr_ArrayDimFetch(
+ var: Expr_PropertyFetch(
+ var: Expr_Variable(
+ name: a
+ )
+ name: b
+ )
+ dim: Scalar_String(
+ value: c
+ )
+ )
+ args: array(
+ )
+ )
+ 9: Expr_New(
+ class: Name(
+ parts: array(
+ 0: A
+ )
+ )
+ args: array(
+ )
+ )
+) \ No newline at end of file