@northscaler/better-enum
Version:
Better enumeration support for TypeScript than its `enum` keyword. This class is modeled after [Java's enumeration pattern](https://docs.oracle.com/javase/tutorial/java/javaOO/enum.html), where enums are instances of classes. This library provides a base
42 lines (35 loc) • 1 kB
text/typescript
import {
IllegalArgumentError,
IllegalStateError,
BetterErrorConstructorArg,
} from '@northscaler/better-error'
export class DuplicateEnumerationDeclarationError extends IllegalArgumentError {
constructor(arg?: BetterErrorConstructorArg) {
super(arg)
}
}
export class InvalidEnumerationNameError extends IllegalArgumentError {
constructor(arg?: BetterErrorConstructorArg) {
super(arg)
}
}
export class InvalidEnumerationOrdinalError extends IllegalArgumentError {
constructor(arg?: BetterErrorConstructorArg) {
super(arg)
}
}
export class UnidentifiableEnumerationValueError extends IllegalArgumentError {
constructor(arg?: BetterErrorConstructorArg) {
super(arg)
}
}
export class UnknownEnumerationClassError extends IllegalArgumentError {
constructor(arg?: BetterErrorConstructorArg) {
super(arg)
}
}
export class IllegallyExtendedEnumerationError extends IllegalStateError {
constructor(arg?: BetterErrorConstructorArg) {
super(arg)
}
}