io.joern.rubysrc2cpg.astcreation

Members list

Type members

Classlikes

class AntlrParser(filename: String)

A consumable wrapper for the RubyParser class used to parse the given file and be disposed thereafter.

A consumable wrapper for the RubyParser class used to parse the given file and be disposed thereafter.

Value parameters

filename

the file path to the file to be parsed.

Attributes

Supertypes
class Object
trait Matchable
class Any
class AstCreator(filename: String, global: Global, parser: ResourceManagedParser, packageContext: PackageContext, projectRoot: Option[String])(implicit withSchemaValidation: ValidationMode) extends AstCreatorBase, AstNodeBuilder[ParserRuleContext, AstCreator], AstForPrimitivesCreator, AstForStatementsCreator, AstForFunctionsCreator, AstForExpressionsCreator, AstForDeclarationsCreator, AstForTypesCreator, AstForControlStructuresCreator, AstCreatorHelper, AstForHereDocsCreator

Attributes

Supertypes
trait AstNodeBuilder[ParserRuleContext, AstCreator]
class AstCreatorBase
class Object
trait Matchable
class Any
Show all
trait AstCreatorHelper(implicit withSchemaValidation: ValidationMode)

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AstCreator
Self type
trait AstForControlStructuresCreator(implicit withSchemaValidation: ValidationMode)

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AstCreator
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AstCreator
Self type
trait AstForExpressionsCreator(implicit withSchemaValidation: ValidationMode)

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AstCreator
Self type
trait AstForFunctionsCreator(packageContext: PackageContext)(implicit withSchemaValidation: ValidationMode)

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AstCreator
Self type
trait AstForHereDocsCreator(implicit withSchemaValidation: ValidationMode)

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AstCreator
Self type
trait AstForPrimitivesCreator(implicit withSchemaValidation: ValidationMode)

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AstCreator
Self type
trait AstForStatementsCreator(filename: String)(implicit withSchemaValidation: ValidationMode)

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AstCreator
Self type
trait AstForTypesCreator(implicit withSchemaValidation: ValidationMode)

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AstCreator
Self type
object GlobalTypes

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
class ResourceManagedParser(clearLimit: Double) extends AutoCloseable

A re-usable parser object that clears the ANTLR DFA-cache if it determines that the memory usage is becoming large. Once this parser is closed, the whole cache is evicted.

A re-usable parser object that clears the ANTLR DFA-cache if it determines that the memory usage is becoming large. Once this parser is closed, the whole cache is evicted.

This is done in this way since clearing the cache after each file is inefficient, since the cache must be re-built every time, but the cache can become unnecessarily large at times. The cache also does not evict itself at the end of parsing.

Value parameters

clearLimit

the percentage of used heap to clear the DFA-cache on.

Attributes

Supertypes
trait AutoCloseable
class Object
trait Matchable
class Any
object RubyOperators

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
class RubyScope extends Scope[String, NewIdentifier, NewNode]

Extends the Scope class to help scope variables and create locals.

Extends the Scope class to help scope variables and create locals.

TODO: Extend this to similarly link parameter nodes (especially this node) for consistency.

Attributes

Supertypes
class Scope[String, NewIdentifier, NewNode]
class Object
trait Matchable
class Any