Skip to content

Instantly share code, notes, and snippets.

@hdemon
Created April 19, 2018 02:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hdemon/4da02c6695a549126ec332991df335ef to your computer and use it in GitHub Desktop.
Save hdemon/4da02c6695a549126ec332991df335ef to your computer and use it in GitHub Desktop.
{
"errors": [],
"tokens": [],
"type": "Program",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 4,
"column": 0
},
"end": {
"line": 16,
"column": 1
}
},
"range": [
17,
179
],
"body": [
{
"type": "FunctionDeclaration",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 4,
"column": 0
},
"end": {
"line": 16,
"column": 1
}
},
"range": [
17,
179
],
"id": {
"type": "Identifier",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 4,
"column": 9
},
"end": {
"line": 4,
"column": 12
}
},
"range": [
26,
29
],
"name": "foo",
"typeAnnotation": null,
"optional": false
},
"params": [
{
"type": "Identifier",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 4,
"column": 13
},
"end": {
"line": 4,
"column": 23
}
},
"range": [
30,
40
],
"name": "x",
"typeAnnotation": {
"type": "TypeAnnotation",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 4,
"column": 14
},
"end": {
"line": 4,
"column": 23
}
},
"range": [
31,
40
],
"typeAnnotation": {
"type": "NullableTypeAnnotation",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 4,
"column": 16
},
"end": {
"line": 4,
"column": 23
}
},
"range": [
33,
40
],
"typeAnnotation": {
"type": "NumberTypeAnnotation",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 4,
"column": 17
},
"end": {
"line": 4,
"column": 23
}
},
"range": [
34,
40
]
}
}
},
"optional": false
}
],
"body": {
"type": "BlockStatement",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 4,
"column": 33
},
"end": {
"line": 16,
"column": 1
}
},
"range": [
50,
179
],
"body": [
{
"type": "SwitchStatement",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 5,
"column": 2
},
"end": {
"line": 13,
"column": 3
}
},
"range": [
54,
161
],
"discriminant": {
"type": "Identifier",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 5,
"column": 10
},
"end": {
"line": 5,
"column": 11
}
},
"range": [
62,
63
],
"name": "x",
"typeAnnotation": null,
"optional": false
},
"cases": [
{
"type": "SwitchCase",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 6,
"column": 4
},
"end": {
"line": 12,
"column": 5
}
},
"range": [
71,
157
],
"test": null,
"consequent": [
{
"type": "BlockStatement",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 6,
"column": 13
},
"end": {
"line": 12,
"column": 5
}
},
"range": [
80,
157
],
"body": [
{
"type": "IfStatement",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 7,
"column": 6
},
"end": {
"line": 9,
"column": 7
}
},
"range": [
88,
119
],
"test": {
"type": "Identifier",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 7,
"column": 10
},
"end": {
"line": 7,
"column": 11
}
},
"range": [
92,
93
],
"name": "x",
"typeAnnotation": null,
"optional": false
},
"consequent": {
"type": "BlockStatement",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 7,
"column": 13
},
"end": {
"line": 9,
"column": 7
}
},
"range": [
95,
119
],
"body": [
{
"type": "BreakStatement",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 8,
"column": 8
},
"end": {
"line": 8,
"column": 14
}
},
"range": [
105,
111
],
"label": null
}
]
},
"alternate": null
},
{
"type": "ThrowStatement",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 11,
"column": 6
},
"end": {
"line": 11,
"column": 30
}
},
"range": [
127,
151
],
"argument": {
"type": "NewExpression",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 11,
"column": 12
},
"end": {
"line": 11,
"column": 29
}
},
"range": [
133,
150
],
"callee": {
"type": "Identifier",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 11,
"column": 16
},
"end": {
"line": 11,
"column": 21
}
},
"range": [
137,
142
],
"name": "Error",
"typeAnnotation": null,
"optional": false
},
"arguments": [
{
"type": "Literal",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 11,
"column": 22
},
"end": {
"line": 11,
"column": 28
}
},
"range": [
143,
149
],
"value": "hmmm",
"raw": "'hmmm'"
}
]
}
}
]
}
]
}
]
},
{
"type": "ReturnStatement",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 15,
"column": 2
},
"end": {
"line": 15,
"column": 14
}
},
"range": [
165,
177
],
"argument": {
"type": "Literal",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 15,
"column": 9
},
"end": {
"line": 15,
"column": 14
}
},
"range": [
172,
177
],
"value": "yup",
"raw": "'yup'"
}
}
]
},
"async": false,
"generator": false,
"predicate": null,
"expression": false,
"returnType": {
"type": "TypeAnnotation",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 4,
"column": 24
},
"end": {
"line": 4,
"column": 32
}
},
"range": [
41,
49
],
"typeAnnotation": {
"type": "StringTypeAnnotation",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 4,
"column": 26
},
"end": {
"line": 4,
"column": 32
}
},
"range": [
43,
49
]
}
},
"typeParameters": null
}
],
"comments": [
{
"type": "Block",
"loc": {
"source": "tests/dev/ur.js",
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 3,
"column": 3
}
},
"range": [
0,
16
],
"value": "*\n * @flow\n "
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment