English | 简体中文
Darabonba Code Generator was designed to work in Node.js. The preferred way to install the Generator is to use the NPM package manager. Simply type the following into a terminal window:
npm install @darabonba/cpp-generator
Generate C++ Code
'use strict';
const path = require('path');
const fs = require('fs');
const parser = require('@darabonba/parser');
const CppGenerator = require('@darabonba/cpp-generator');
const sourceDir = "<Darabonda package directory>";
const outputDir = "<Generate output directory>";
// generate AST data by Darabonba Parser
let packageMetaFilePath = path.join(sourceDir, 'Darafile');
let packageMeta = JSON.parse(fs.readFileSync(packageMetaFilePath, 'utf8'));
let mainFile = path.join(sourceDir, packageMeta.main);
let ast = parser.parse(fs.readFileSync(mainFile, 'utf8'), mainFile);
// initialize generator
let generatorConfig = {
...packageMeta,
pkgDir: sourceDir,
outputDir
};
let generator = new CppGenerator(generatorConfig);
// generate cpp code by generator
generator.visit(ast);
// The execution result will be output in the 'outputDir'
git clone https://github.com/aliyun/darabonba-cpp-generator.git
cd darabonba-cpp-generator/
node examples/complex.js
Opening an Issue, Issues not conforming to the guidelines may be closed immediately.
Detailed changes for each release are documented in the release notes.
Apache-2.0 Copyright (c) 2009-present, Alibaba Cloud All rights reserved.