1 2/* 3* Copyright (c) 2025 Shenzhen Kaihong Digital Industry Development Co., Ltd. 4* Licensed under the Apache License, Version 2.0 (the "License"); 5* you may not use this file except in compliance with the License. 6* You may obtain a copy of the License at 7* 8* http://www.apache.org/licenses/LICENSE-2.0 9* 10* Unless required by applicable law or agreed to in writing, software 11* distributed under the License is distributed on an "AS IS" BASIS, 12* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13* See the License for the specific language governing permissions and 14* limitations under the License. 15*/ 16import { GenInfo } from "../datatype"; 17import { replaceAll } from "../../common/tool"; 18import * as fs from 'fs'; 19import { Logger } from '../../common/log'; 20 21// 生成common.cpp文件,读模板直接生成 22export function doGenCommonCppFile(rootInfo: GenInfo, fileContent: string) { 23 try { 24 fileContent = replaceAll(fileContent, '[fileName]', rootInfo.fileName); 25 } catch (error) { 26 let errmsg = 'generate napi common.cpp fileContent error: ' + JSON.stringify(error); 27 Logger.getInstance().error(errmsg); 28 } 29 return fileContent; 30} 31 32export function genCommonCppFile(rootInfo: GenInfo, filePath: string, fileContent: string) { 33 fileContent = doGenCommonCppFile(rootInfo, fileContent); 34 fs.writeFileSync(filePath, fileContent); 35}