runtime-compiler 1.0.7 → 1.0.8
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.
- package/README.md +4 -1
- package/hydrate.js +1 -1
- package/index.d.ts +17 -0
- package/index.js +1 -1
- package/jit.d.ts +1 -3
- package/jit.js +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -1,2 +1,5 @@
|
|
|
1
1
|
# `runtime-compiler`
|
|
2
|
-
|
|
2
|
+
A code generation system for JS.
|
|
3
|
+
|
|
4
|
+
`runtime-compiler` combines all code generation process into one `Function` call.
|
|
5
|
+
This makes it possible to bypass startup time code generation using ahead of time compilation while also speeds up runtime code generation.
|
package/hydrate.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{compiledDependencies,externalDependencies}from"./index.js";export let hydrate=()=>{let
|
|
1
|
+
import{clear,compiledDependencies,externalDependencies}from"./index.js";export let hydrate=()=>{let r=[compiledDependencies].concat(externalDependencies);clear();return r};
|
package/index.d.ts
CHANGED
|
@@ -4,6 +4,11 @@ export type CompiledDependency<T> = number & [T];
|
|
|
4
4
|
*/
|
|
5
5
|
export declare const injectDependency: (val: string) => string;
|
|
6
6
|
/**
|
|
7
|
+
* Wait for a dependency to resolve
|
|
8
|
+
* @param name
|
|
9
|
+
*/
|
|
10
|
+
export declare const waitDependency: (name: string) => void;
|
|
11
|
+
/**
|
|
7
12
|
* Export a local dependency
|
|
8
13
|
* @param name
|
|
9
14
|
*/
|
|
@@ -21,4 +26,16 @@ export declare const getDependency: <T>(idx: CompiledDependency<T>) => T;
|
|
|
21
26
|
* Inject an external dependency
|
|
22
27
|
*/
|
|
23
28
|
export declare const injectExternalDependency: (val: any) => string;
|
|
29
|
+
/**
|
|
30
|
+
* Clear compiler data
|
|
31
|
+
*/
|
|
32
|
+
export declare const clear: () => void;
|
|
33
|
+
/**
|
|
34
|
+
* Get evaluate code
|
|
35
|
+
*/
|
|
36
|
+
export declare const evaluateCode: () => string;
|
|
37
|
+
/**
|
|
38
|
+
* Get external dependency names
|
|
39
|
+
*/
|
|
40
|
+
export declare const externalDependencyNames: () => string;
|
|
24
41
|
export declare const AsyncFunction: typeof Function;
|
package/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export let compiledDependencies=[];export let externalDependencies=[];export let localDeps=``;let localDepsCnt=0;export let injectDependency=e=>{localDeps=localDeps===``?`
|
|
1
|
+
export let compiledDependencies=[];export let externalDependencies=[];export let localDeps=``;let localDepsCnt=0;export let injectDependency=e=>{localDeps=localDeps===``?`var __`+localDepsCnt+`=`+e:localDeps+`,__`+localDepsCnt+`=`+e;return`__`+ localDepsCnt++};export let asyncDeps=``;export let waitDependency=e=>{asyncDeps+=e+`,`};export let exportedDeps=``;let exportedDepsCnt=0;export let exportDependency=e=>{exportedDeps+=e+`,`;return exportedDepsCnt++};export let markExported=()=>exportedDepsCnt++;export let getDependency=h=>compiledDependencies[h];export let injectExternalDependency=e=>`_`+externalDependencies.push(e);export let clear=()=>{externalDependencies.length=0;localDeps=``;localDepsCnt=0;exportedDeps=``;exportedDepsCnt=0};export let evaluateCode=()=>`{`+localDeps+(asyncDeps===``?`;_.push(`:`;[`+asyncDeps+`]=await Promise.all([`+asyncDeps+`]);_.push(`)+exportedDeps+`)}`;export let externalDependencyNames=()=>{let e=`_,`;for(let g=0;g<externalDependencies.length;g++)e+=`_`+(g+1)+`,`;return e};export let AsyncFunction=(async()=>{}).constructor;
|
package/jit.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
export declare const
|
|
2
|
-
export declare const externalDependencyNames: () => string;
|
|
1
|
+
export declare const evaluateToString: () => string;
|
|
3
2
|
export declare const evaluateSync: () => void;
|
|
4
3
|
export declare const evaluate: () => Promise<void>;
|
|
5
|
-
export declare const evaluateToString: () => string;
|
package/jit.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{AsyncFunction,compiledDependencies,
|
|
1
|
+
import{AsyncFunction,clear,compiledDependencies,evaluateCode,externalDependencies,externalDependencyNames}from"./index.js";export let evaluateToString=()=>`(`+externalDependencyNames()+`)=>`+evaluateCode();export let evaluateSync=()=>{Function(externalDependencyNames(),evaluateCode())(compiledDependencies,...externalDependencies);clear()};export let evaluate=async()=>{await AsyncFunction(externalDependencyNames(),evaluateCode())(compiledDependencies,...externalDependencies);clear()};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "runtime-compiler",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.8",
|
|
4
4
|
"description": "Universal compiler system",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"repository": {},
|
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
"license": "MIT",
|
|
9
9
|
"type": "module",
|
|
10
10
|
"exports": {
|
|
11
|
-
"
|
|
11
|
+
".": "./index.js",
|
|
12
12
|
"./config": "./config.js",
|
|
13
|
+
"./hydrate": "./hydrate.js",
|
|
13
14
|
"./hydrate-loader": "./hydrate-loader.js",
|
|
14
|
-
"
|
|
15
|
-
"./hydrate": "./hydrate.js"
|
|
15
|
+
"./jit": "./jit.js"
|
|
16
16
|
}
|
|
17
17
|
}
|