Skip to content

Expose is_array_insertion#2

Merged
DavisVaughan merged 1 commit intor-lib:mainfrom
DavisVaughan:feature/array-insertion
Aug 6, 2025
Merged

Expose is_array_insertion#2
DavisVaughan merged 1 commit intor-lib:mainfrom
DavisVaughan:feature/array-insertion

Conversation

@DavisVaughan
Copy link
Member

Branched from #1, just look at the 2nd commit, I can rebase on main if we merge the first PR and then itll make more sense

unlink('test.json')

json_modify_file('test.json', c("foo", "bar"), 1:3)
cat(readLines("test.json"), sep = "\n")
#> {
#>     "foo": {
#>         "bar": [
#>             1,
#>             2,
#>             3
#>         ]
#>     }
#> }

# modifies at position
json_modify_file('test.json', list("foo", "bar", 1), 9999)
cat(readLines("test.json"), sep = "\n")
#> {
#>     "foo": {
#>         "bar": [
#>             1,
#>             9999,
#>             3
#>         ]
#>     }
#> }

# inserts at position
json_modify_file(
  'test.json',
  list("foo", "bar", 1),
  9998,
  is_array_insertion = TRUE
)
cat(readLines("test.json"), sep = "\n")
#> {
#>     "foo": {
#>         "bar": [
#>             1,
#>             9998,
#>             9999,
#>             3
#>         ]
#>     }
#> }

# inserts at end!
json_modify_file(
  'test.json',
  list("foo", "bar", -1),
  0,
  is_array_insertion = TRUE
)
cat(readLines("test.json"), sep = "\n")
#> {
#>     "foo": {
#>         "bar": [
#>             1,
#>             9998,
#>             9999,
#>             3,
#>             0
#>         ]
#>     }
#> }

unlink('test.json')

@DavisVaughan DavisVaughan force-pushed the feature/array-insertion branch from 2f2bd6f to 0cc6687 Compare August 6, 2025 14:59
@DavisVaughan DavisVaughan merged commit bdbfc6d into r-lib:main Aug 6, 2025
@DavisVaughan DavisVaughan deleted the feature/array-insertion branch August 6, 2025 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant