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

91.11% Statements 41/45
100% Branches 9/9
77.77% Functions 7/9
91.11% Lines 41/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 683367x 683367x 1x 1x 683366x 683366x 1x 1x 3x 3x 1x 1x 85x 85x 1x 1x 67x 67x 1x 1x 4x 4x 1x 1x 18x 18x 1x 1x 133x 133x 1x 1x     1x 1x     1x
import {AbstractType} from "./_abstract_type";
 
export class CharacterType extends AbstractType {
  private readonly length: number;
 
  public constructor(length: number, qualifiedName?: string) {
    super(qualifiedName);
    if (length <= 0) {
      throw new Error("Bad LENGTH");
    }
    this.length = length;
  }
 
  public cloneType(qualifiedName?: string) {
    return new CharacterType(this.length, qualifiedName);
  }
 
  public getLength() {
    return this.length;
  }
 
  public toText() {
    return "```c LENGTH " + this.getLength() + "```";
  }
 
  public toABAP() {
    return "c LENGTH " + this.getLength();
  }
 
  public isGeneric() {
    return false;
  }
 
  public containsVoid() {
    return false;
  }
 
  public getIdentifier() {
    return undefined;
  }
 
  public toCDS() {
    return "abap.char( " + this.getLength() + " )";
  }
}