-
-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Question]: Should we have a separate vignette or at least a GitHub issue explaining implementation of get_code_dependency
#278
Comments
Hmmm... I think I will hold off from making a strong statement here. I don't know this functionality and its use case that well. My 2c in the discussion right now is that typically vignettes are covering a grey area of documenting usage of multiple funs in conjunction. If we are talking about a single functionality - maybe it's better to extend its documentation instead? |
But I wanted to summarize implementation details so it's straightforward (or at least easier) to understand what which internal function does in the whole Parsing procedure. So that developers can then find their way in the code |
I support having a detailed explanation because navigating the code is very hard in this case, function docs notwithstanding. |
Or an .Rmd in dev/ |
You mean a non-standard directory?
|
Yes, typically stuff for developers or stuff that is under development is moved to For example |
get_code_dependency()
aims to perform static data analysis of the code and tries to extract the code limited for a reproduction of a specific object (passed viadatanames =
parameter).It uses the outcome of
utils::getParsedData()
and is based on the dependency structure included in this useful function. It then reshapes the outcome ofutils::getParsedData()
into a specific graph (code_graph()
function) of relations which can be used at the end to restore code for one or more objects (graph_parser()
function).We also tackle edge cases like automatic detection of
library()
calls, assigning objects withdata()
andassign()
function, or calling assign operators like functions `<-`(y,x).The implementation and logic of
get_code_dependency()
has been explained in the PR introducing this feature #201, but maybe we should have a separate document that is more accessible and explains the details so that somehow will be able to extend the implementation in 6 or 12 months? Especially since a lot of assumptions were changed, and a lot of new features were covered.The text was updated successfully, but these errors were encountered: