package
0.9.0
Repository: https://github.com/virustotal/gyp.git
Documentation: pkg.go.dev

# Functions

DepthFirstSearch performs a depth-first traversal of the given node's syntax tree.
Escape replaces any character outside the printable ASCII range by their corresponding escape sequence (\n, \\, \", etc).
RuleFromProto creates a Rule from its corresponding protobuf.
RuleSetFromProto creates a RuleSet from its corresponding protobuf.

# Constants

Constants for existing keywords.
Constants for existing keywords.
Constants for existing keywords.
Constants for existing keywords.
Constants for existing keywords.
Constants for existing keywords.
Constants for existing keywords.
Constants for existing keywords.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
OpMaxPrecedence is the maximum possible precedence.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
Constants that represents operators.
RegexpCaseInsensitive is the flag corresponding to the /i modifier in a regular expression literal.
RegexpDotAll is the flag corresponding to the /s modifier in a regular expression literal.

# Variables

OpPrecedence is the operator precedence table.

# Structs

BaseString is a structure that contains the fields that are common to all types of strings.
BitwiseNot is an Expression that represents the bitwise not operation.
Defined is an Expression that represents the "defined" operation.
Enum is a Node that represents an enumeration.
ForIn is an Expression representing a "for in" loop.
ForOf is an Expression representing a "for of" loop.
FunctionCall is an Expression that represents a function call.
Group is an Expression that encloses another Expression in parentheses.
HexBytes is an HexToken that represents a byte sequence.
HexJump is an HexToken that represents a jump in the hex string, like for example the [10-20] jump in {01 02 [10-20] 03 04}.
HexOr is an HexToken that represents an alternative in the hex string, like the (03 04 | 05 06) alternative in { 01 02 (03 04 | 05 06) 07 08 }.
HexString describes a YARA hex string.
Identifier is an Expression that represents an identifier.
LiteralFloat is an Expression that represents a literal float.
LiteralInteger is an Expression that represents a literal integer.
LiteralRegexp is an Expression that represents a literal regular expression, like for example /ab.*cd/.
LiteralString is an Expression that represents a literal string.
MemberAccess is an Expression that represents a member access operation (.).
Meta represents an entry in a rule's metadata section.
Minus is an Expression that represents the unary minus operation.
Not is an Expression that represents the "not" operation.
Of is an Expression representing a "of" operation.
Operation is an Expression representing an operation with two or more operands, like "A or B", "A and B and C", "A + B + C", "A - B - C", etc.
Percentage is an Expression used in evaluating string sets.
Range is a Node that represents an integer range.
RegexpString describes a YARA regexp.
Rule describes a YARA rule.
RuleSet describes a set of YARA rules.
StringCount is an Expression that represents a string count operation, like "#a".
StringIdentifier is an Expression that represents a string identifier in the condition, like "$a".
StringLength is an Expression that represents a string length operation, like "!a".
StringOffset is an Expression that represents a string offset operation, like "@a".
Subscripting is an Expression that represents an array subscripting operation ([]).
TextString describes a YARA text string.

# Interfaces

Expression is the interface implemented by all expressions in the AST.
HexToken is the interface implemented by all types of token.
Node is the interface implemented by all types of nodes in the AST.
PostOrderVisitor is the interface that must be implemented by a visitor that wants to be notified about expressions after all of the expression's sub expressions are visited.
PreOrderVisitor is the interface that must be implemented by a visitor that wants to be notified about expressions before any of the expression's sub expressions is visited.
String is the interface implemented by the different types of strings that are supported by YARA (i.e: text strings, hex strings and regexps).
Visitor is the interface that must be implemented for getting notified about nodes visited during ast traversal.

# Type aliases

HexTokens is a sequence of tokens.
Keyword is a Node that represents a keyword.
OperatorType is the type of operators.
RegexpModifiers are flags containing the modifiers for a LiteralRegexp.