comparison vendor/nikic/php-parser/test/code/parser/stmt/tryCatch.test @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children 5fb285c0d0e3
comparison
equal deleted inserted replaced
-1:000000000000 0:4c8ae668cc8c
1 Try/catch
2 -----
3 <?php
4
5 try {
6 doTry();
7 } catch (A $b) {
8 doCatchA();
9 } catch (B $c) {
10 doCatchB();
11 } finally {
12 doFinally();
13 }
14
15 // no finally
16 try { }
17 catch (A $b) { }
18
19 // no catch
20 try { }
21 finally { }
22
23 -----
24 array(
25 0: Stmt_TryCatch(
26 stmts: array(
27 0: Expr_FuncCall(
28 name: Name(
29 parts: array(
30 0: doTry
31 )
32 )
33 args: array(
34 )
35 )
36 )
37 catches: array(
38 0: Stmt_Catch(
39 types: array(
40 0: Name(
41 parts: array(
42 0: A
43 )
44 )
45 )
46 var: b
47 stmts: array(
48 0: Expr_FuncCall(
49 name: Name(
50 parts: array(
51 0: doCatchA
52 )
53 )
54 args: array(
55 )
56 )
57 )
58 )
59 1: Stmt_Catch(
60 types: array(
61 0: Name(
62 parts: array(
63 0: B
64 )
65 )
66 )
67 var: c
68 stmts: array(
69 0: Expr_FuncCall(
70 name: Name(
71 parts: array(
72 0: doCatchB
73 )
74 )
75 args: array(
76 )
77 )
78 )
79 )
80 )
81 finally: Stmt_Finally(
82 stmts: array(
83 0: Expr_FuncCall(
84 name: Name(
85 parts: array(
86 0: doFinally
87 )
88 )
89 args: array(
90 )
91 )
92 )
93 )
94 )
95 1: Stmt_TryCatch(
96 stmts: array(
97 )
98 catches: array(
99 0: Stmt_Catch(
100 types: array(
101 0: Name(
102 parts: array(
103 0: A
104 )
105 )
106 )
107 var: b
108 stmts: array(
109 )
110 )
111 )
112 finally: null
113 comments: array(
114 0: // no finally
115 )
116 )
117 2: Stmt_TryCatch(
118 stmts: array(
119 )
120 catches: array(
121 )
122 finally: Stmt_Finally(
123 stmts: array(
124 )
125 )
126 comments: array(
127 0: // no catch
128 )
129 )
130 )