mirror of
https://github.com/danbulant/oxc
synced 2026-05-24 12:21:58 +00:00
refactor(semantic): tweak comment argument type (#4157)
Minor followup from https://github.com/oxc-project/oxc/pull/4132.
This commit is contained in:
parent
b632c0458c
commit
03ad1e32cc
1 changed files with 7 additions and 7 deletions
|
|
@ -1,6 +1,6 @@
|
||||||
use std::collections::BTreeMap;
|
use std::collections::BTreeMap;
|
||||||
|
|
||||||
use oxc_ast::{AstKind, CommentKind, Trivias};
|
use oxc_ast::{AstKind, Comment, Trivias};
|
||||||
use oxc_span::{GetSpan, Span};
|
use oxc_span::{GetSpan, Span};
|
||||||
use rustc_hash::FxHashSet;
|
use rustc_hash::FxHashSet;
|
||||||
|
|
||||||
|
|
@ -32,7 +32,7 @@ impl<'a> JSDocBuilder<'a> {
|
||||||
.trivias
|
.trivias
|
||||||
.comments()
|
.comments()
|
||||||
.filter(|comment| !self.leading_comments_seen.contains(&comment.span.start))
|
.filter(|comment| !self.leading_comments_seen.contains(&comment.span.start))
|
||||||
.filter_map(|comment| self.parse_if_jsdoc_comment(comment.kind, comment.span))
|
.filter_map(|comment| self.parse_if_jsdoc_comment(comment))
|
||||||
.collect::<Vec<_>>();
|
.collect::<Vec<_>>();
|
||||||
|
|
||||||
JSDocFinder::new(self.attached_docs, not_attached_docs)
|
JSDocFinder::new(self.attached_docs, not_attached_docs)
|
||||||
|
|
@ -129,7 +129,7 @@ impl<'a> JSDocBuilder<'a> {
|
||||||
}
|
}
|
||||||
|
|
||||||
self.leading_comments_seen.insert(comment.span.start);
|
self.leading_comments_seen.insert(comment.span.start);
|
||||||
if let Some(jsdoc) = self.parse_if_jsdoc_comment(comment.kind, comment.span) {
|
if let Some(jsdoc) = self.parse_if_jsdoc_comment(comment) {
|
||||||
leading_jsdoc_comments.push(jsdoc);
|
leading_jsdoc_comments.push(jsdoc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -144,20 +144,20 @@ impl<'a> JSDocBuilder<'a> {
|
||||||
true
|
true
|
||||||
}
|
}
|
||||||
|
|
||||||
fn parse_if_jsdoc_comment(&self, kind: CommentKind, comment_span: Span) -> Option<JSDoc<'a>> {
|
fn parse_if_jsdoc_comment(&self, comment: &Comment) -> Option<JSDoc<'a>> {
|
||||||
if !kind.is_multi_line() {
|
if !comment.kind.is_multi_line() {
|
||||||
return None;
|
return None;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Inside of marker: /*CONTENT*/ => CONTENT
|
// Inside of marker: /*CONTENT*/ => CONTENT
|
||||||
let comment_content = comment_span.source_text(self.source_text);
|
let comment_content = comment.span.source_text(self.source_text);
|
||||||
// Should start with "*"
|
// Should start with "*"
|
||||||
if !comment_content.starts_with('*') {
|
if !comment_content.starts_with('*') {
|
||||||
return None;
|
return None;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Remove the very first `*`
|
// Remove the very first `*`
|
||||||
let jsdoc_span = Span::new(comment_span.start + 1, comment_span.end);
|
let jsdoc_span = Span::new(comment.span.start + 1, comment.span.end);
|
||||||
Some(JSDoc::new(&comment_content[1..], jsdoc_span))
|
Some(JSDoc::new(&comment_content[1..], jsdoc_span))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue