Skip to content
This repository has been archived by the owner on Oct 3, 2022. It is now read-only.

zhibog/odin-ast-printer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

odin-ast-printer

AST printer for the Odin language

Uses the AST from the builtin parser in the core library to print the code. Allows for meta programming, such as code insertion based on certain attributes on procs.

Useage

package test

import "ast_printer"
import "core:strings"

main :: proc() {
	path = "some_path/some_file.odin";

	sb := strings.make_builder();
	defer strings.destroy_builder(&sb);

	ast_printer.print_ast(path, &sb);
	// The printed AST is now in the Builder
}

Current status

At the moment the AST printer is about 90% done. There are a couple of errors within the builtin parser itself, which I've covered in an Issue. The long term plan is to have a complete compiler frontend in the core library eventually.
Some newer features and syntax things, that have already been added to the C++ compiler, are also missing from the builtin parser at the moment.

About

AST printer for the Odin language

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages