#e <- new.env()
#evalq(\{
#assign( "[[", my.index)
#assign( "[[<-", my.index.assign)
#ff <- function() \{ a <- b + c \}
#body( ff)[[2,3,2]] # as.name( "b")
#my.index.exists( c(2,3,2), body( ff)) # TRUE
#my.index.exists( c(2,3,2,1), body( ff)) # FALSE
#body( ff)[[2,3,2]] <- quote( ifelse( a>1,2,3))
#ff # function () \{ a <- ifelse(a > 1, 2, 3) + c \}
#my.index.exists( c(2,3,2,1), body( ff)) # now TRUE
Run the code above in your browser using DataLab