/* @flow */ import { parse } from 'compiler/parser/index' import { generate } from './codegen' import { optimize } from './optimizer' import { createCompilerCreator } from 'compiler/create-compiler' export const createCompiler = createCompilerCreator(function baseCompile ( template: string, options: CompilerOptions ): CompiledResult { const ast = parse(template.trim(), options) optimize(ast, options) const code = generate(ast, options) return { ast, render: code.render, staticRenderFns: code.staticRenderFns } })