No Comment
Remove comments from a char iterator.
This crate provides the WithoutComments iterator and the IntoWithoutComments trait implemented for
all Iterator<Item=char> providing the without_comments method. Comment specifications are available for
rust-style, c-style, python-style, and haskell-style line and block comments, a way to specify custom
comment specifications is planned. This crate is intended to be used for removing comments from text,
not from code, for this reason, "\*" will still open a block comment in rust mode because string literals
have no semantic significance.
Usage
Add this to your Cargo.toml:
[]
= "0.0.1"
main.rs:
test.txt:
This is text // this is a (rust) line comment
This is more text /* this is a (rust) block comment
/* this one is nested */ */
This is text again
/* If a comment is left open, it keeps
going until the end.
output:
This is text
This is more text
This is text again
Note that trailing spaces and newlines are preserved, showing whitespace the output looks like this:
This·is·text·¶
This·is·more·text·¶
This·is·text·again¶