@slightning/anything-to-string
Version:
Converts anything to a string.
43 lines (42 loc) • 1.19 kB
JavaScript
import { MajorObjectRule, MaximumObjectRule } from "./object";
function isRegExp(data) {
return typeof RegExp != "undefined" && data instanceof RegExp;
}
export class MinimumRegExpRule {
constructor() {
this.test = isRegExp;
}
toString(data, __config, __context) {
return String(data);
}
}
export class LesserRegExpRule {
constructor() {
this.test = isRegExp;
}
toString(data, __config, __context) {
return `RegExp(${String(data)})`;
}
}
export class MajorRegExpRule {
constructor() {
this.test = isRegExp;
}
prepare(data, config, context) {
new MajorObjectRule().prepare(data, config, context);
}
toString(data, config, context) {
return `RegExp(${String(data)}) ${new MajorObjectRule().toString(data, config, context)}`;
}
}
export class MaximumRegExpRule {
constructor() {
this.test = isRegExp;
}
prepare(data, config, context) {
new MaximumObjectRule().prepare(data, config, context);
}
toString(data, config, context) {
return `RegExp(${String(data)}) ${new MaximumObjectRule().toString(data, config, context)}`;
}
}