1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
use super::Comment;
use crate::source::{CommentType, DecodedInput};
use crate::Loc;
impl Comment {
/// Constructs a new comment by `Loc` and `Input`
pub fn new(location: Loc, input: &DecodedInput) -> Self {
let kind = match location.source(input) {
Some(source) => {
if source.starts_with('#') {
CommentType::inline()
} else if source.starts_with("=begin") {
CommentType::document()
} else {
CommentType::unknown()
}
}
None => CommentType::unknown(),
};
Self::make(location, kind)
}
}