@anysphere/scip-typescript
Version:
SCIP indexer for TypeScript and JavaScript
118 lines (112 loc) • 5.34 kB
text/typescript
// < definition syntax 1.0.0 src/`infer-relationship.ts`/
interface Configuration {
// ^^^^^^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/Configuration#
property: number
//^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/Configuration#property.
}
function random(): number {
// ^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/random().
return Math.random()
// ^^^^ reference typescript 5.3.3 lib/`lib.es5.d.ts`/Math#
// ^^^^ reference typescript 5.3.3 lib/`lib.es5.d.ts`/Math.
// ^^^^ reference typescript 5.3.3 lib/`lib.es2015.core.d.ts`/Math#
// ^^^^ reference typescript 5.3.3 lib/`lib.es2015.symbol.wellknown.d.ts`/Math#
// ^^^^^^ reference typescript 5.3.3 lib/`lib.es5.d.ts`/Math#random().
}
export function returnStatement(): Configuration {
// ^^^^^^^^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/returnStatement().
// ^^^^^^^^^^^^^ reference syntax 1.0.0 src/`infer-relationship.ts`/Configuration#
if (random() > 0) {
// ^^^^^^ reference syntax 1.0.0 src/`infer-relationship.ts`/random().
return {
property: 41,
// ^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/property0:
// relationship implementation reference syntax 1.0.0 src/`infer-relationship.ts`/Configuration#property.
}
}
for (let i = 0; i < 9; i++) {
// ^ definition local 2
// ^ reference local 2
// ^ reference local 2
if (random() > i) {
// ^^^^^^ reference syntax 1.0.0 src/`infer-relationship.ts`/random().
// ^ reference local 2
return {
property: 41,
// ^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/property1:
// relationship implementation reference syntax 1.0.0 src/`infer-relationship.ts`/Configuration#property.
}
}
}
for (const i of [1, 2, 3]) {
// ^ definition local 5
if (random() > i) {
// ^^^^^^ reference syntax 1.0.0 src/`infer-relationship.ts`/random().
// ^ reference local 5
return {
property: 41,
// ^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/property2:
// relationship implementation reference syntax 1.0.0 src/`infer-relationship.ts`/Configuration#property.
}
}
}
for (const i in { '1': 2 }) {
// ^ definition local 8
// ^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/`'1'0`:
if (random() > Number.parseInt(i)) {
// ^^^^^^ reference syntax 1.0.0 src/`infer-relationship.ts`/random().
// ^^^^^^ reference typescript 5.3.3 lib/`lib.es5.d.ts`/Number#
// ^^^^^^ reference typescript 5.3.3 lib/`lib.es5.d.ts`/Number.
// ^^^^^^ reference typescript 5.3.3 lib/`lib.es5.d.ts`/Number#
// ^^^^^^ reference typescript 5.3.3 lib/`lib.es2020.number.d.ts`/Number#
// ^^^^^^^^ reference typescript 5.3.3 lib/`lib.es2015.core.d.ts`/NumberConstructor#parseInt().
// ^ reference local 8
return {
property: 41,
// ^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/property3:
// relationship implementation reference syntax 1.0.0 src/`infer-relationship.ts`/Configuration#property.
}
}
}
while (random() < 0) {
// ^^^^^^ reference syntax 1.0.0 src/`infer-relationship.ts`/random().
return {
property: 41,
// ^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/property4:
// relationship implementation reference syntax 1.0.0 src/`infer-relationship.ts`/Configuration#property.
}
}
do {
if (random() > 0) {
// ^^^^^^ reference syntax 1.0.0 src/`infer-relationship.ts`/random().
return {
property: 41,
// ^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/property5:
// relationship implementation reference syntax 1.0.0 src/`infer-relationship.ts`/Configuration#property.
}
}
} while (random() < 0)
// ^^^^^^ reference syntax 1.0.0 src/`infer-relationship.ts`/random().
return {
property: 42,
// ^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/property6:
// relationship implementation reference syntax 1.0.0 src/`infer-relationship.ts`/Configuration#property.
}
}
export function returnStatementInsideArgumentExpression(): Configuration[] {
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/returnStatementInsideArgumentExpression().
// ^^^^^^^^^^^^^ reference syntax 1.0.0 src/`infer-relationship.ts`/Configuration#
return [1].map<Configuration>(number => {
// ^^^ reference typescript 5.3.3 lib/`lib.es5.d.ts`/Array#map().
// ^^^^^^^^^^^^^ reference syntax 1.0.0 src/`infer-relationship.ts`/Configuration#
// ^^^^^^ definition local 12
const incremented = number + 1
// ^^^^^^^^^^^ definition local 15
// ^^^^^^ reference local 12
return {
property: incremented,
// ^^^^^^^^ definition syntax 1.0.0 src/`infer-relationship.ts`/property7:
// ^^^^^^^^^^^ reference local 15
}
})
}