Digital Garden by Rycont | 뉴스레터 구독하기

코드 실행하기

각 노드가 해야 할 일을 정의해주었으니, 이젠 최상위의 노드들을 실행시켜주기만 하면 됩니다.

import { LineBreak } from './token.js'

export function runAST(ast) {
	// AST를 실행하는 함수입니다

	// 변수를 저장하기 위한 스코프를 선언했습니다
	let scope = new Map()

	// AST의 요소들을 실행하겠습니다
	for (let node of ast) {
		// LineBreak는 무시합니다
		if (node instanceof LineBreak) {
			continue
		}

		node.execute(scope)
	}
}

이제 실행에 필요한 모든 준비를 마쳤습니다!


연결된 페이지 (Inlinks)

연결된 페이지가 없습니다.


댓글 쓰기, GitHub에서 보기