All files / src/abap/types/basic string_type.ts

95.55% Statements 43/45
100% Branches 13/13
87.5% Functions 7/8
95.55% Lines 43/45

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 33 34 35 36 37 38 39 40 41 42 43 44 451x 1x 1x 1x 1x 1x 1184x 441x 441x 743x 743x 1x 1x 744x 744x 1x 1x 1x 84x 84x 40x 40x 44x 44x 1x 1x 16x 16x 1x 1x 628x 628x 1x 1x 2x 2x 1x 1x 22x 22x 1x 1x     1x
import {AbstractType, AbstractTypeData} from "./_abstract_type";
 
export class StringType extends AbstractType {
  private static readonly singleton = new StringType();
 
  public static get(input?: AbstractTypeData): StringType {
    if (input === undefined) {
      return this.singleton;
    }
    return new StringType(input);
  }
 
  private constructor(input?: AbstractTypeData) {
    super(input);
  }
 
  /** fully qualified symbolic name of the type */
  public getQualifiedName(): string | undefined {
    const qual = this.data?.qualifiedName;
    if (qual === undefined) {
      return "STRING";
    }
    return qual;
  }
 
  public toText() {
    return "```string```";
  }
 
  public isGeneric() {
    return false;
  }
 
  public toABAP(): string {
    return "string";
  }
 
  public containsVoid() {
    return false;
  }
 
  public toCDS() {
    return "abap.string";
  }
}