194 lines
9.2 KiB
JSON
194 lines
9.2 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",
|
|
"interpreter": null,
|
|
"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": []
|
|
}
|
|
} |