staticProperty.test 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. UVS static access
  2. -----
  3. <?php
  4. A::$b;
  5. $A::$b;
  6. 'A'::$b;
  7. ('A' . '')::$b;
  8. 'A'[0]::$b;
  9. A::$$b;
  10. A::$$c[1];
  11. A::$A::$b;
  12. -----
  13. array(
  14. 0: Stmt_Expression(
  15. expr: Expr_StaticPropertyFetch(
  16. class: Name(
  17. name: A
  18. )
  19. name: VarLikeIdentifier(
  20. name: b
  21. )
  22. )
  23. )
  24. 1: Stmt_Expression(
  25. expr: Expr_StaticPropertyFetch(
  26. class: Expr_Variable(
  27. name: A
  28. )
  29. name: VarLikeIdentifier(
  30. name: b
  31. )
  32. )
  33. )
  34. 2: Stmt_Expression(
  35. expr: Expr_StaticPropertyFetch(
  36. class: Scalar_String(
  37. value: A
  38. )
  39. name: VarLikeIdentifier(
  40. name: b
  41. )
  42. )
  43. )
  44. 3: Stmt_Expression(
  45. expr: Expr_StaticPropertyFetch(
  46. class: Expr_BinaryOp_Concat(
  47. left: Scalar_String(
  48. value: A
  49. )
  50. right: Scalar_String(
  51. value:
  52. )
  53. )
  54. name: VarLikeIdentifier(
  55. name: b
  56. )
  57. )
  58. )
  59. 4: Stmt_Expression(
  60. expr: Expr_StaticPropertyFetch(
  61. class: Expr_ArrayDimFetch(
  62. var: Scalar_String(
  63. value: A
  64. )
  65. dim: Scalar_Int(
  66. value: 0
  67. )
  68. )
  69. name: VarLikeIdentifier(
  70. name: b
  71. )
  72. )
  73. )
  74. 5: Stmt_Expression(
  75. expr: Expr_StaticPropertyFetch(
  76. class: Name(
  77. name: A
  78. )
  79. name: Expr_Variable(
  80. name: b
  81. )
  82. )
  83. )
  84. 6: Stmt_Expression(
  85. expr: Expr_ArrayDimFetch(
  86. var: Expr_StaticPropertyFetch(
  87. class: Name(
  88. name: A
  89. )
  90. name: Expr_Variable(
  91. name: c
  92. )
  93. )
  94. dim: Scalar_Int(
  95. value: 1
  96. )
  97. )
  98. )
  99. 7: Stmt_Expression(
  100. expr: Expr_StaticPropertyFetch(
  101. class: Expr_StaticPropertyFetch(
  102. class: Name(
  103. name: A
  104. )
  105. name: VarLikeIdentifier(
  106. name: A
  107. )
  108. )
  109. name: VarLikeIdentifier(
  110. name: b
  111. )
  112. )
  113. )
  114. )