split_source: Split source lines into complete expressions

View source: R/string.R

split_sourceR Documentation

Split source lines into complete expressions

Description

Parse the lines of code one by one to find complete expressions in the code, and put them in a list.

Usage

split_source(x, merge_comments = FALSE, line_number = FALSE)

Arguments

x

A character vector of R source code.

merge_comments

Whether to merge consecutive lines of comments as a single expression to be combined with the next non-comment expression (if any).

line_number

Whether to store the line numbers of each expression in the returned value.

Value

A list of character vectors, and each vector contains a complete R expression, with an attribute lines indicating the starting and ending line numbers of the expression if the argument line_number = TRUE.

Examples

code = c("# comment 1", "# comment 2", "if (TRUE) {", "1 + 1", "}", "print(1:5)")
xfun::split_source(code)
xfun::split_source(code, merge_comments = TRUE)

xfun documentation built on Nov. 1, 2024, 1:06 a.m.