UNPKG

mathjslab

Version:

MathJSLab - Interpreter with language syntax like MATLAB/Octave

28 lines (27 loc) 867 B
export class CharString { str: string; constructor(str: string) { this.str = str; } static isThis(obj: any): boolean { return 'str' in obj; } static parse(str: string): CharString { return new CharString(str); } static unparse(value: CharString): string { return value.str; } static unparseML(value: CharString): string { return '<mn>' + value.str + '</mn>'; } static removeQuotes(value: CharString): CharString { const firstchar = value.str[0]; const lastchar = value.str[value.str.length - 1]; if (value.str.length >= 2 && ((firstchar === '"' && lastchar === '"') || (firstchar === "'" && lastchar === "'"))) { return new CharString(value.str.substring(1, value.str.length - 1)); } else { return value; } } }