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

60% Statements 9/15
50% Branches 2/4
42.86% Functions 3/7
60% Lines 9/15

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 411x   1x         7x 7x   7x     7x 7x       3x       3x                                    
import {AbstractType} from "./_abstract_type";
 
export class PackedType extends AbstractType {
  private readonly length: number;
  private readonly decimals: number;
 
  public constructor(length: number, decimals: number, qualifiedName?: string) {
    super(qualifiedName);
    Iif (length <= 0) {
      throw new Error("Bad LENGTH");
    } else Iif (decimals < 0) {
      throw new Error("Bad DECIMALS");
    }
    this.length = length;
    this.decimals = decimals;
  }
 
  public getLength() {
    return this.length;
  }
 
  public getDecimals() {
    return this.decimals;
  }
 
  public toText() {
    return "```p LENGTH " + this.getLength() + " DECIMALS " + this.getDecimals() + "```";
  }
 
  public toABAP(): string {
    return "p LENGTH " + this.getLength() + " DECIMALS " + this.getDecimals();
  }
 
  public isGeneric() {
    return false;
  }
 
  public containsVoid() {
    return false;
  }
}