All files TypeAlias.ts

81.25% Statements 26/32
100% Branches 1/1
25% Functions 1/4
81.25% Lines 26/32

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 331x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x     1x 1x     1x 1x     1x  
/*
 * This file is released under the MIT license.
 * Copyright (c) 2023, Mike Lischke
 *
 * See LICENSE file for more info.
 */
 
import { ReferenceKind, Type, TypeKind } from "./types";
 
import { BaseSymbol } from "./BaseSymbol";
 
/** An alias for another type. */
export class TypeAlias extends BaseSymbol implements Type {
    private targetType: Type;
 
    public constructor(name: string, target: Type) {
        super(name);
        this.targetType = target;
    }
 
    public get baseTypes(): Type[] {
        return [this.targetType];
    }
 
    public get kind(): TypeKind {
        return TypeKind.Alias;
    }
 
    public get reference(): ReferenceKind {
        return ReferenceKind.Irrelevant;
    }
}