Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

16 Commits

Repository files navigation

comment-parser

Build StatusBuild StatusLatest VersionDocsLicense

This crate implements a (pull) parser for extracting comments from code in various programming languages.

Usage

Add this to your Cargo.toml:

[dependencies]
comment-parser = "0.1"

Extract Comments from Rust Code

use comment_parser::CommentParser;let rust = r#"/* This isthe mainfunction */fn main() { // println! is a macro println!("Hello World"); // Prints "Hello World"}"#;let rules = comment_parser::get_syntax("rust").unwrap();let parser = CommentParser::new(rust, rules);for comment in parser {println!("{:?}", comment);}

This will output the following:

BlockComment(_, " This is\nthe main\nfunction ")
LineComment(_, " println! is a macro")
LineComment(_, " Prints \"Hello World\"")

Extract Comments from Python Code

use comment_parser::CommentParser;let python = r#"# In Python main is not a functionif __name__ == "__main__": # print is a function print("Hello World") # Prints "Hello World""#;let rules = comment_parser::get_syntax("python").unwrap();let parser = CommentParser::new(python, rules);for comment in parser {println!("{:?}", comment);}

This will output the following:

LineComment(_, " In Python main is not a function")
LineComment(_, " print is a function")
LineComment(_, " Prints \"Hello World\"")

About

This crate implements a (pull) parser for extracting comments from code in various programming languages.

Topics

Resources

Stars

10 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages