Slice out the line associated with a tag.
This commit is contained in:
parent
4996cbe830
commit
d798bd6bd9
2 changed files with 7 additions and 1 deletions
|
|
@ -56,5 +56,6 @@ fn test_tags_python() {
|
|||
);
|
||||
|
||||
assert_eq!(tags[0].docs.as_ref().unwrap(), "Data about a customer");
|
||||
assert_eq!(tags[0].line, "class Customer:");
|
||||
assert_eq!(tags[1].docs.as_ref().unwrap(), "Get the customer's age");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -224,6 +224,11 @@ where
|
|||
let config = &self.config;
|
||||
let tag_from_node = |node: Node, kind: TagKind| -> Option<Tag> {
|
||||
let name = str::from_utf8(&source[name_node?.byte_range()]).ok()?;
|
||||
let mut line_range = node.byte_range();
|
||||
if line_range.len() > 180 {
|
||||
line_range.end = line_range.start + 180;
|
||||
}
|
||||
let line = str::from_utf8(&source[line_range]).ok()?.lines().next()?;
|
||||
let docs = doc_node
|
||||
.and_then(|n| str::from_utf8(&source[n.byte_range()]).ok())
|
||||
.map(|s| {
|
||||
|
|
@ -235,7 +240,7 @@ where
|
|||
});
|
||||
Some(Tag {
|
||||
name,
|
||||
line: "TODO",
|
||||
line,
|
||||
loc: loc_for_node(node),
|
||||
kind: kind,
|
||||
docs,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue