UNPKG

python2igcse

Version:

Convert Python code to IGCSE Pseudocode format

121 lines 2.47 kB
import { IR } from '../types/ir'; import { EmitResult, EmitterOptions } from '../types/emitter'; import { BaseEmitter } from './base-emitter'; /** * プレーンテキスト形式でIGCSE Pseudocodeを出力するエミッター */ export declare class TextEmitter extends BaseEmitter { private nodesProcessed; constructor(options?: Partial<EmitterOptions>); /** * IRをプレーンテキストに変換 */ emit(ir: IR): EmitResult; /** * IRノードの処理 */ protected emitNode(node: IR): void; /** * 代入文の出力 */ private emitAssign; /** * ブロックの出力 */ private emitBlock; /** * 出力文の出力 */ private emitOutput; /** * 入力文の出力 */ private emitInput; /** * IF文の出力 * 構造化されたconsequent/alternateフィールドを使用 */ private emitIf; /** * ELSE文の出力 * 構造化されたconsequentフィールドを使用 */ private emitElse; /** * ELSE IF文の出力 */ private emitElseIf; /** * ENDIF文の出力 */ private emitEndif; /** * FOR文の出力 */ private emitFor; /** * WHILE文の出力 */ private emitWhile; /** * ENDWHILE文の出力 */ private emitEndwhile; /** * REPEAT文の出力 */ private emitRepeat; /** * UNTIL文の出力 */ private emitUntil; /** * プロシージャの出力 */ protected emitProcedure(node: IR): void; /** * FUNCTION文の出力 */ protected emitFunction(node: IR): void; /** * RETURN文の出力 */ private emitReturn; /** * 配列宣言の出力 */ private emitArray; /** * TYPE定義の出力 */ private emitType; /** * CLASS定義の出力 */ private emitClass; /** * CASE文の出力 */ private emitCase; /** * 式の出力 */ private emitExpression; /** * 文の出力 */ private emitStatement; /** * 複合文の出力 */ private emitCompound; /** * ヘッダーコメントの追加 */ addHeader(title: string, author?: string, date?: string): void; /** * フッターコメントの追加 */ addFooter(): void; } //# sourceMappingURL=text-emitter.d.ts.map