chore: codegen

This commit is contained in:
三咲智子 Kevin Deng 2023-11-24 11:15:33 +08:00
parent d02629efa2
commit e44d616c80
No known key found for this signature in database
GPG Key ID: 69992F2250DFD93E
1 changed files with 3 additions and 8 deletions

View File

@ -1,16 +1,10 @@
import type {
CodegenContext,
CodegenOptions,
CodegenResult,
} from '@vue/compiler-dom'
import type { CodegenOptions, CodegenResult } from '@vue/compiler-dom'
import { type DynamicChildren, type RootIRNode, IRNodeTypes } from './ir'
// IR -> JS codegen
export function generate(
ir: RootIRNode,
options: CodegenOptions & {
onContextCreated?: (context: CodegenContext) => void
} = {},
options: CodegenOptions = {},
): CodegenResult {
let code = ''
let preamble = ''
@ -25,6 +19,7 @@ export function generate(
vaporHelpers.add('template')
}
// TODO multiple-template
code += `const root = t0()\n`
if (ir.children[0]) {
code += `const {${genChildren(ir.children[0].children)}} = children(root)\n`