600 lines
19 KiB
JSON
600 lines
19 KiB
JSON
{
|
|
"type": "File",
|
|
"start": 0,
|
|
"end": 86,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 0
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 86
|
|
}
|
|
},
|
|
"program": {
|
|
"type": "Program",
|
|
"start": 0,
|
|
"end": 86,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 0
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 86
|
|
}
|
|
},
|
|
"sourceType": "module",
|
|
"body": [
|
|
{
|
|
"type": "DeclareFunction",
|
|
"start": 0,
|
|
"end": 86,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 0
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 86
|
|
}
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"start": 17,
|
|
"end": 85,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 17
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 85
|
|
},
|
|
"identifierName": "my_filter"
|
|
},
|
|
"name": "my_filter",
|
|
"typeAnnotation": {
|
|
"type": "TypeAnnotation",
|
|
"start": 26,
|
|
"end": 85,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 26
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 85
|
|
}
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "FunctionTypeAnnotation",
|
|
"start": 26,
|
|
"end": 85,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 26
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 85
|
|
}
|
|
},
|
|
"typeParameters": {
|
|
"type": "TypeParameterDeclaration",
|
|
"start": 26,
|
|
"end": 42,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 26
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 42
|
|
}
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "TypeParameter",
|
|
"start": 27,
|
|
"end": 28,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 27
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 28
|
|
}
|
|
},
|
|
"name": "T",
|
|
"variance": null
|
|
},
|
|
{
|
|
"type": "TypeParameter",
|
|
"start": 30,
|
|
"end": 41,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 30
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 41
|
|
}
|
|
},
|
|
"name": "P",
|
|
"variance": null,
|
|
"bound": {
|
|
"type": "TypeAnnotation",
|
|
"start": 31,
|
|
"end": 41,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 31
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 41
|
|
}
|
|
},
|
|
"typeAnnotation": {
|
|
"type": "GenericTypeAnnotation",
|
|
"start": 33,
|
|
"end": 41,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 33
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 41
|
|
}
|
|
},
|
|
"typeParameters": {
|
|
"type": "TypeParameterInstantiation",
|
|
"start": 38,
|
|
"end": 41,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 38
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 41
|
|
}
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "NumberLiteralTypeAnnotation",
|
|
"start": 39,
|
|
"end": 40,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 39
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 40
|
|
}
|
|
},
|
|
"extra": {
|
|
"rawValue": 1,
|
|
"raw": "1"
|
|
},
|
|
"value": 1
|
|
}
|
|
]
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"start": 33,
|
|
"end": 38,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 33
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 38
|
|
},
|
|
"identifierName": "$Pred"
|
|
},
|
|
"name": "$Pred"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "FunctionTypeParam",
|
|
"start": 43,
|
|
"end": 54,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 43
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 54
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"start": 43,
|
|
"end": 44,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 43
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 44
|
|
},
|
|
"identifierName": "v"
|
|
},
|
|
"name": "v"
|
|
},
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "GenericTypeAnnotation",
|
|
"start": 46,
|
|
"end": 54,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 46
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 54
|
|
}
|
|
},
|
|
"typeParameters": {
|
|
"type": "TypeParameterInstantiation",
|
|
"start": 51,
|
|
"end": 54,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 51
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 54
|
|
}
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "GenericTypeAnnotation",
|
|
"start": 52,
|
|
"end": 53,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 52
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 53
|
|
}
|
|
},
|
|
"typeParameters": null,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"start": 52,
|
|
"end": 53,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 52
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 53
|
|
},
|
|
"identifierName": "T"
|
|
},
|
|
"name": "T"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"start": 46,
|
|
"end": 51,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 46
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 51
|
|
},
|
|
"identifierName": "Array"
|
|
},
|
|
"name": "Array"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "FunctionTypeParam",
|
|
"start": 56,
|
|
"end": 61,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 56
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 61
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "Identifier",
|
|
"start": 56,
|
|
"end": 58,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 56
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 58
|
|
},
|
|
"identifierName": "cb"
|
|
},
|
|
"name": "cb"
|
|
},
|
|
"optional": false,
|
|
"typeAnnotation": {
|
|
"type": "GenericTypeAnnotation",
|
|
"start": 60,
|
|
"end": 61,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 60
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 61
|
|
}
|
|
},
|
|
"typeParameters": null,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"start": 60,
|
|
"end": 61,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 60
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 61
|
|
},
|
|
"identifierName": "P"
|
|
},
|
|
"name": "P"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"rest": null,
|
|
"returnType": {
|
|
"type": "GenericTypeAnnotation",
|
|
"start": 64,
|
|
"end": 85,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 64
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 85
|
|
}
|
|
},
|
|
"typeParameters": {
|
|
"type": "TypeParameterInstantiation",
|
|
"start": 69,
|
|
"end": 85,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 69
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 85
|
|
}
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "GenericTypeAnnotation",
|
|
"start": 70,
|
|
"end": 84,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 70
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 84
|
|
}
|
|
},
|
|
"typeParameters": {
|
|
"type": "TypeParameterInstantiation",
|
|
"start": 77,
|
|
"end": 84,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 77
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 84
|
|
}
|
|
},
|
|
"params": [
|
|
{
|
|
"type": "GenericTypeAnnotation",
|
|
"start": 78,
|
|
"end": 79,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 78
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 79
|
|
}
|
|
},
|
|
"typeParameters": null,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"start": 78,
|
|
"end": 79,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 78
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 79
|
|
},
|
|
"identifierName": "T"
|
|
},
|
|
"name": "T"
|
|
}
|
|
},
|
|
{
|
|
"type": "GenericTypeAnnotation",
|
|
"start": 80,
|
|
"end": 81,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 80
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 81
|
|
}
|
|
},
|
|
"typeParameters": null,
|
|
"id": {
|
|
"type": "Identifier",
|
|
"start": 80,
|
|
"end": 81,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 80
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 81
|
|
},
|
|
"identifierName": "P"
|
|
},
|
|
"name": "P"
|
|
}
|
|
},
|
|
{
|
|
"type": "NumberLiteralTypeAnnotation",
|
|
"start": 82,
|
|
"end": 83,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 82
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 83
|
|
}
|
|
},
|
|
"extra": {
|
|
"rawValue": 1,
|
|
"raw": "1"
|
|
},
|
|
"value": 1
|
|
}
|
|
]
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"start": 70,
|
|
"end": 77,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 70
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 77
|
|
},
|
|
"identifierName": "$Refine"
|
|
},
|
|
"name": "$Refine"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"id": {
|
|
"type": "Identifier",
|
|
"start": 64,
|
|
"end": 69,
|
|
"loc": {
|
|
"start": {
|
|
"line": 1,
|
|
"column": 64
|
|
},
|
|
"end": {
|
|
"line": 1,
|
|
"column": 69
|
|
},
|
|
"identifierName": "Array"
|
|
},
|
|
"name": "Array"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"predicate": null
|
|
}
|
|
],
|
|
"directives": []
|
|
}
|
|
} |