@eliseev_s/tolk-tlb-transpiler
Version:
Transpile Tolk structs to TLB definitions and generate TypeScript wrappers for TON blockchain smart contracts
39 lines • 1.51 kB
JavaScript
;
// ============================================================================
// Constants Extractor
// ============================================================================
Object.defineProperty(exports, "__esModule", { value: true });
exports.extractConstants = extractConstants;
exports.extractErrorConstants = extractErrorConstants;
exports.isErrorConstant = isErrorConstant;
const parser_1 = require("./parser");
/**
* Extract all constants from Tolk source code
*
* @param tolkCode - The Tolk source code
* @param predicate - Optional predicate function to filter constants
* @returns Record mapping constant names to their values
*/
async function extractConstants(tolkCode, predicate) {
const processor = await parser_1.TolkASTProcessor.initialize();
return processor.extractConstants(tolkCode, predicate);
}
/**
* Extract error constants (constants starting with "ERROR_") from Tolk source code
*
* @param tolkCode - The Tolk source code
* @returns Record mapping error constant names to their values
*/
async function extractErrorConstants(tolkCode) {
return extractConstants(tolkCode, (constant) => constant.name.startsWith('ERROR_'));
}
/**
* Predicate function to filter error constants
*
* @param constant - The constant to check
* @returns true if the constant is an error constant (starts with "ERROR_")
*/
function isErrorConstant(constant) {
return constant.name.startsWith('ERROR_');
}
//# sourceMappingURL=constants-extractor.js.map