CodeQL library for Ruby
codeql/ruby-all 0.8.15-dev (changelog, source)
Search

Module Parameter

Import path

import codeql.ruby.ast.Parameter

Classes

BlockParameter

A parameter that is a block. For example, &bar in the following code: rb def foo(&bar) bar.call if block_given? end

DestructuredParameter

A parameter defined using destructuring. For example

ForwardParameter

A special ... parameter that forwards positional/keyword/block arguments: rb def foo(...) end

HashSplatNilParameter

A nil hash splat (**nil) indicating that there are no keyword parameters or keyword patterns. For example: rb def foo(bar, **nil) case bar in { x:, **nil } then puts x end end

HashSplatParameter

A hash-splat (or double-splat) parameter. For example, **options in the following code: rb def foo(bar, **options) ... end

KeywordParameter

A keyword parameter, including a default value if the parameter is optional. For example, in the following example, foo is a keyword parameter with a default value of 0, and bar is a mandatory keyword parameter with no default value mandatory parameter). rb def f(foo: 0, bar:) foo * 10 + bar end

NamedParameter

A named parameter.

OptionalParameter

An optional parameter. For example, the parameter name in the following code: rb def say_hello(name = 'Anon') puts "hello #{name}" end

Parameter

A parameter.

SimpleParameter

A simple (normal) parameter.

SplatParameter

A splat parameter. For example, *values in the following code: rb def foo(bar, *values) ... end