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 1144x 411x 411x 733x 733x 1x 1x 734x 734x 1x 1x 1x 82x 82x 40x 40x 42x 42x 1x 1x 16x 16x 1x 1x 616x 616x 1x 1x 1x 1x 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";
  }
}