Commit graph

407 commits

Author SHA1 Message Date
Kir_Antipov
9ca1e9f0d9 Moved FailMode to its own file 2023-05-17 15:29:47 +03:00
Kir_Antipov
5a2e5f176c Added enum module 2023-05-17 15:25:02 +03:00
Kir_Antipov
64f717d127 Implemented Object-like Enum interface 2023-05-17 15:24:43 +03:00
Kir_Antipov
5fe6c0ba36 Implemented DynamicEnum 2023-05-17 15:23:26 +03:00
Kir_Antipov
8e382c9ed5 Defined default enum separators 2023-05-17 15:22:24 +03:00
Kir_Antipov
a2288eeefa Made a function to retrieve enum entries 2023-05-17 15:19:44 +03:00
Kir_Antipov
003f5fbab4 Made a function to retrieve enum values 2023-05-17 15:19:17 +03:00
Kir_Antipov
1d0d5c6cff Made a function to retrieve enum keys 2023-05-17 15:12:25 +03:00
Kir_Antipov
0a98e5a66a Added enum/descriptors module 2023-05-17 15:09:55 +03:00
Kir_Antipov
1afbf2483e Implemented enum descriptor instantiation logic 2023-05-17 15:09:26 +03:00
Kir_Antipov
41d4de590e Implemented enum descriptor for string enums 2023-05-17 15:04:39 +03:00
Kir_Antipov
e16de98226 Implemented enum descriptor for boolean enums 2023-05-17 14:56:15 +03:00
Kir_Antipov
874b950fdf Implemented enum descriptor for bigint enums 2023-05-17 14:55:42 +03:00
Kir_Antipov
6256d33db6 Implemented enum descriptor for number enums 2023-05-17 14:55:09 +03:00
Kir_Antipov
33da1eacff Made base interface for enum descriptors 2023-05-17 14:53:50 +03:00
Kir_Antipov
8db475ab28 Added reflection module 2023-05-16 20:39:48 +03:00
Kir_Antipov
ccd4319b20 Made ImportDirective for dynamic import purposes 2023-05-16 20:39:20 +03:00
Kir_Antipov
491aa11ac5 Made ModuleLoader interface
And added 2 default implementations:

 - `NODE_MODULE_LOADER` - uses `import` under the hood
  - `DYNAMIC_MODULE_LOADER` - will be able to load modules needed in other parts of this project. Currently it's just a stub
2023-05-16 20:37:39 +03:00
Kir_Antipov
fd2975b30b Implemented more reflection-specific helpers 2023-05-16 20:34:43 +03:00
Kir_Antipov
919bc5d68e Added errors module 2023-05-16 20:30:15 +03:00
Kir_Antipov
983cbac1f2 Typo: errors.ts -> errors 2023-05-16 20:29:32 +03:00
Kir_Antipov
c566a4cfec Implemented HttpError 2023-05-16 20:28:31 +03:00
Kir_Antipov
3f8d7d2115 Made SoftError for recoverable errors 2023-05-16 20:26:09 +03:00
Kir_Antipov
3fe2a3fdc9 Made a helper method to check if an object is an error 2023-05-16 20:25:04 +03:00
Kir_Antipov
5892ef60d8 Implemented FileNotFoundError 2023-05-16 20:23:02 +03:00
Kir_Antipov
8f97d4aee6 Implemented ArgumentNullError 2023-05-16 20:21:45 +03:00
Kir_Antipov
ab8f3468ca Implemented ArgumentError 2023-05-16 20:20:55 +03:00
Kir_Antipov
c56b60c966 Added security module 2023-05-16 20:17:55 +03:00
Kir_Antipov
2243945d3a Made a class that protects a string from being exposed 2023-05-16 20:17:23 +03:00
Kir_Antipov
a656c86e4a Added collections module 2023-05-16 20:09:53 +03:00
Kir_Antipov
fc0a818902 Made ArrayMap and MultiMap
`ArrayMap` is a map implementation which can use custom equality comparers

`MultiMap` is mostly an alias for `Map<K, V[]>`, but with some extra methods
2023-05-16 20:09:20 +03:00
Kir_Antipov
bddf78c669 Made ArraySet
A set implementation which can use custom equality comparers
2023-05-16 20:07:37 +03:00
Kir_Antipov
97a17208b2 Implemented array-like methods for iterables 2023-05-16 20:06:09 +03:00
Kir_Antipov
af85b577f1 Made an interface for all key-value iterables out there 2023-05-16 20:02:22 +03:00
Kir_Antipov
e3439aa021 Added types module 2023-05-16 19:58:58 +03:00
Kir_Antipov
67b5bcbf85 Made an alias for Partial<Record<K, V>> 2023-05-16 19:57:41 +03:00
Kir_Antipov
1967a52df9 Added a type that unwraps constructor parameters 2023-05-16 19:56:28 +03:00
Kir_Antipov
e473e4b641 Made a type to help me use generics as record keys 2023-05-16 19:54:56 +03:00
Kir_Antipov
2c2bcb4de7 Added a type that unwraps constructor return type 2023-05-16 19:53:51 +03:00
Kir_Antipov
f436b151aa Added a type that unwraps promises 2023-05-16 19:52:48 +03:00
Kir_Antipov
6e27f6c851 Made a type to indicate that await should be used 2023-05-16 19:51:43 +03:00
Kir_Antipov
09d0d25fdc Made a type that converts unions to intersections 2023-05-16 19:49:38 +03:00
Kir_Antipov
2ab31e0c32 Made a transpile-time version of typeof 2023-05-16 19:48:37 +03:00
Kir_Antipov
13a303ce8d Added logging module 2023-05-16 19:45:41 +03:00
Kir_Antipov
d60d8f63f3 LoggingStopwatch refactoring 2023-05-16 19:45:06 +03:00
Kir_Antipov
0cf4831003 Added diagnostics module 2023-05-16 19:43:36 +03:00
Kir_Antipov
d1b07fe763 Stopwatch refactoring 2023-05-16 19:42:49 +03:00
Kir_Antipov
a33f82afe1 Updated logger instantiation logic 2023-05-16 19:40:10 +03:00
Kir_Antipov
d043e7f23f Added a logger that writes logs to stdout 2023-05-16 19:38:46 +03:00
Kir_Antipov
19993c6f5b Added a logger that writes logs to the console 2023-05-16 19:37:21 +03:00