wrapr::let() is designed to get several important corner cases correct: including substitutions that are disjoint from the expression and symbol swaps.

library("wrapr")

X <- 1
Y <- 2

let(
 c(),
  debugPrint = TRUE,
  X + Y
)

let(
 c(),
  debugPrint = TRUE,
  subsMethod = 'langsubs',
  X + Y
)

let(
 c(),
  debugPrint = TRUE,
  subsMethod = 'stringsubs',
  X + Y
)

let(
 c(),
  debugPrint = TRUE,
  subsMethod = 'subsubs',
  X + Y
)
library("wrapr")

X <- 1
Y <- 2

let(
  c(X='Y', Y='X'),
  debugPrint = TRUE,
  X + Y
)

let(
  c(X='Y', Y='X'),
  debugPrint = TRUE,
  subsMethod = 'langsubs',
  X + Y
)

let(
  c(X='Y', Y='X'),
  debugPrint = TRUE,
  subsMethod = 'stringsubs',
  X + Y
)

let(
  c(X='Y', Y='X'),
  debugPrint = TRUE,
  subsMethod = 'subsubs',
  X + Y
)


WinVector/wrapr documentation built on Aug. 29, 2023, 4:51 a.m.