Noir::CrystalCalleeExtractor
Inherits Noir::CalleeExtractorBase
Constants
BARE_CALL_REGEX = /(?<![.\w:])([a-z_]\w*[!?=]?)(?:\s*\(|(?=\s+(?:[:'"]|@{1,2}[A-Za-z_]|[A-Za-z_]\w*[!?=]?)))/
RECEIVER_CALL_REGEX = /((?:@{1,2})?[A-Za-z_]\w*(?:::[A-Za-z_]\w*)*(?:\.[A-Za-z_]\w*[!?=]?)+)\s*(?:\(|\b|$)/
RESERVED = Set {"abstract", "alias", "annotation", "as", "asm", "begin", "break", "case", "class", "def", "do", "else", "elsif", "end", "ensure", "enum", "extend", "false", "for", "fun", "if", "in", "include", "lib", "macro", "module", "next", "nil", "of", "out", "private", "protected", "require", "rescue", "return", "self", "struct", "super", "then", "true", "type", "union", "unless", "until", "when", "while", "with", "yield"}