memofunc (version 1.0.2)

hash.functionCall: Hash

Description

Hashes a function call, taking into account the values provided to the function call and unprovided default values. Ensures the order the parameters are provided does not change the outcome of the hash calculation.

Usage

# S3 method for functionCall
hash(value)

Arguments

value

value to hash

Value

hashed value as a string

Examples

Run this code
# NOT RUN {
my.function <- function (x, y) x+y

# a list of values to hash
values <- list(
  "Hello world!",
  101,
  3.142,
  TRUE,
  my.function,
  (function (x, y) x+y),
  functionCall(my.function, call("my.function", 10, 10)),
  list(a=1, b=2, c="hello")
)

# hash the values in the list
(hashes <- lapply(values, hash))

# Note that functions with the same body will have the same hash
hashes[[5]] == hashes[[6]]
# }

Run the code above in your browser using DataLab