Given a spaCy token, extract recursively all tokens in its dependency subtree in inorder traversal.
Source code in library_analyzer/processing/dependencies/_get_dependency.py
| def extract_lefts_and_rights(curr_token: Token, extracted: Union[List, None] = None):
"""
Given a spaCy token, extract recursively all tokens in its dependency subtree in inorder traversal.
"""
if extracted is None:
extracted = []
token_lefts = list(curr_token.lefts)
for token in token_lefts:
extract_lefts_and_rights(token, extracted)
extracted.append(curr_token.text)
token_rights = list(curr_token.rights)
for token in token_rights:
extract_lefts_and_rights(token, extracted)
return extracted
|