python2igcse
Version:
Convert Python code to IGCSE Pseudocode format
63 lines • 1.64 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createEmitError = createEmitError;
exports.createEmitWarning = createEmitWarning;
exports.createIndentInfo = createIndentInfo;
exports.getDefaultEmitterOptions = getDefaultEmitterOptions;
exports.getDefaultFormatterConfig = getDefaultFormatterConfig;
/**
* Emitter helper functions
*/
function createEmitError(message, type, node, severity = 'error') {
const error = {
message,
type,
severity
};
if (node !== undefined)
error.node = node;
return error;
}
function createEmitWarning(message, type, node) {
const warning = {
message,
type
};
if (node !== undefined)
warning.node = node;
return warning;
}
function createIndentInfo(level, indentChar, indentSize) {
const unit = indentChar.repeat(indentSize);
const string = unit.repeat(level);
const next = unit.repeat(level + 1);
return {
level,
string,
next
};
}
function getDefaultEmitterOptions() {
return {
format: 'plain',
indentSize: 2,
indentChar: ' ',
lineEnding: '\n',
maxLineLength: 80,
includeComments: true,
includeLineNumbers: false,
includeDebugInfo: false,
beautify: true
};
}
function getDefaultFormatterConfig() {
return {
uppercaseKeywords: true,
spaceAroundOperators: true,
spaceAfterComma: true,
spaceInsideParentheses: false,
insertBlankLines: false,
wrapLongLines: true
};
}
//# sourceMappingURL=emitter.js.map