1 {
   2     "type": "Program",
   3     "body": [
   4         {
   5             "type": "SwitchStatement",
   6             "discriminant": {
   7                 "type": "Identifier",
   8                 "name": "key"
   9             },
  10             "cases": []
  11         }
  12     ]
  13 }
  14 {
  15     "type": "Program",
  16     "body": [
  17         {
  18             "type": "SwitchStatement",
  19             "discriminant": {
  20                 "type": "Identifier",
  21                 "name": "key"
  22             },
  23             "cases": [
  24                 {
  25                     "type": "SwitchCase",
  26                     "test": {
  27                         "type": "Literal",
  28                         "value": 2
  29                     },
  30                     "consequent": [
  31                         {
  32                             "type": "ExpressionStatement",
  33                             "expression": {
  34                                 "type": "CallExpression",
  35                                 "callee": {
  36                                     "type": "Identifier",
  37                                     "name": "hello"
  38                                 },
  39                                 "arguments": []
  40                             }
  41                         },
  42                         {
  43                             "type": "BreakStatement",
  44                             "label": null
  45                         }
  46                     ]
  47                 }
  48             ]
  49         }
  50     ]
  51 }
  52 {
  53     "type": "Program",
  54     "body": [
  55         {
  56             "type": "SwitchStatement",
  57             "discriminant": {
  58                 "type": "Identifier",
  59                 "name": "key"
  60             },
  61             "cases": [
  62                 {
  63                     "type": "SwitchCase",
  64                     "test": {
  65                         "type": "Literal",
  66                         "value": 4
  67                     },
  68                     "consequent": [
  69                         {
  70                             "type": "ExpressionStatement",
  71                             "expression": {
  72                                 "type": "CallExpression",
  73                                 "callee": {
  74                                     "type": "Identifier",
  75                                     "name": "hello"
  76                                 },
  77                                 "arguments": []
  78                             }
  79                         },
  80                         {
  81                             "type": "BreakStatement",
  82                             "label": null
  83                         }
  84                     ]
  85                 },
  86                 {
  87                     "type": "SwitchCase",
  88                     "test": {
  89                         "type": "Literal",
  90                         "value": 2
  91                     },
  92                     "consequent": [
  93                         {
  94                             "type": "ExpressionStatement",
  95                             "expression": {
  96                                 "type": "CallExpression",
  97                                 "callee": {
  98                                     "type": "Identifier",
  99                                     "name": "world"
 100                                 },
 101                                 "arguments": []
 102                             }
 103                         },
 104                         {
 105                             "type": "BreakStatement",
 106                             "label": null
 107                         }
 108                     ]
 109                 },
 110                 {
 111                     "type": "SwitchCase",
 112                     "test": null,
 113                     "consequent": [
 114                         {
 115                             "type": "BreakStatement",
 116                             "label": null
 117                         }
 118                     ]
 119                 }
 120             ]
 121         }
 122     ]
 123 }