@calcit/procs 0.5.44 → 0.5.47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  var _a;
2
2
  // CALCIT VERSION
3
- export const calcit_version = "0.5.44";
3
+ export const calcit_version = "0.5.47";
4
4
  import { parse } from "@cirru/parser.ts";
5
5
  import { writeCirruCode } from "@cirru/writer.ts";
6
6
  import "./js-primes.mjs";
@@ -828,6 +828,18 @@ export let trim = (x, c) => {
828
828
  export let _$n_number_$o_format = (x, n) => {
829
829
  return x.toFixed(n);
830
830
  };
831
+ export let _$n_number_$o_display_by = (x, n) => {
832
+ switch (n) {
833
+ case 2:
834
+ return `0b${x.toString(2)}`;
835
+ case 8:
836
+ return `0o${x.toString(8)}`;
837
+ case 16:
838
+ return `0x${x.toString(16)}`;
839
+ default:
840
+ throw new Error("Expected n of 2, 8, or 16");
841
+ }
842
+ };
831
843
  export let get_char_code = (c) => {
832
844
  if (typeof c !== "string" || c.length !== 1) {
833
845
  throw new Error("Expected a character");
@@ -1245,6 +1257,18 @@ export let bit_shr = (base, step) => {
1245
1257
  export let bit_shl = (base, step) => {
1246
1258
  return base << step;
1247
1259
  };
1260
+ export let bit_and = (a, b) => {
1261
+ return a & b;
1262
+ };
1263
+ export let bit_or = (a, b) => {
1264
+ return a | b;
1265
+ };
1266
+ export let bit_xor = (a, b) => {
1267
+ return a ^ b;
1268
+ };
1269
+ export let bit_not = (a) => {
1270
+ return ~a;
1271
+ };
1248
1272
  export let _$n_list_$o_to_set = (xs) => {
1249
1273
  var result = [];
1250
1274
  let data = xs.toArray();
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@calcit/procs",
3
- "version": "0.5.44",
3
+ "version": "0.5.47",
4
4
  "main": "./lib/calcit.procs.mjs",
5
5
  "devDependencies": {
6
- "@types/node": "^17.0.29",
7
- "typescript": "^4.6.3"
6
+ "@types/node": "^18.0.0",
7
+ "typescript": "^4.7.4"
8
8
  },
9
9
  "scripts": {
10
10
  "compile": "rm -rfv lib/* && tsc",
@@ -1,5 +1,5 @@
1
1
  // CALCIT VERSION
2
- export const calcit_version = "0.5.44";
2
+ export const calcit_version = "0.5.47";
3
3
 
4
4
  import { parse, ICirruNode } from "@cirru/parser.ts";
5
5
  import { writeCirruCode } from "@cirru/writer.ts";
@@ -912,6 +912,19 @@ export let _$n_number_$o_format = (x: number, n: number): string => {
912
912
  return x.toFixed(n);
913
913
  };
914
914
 
915
+ export let _$n_number_$o_display_by = (x: number, n: number): string => {
916
+ switch (n) {
917
+ case 2:
918
+ return `0b${x.toString(2)}`;
919
+ case 8:
920
+ return `0o${x.toString(8)}`;
921
+ case 16:
922
+ return `0x${x.toString(16)}`;
923
+ default:
924
+ throw new Error("Expected n of 2, 8, or 16");
925
+ }
926
+ };
927
+
915
928
  export let get_char_code = (c: string): number => {
916
929
  if (typeof c !== "string" || c.length !== 1) {
917
930
  throw new Error("Expected a character");
@@ -1332,6 +1345,18 @@ export let bit_shr = (base: number, step: number): number => {
1332
1345
  export let bit_shl = (base: number, step: number): number => {
1333
1346
  return base << step;
1334
1347
  };
1348
+ export let bit_and = (a: number, b: number): number => {
1349
+ return a & b;
1350
+ };
1351
+ export let bit_or = (a: number, b: number): number => {
1352
+ return a | b;
1353
+ };
1354
+ export let bit_xor = (a: number, b: number): number => {
1355
+ return a ^ b;
1356
+ };
1357
+ export let bit_not = (a: number): number => {
1358
+ return ~a;
1359
+ };
1335
1360
 
1336
1361
  export let _$n_list_$o_to_set = (xs: CalcitList): CalcitSet => {
1337
1362
  var result: CalcitValue[] = [];