R: Cyclomatic Complexity of R Code

cyclocomp {cyclocomp} | R Documentation

## Cyclomatic Complexity of R Code

### Description

Cyclomatic complexity is a software metric (measurement), used to indicate the complexity of a program. It is a quantitative measure of the number of linearly independent paths through a program's source code. It was developed by Thomas J. McCabe, Sr. in 1976.

Calculate the cyclomatic complexity of an R function or expression.

### Usage

    cyclocomp(expr)

    cyclocomp_q(expr)

### Arguments

`expr` | An R function or expression.

### Value

Integer scalar, the cyclomatic complexity of the expression.

### See Also

Other cyclomatic complexity: `cyclocomp_package_dir`, `cyclocomp_package`

### Examples

    ## Supply a function
    cyclocomp(
      function(arg) { calulate(this); and(that) }
    )
    cyclocomp(ls)
    cyclocomp(cyclocomp)

    ## Or a quoted expression
    cyclocomp(quote( if (condition) "foo" else "bar" ))

    ## cyclocomp_q quotes the expression for you
    cyclocomp_q(while (condition) { loop })

    ## Complexity of individual control flow constructs
    cyclocomp(quote({
      if (condition) this
    }))

    cyclocomp(quote({
      if (condition) this else that
    }))

    cyclocomp(quote({
      for (var in seq) expr
    }))

    cyclocomp(quote({
      while (cond) expr
    }))

    cyclocomp(quote({
      repeat expr
    }))

    cyclocomp(quote({
      for (var in seq) {
        this
        break
        that
      }
    }))

    cyclocomp(quote({
      for (var in seq) {
        this
        next
        that
      }
    }))

[Package cyclocomp version 1.1.0 Index]