All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.joern.x2cpg.Defines.scala Maven / Gradle / Ivy

There is a newer version: 4.0.131
Show newest version
package io.joern.x2cpg

object Defines {

  // Represents an unresolved type, or indicates that one cannot guarantee a single type
  // for the given node.
  val Any = "ANY"

  // The following two defines should be used for type and method full names to
  // indicate unresolved static type information. Using them enables
  // the closed source backend to apply policies in a less strict fashion.
  // The most notable case is the METHOD_FULL_NAME property of a CALL node.
  // As example consider a call to a method `foo(someArg)` which cannot be
  // resolved. The METHOD_FULL_NAME should be given as
  // ".foo:(1)". If the namespace is known
  // the METHOD_FULL_NAME should be given as
  // "some.namespace.foo:(1)". Thereby the number in parenthesis
  // is the number of call arguments.
  // Note that this schema and thus the defines only makes sense for statically
  // typed languages with a package/namespace structure like Java, CSharp, etc..
  val UnresolvedNamespace = ""
  val UnresolvedSignature = ""

  // Name of the synthetic, static method that contains the initialization of member variables.
  val StaticInitMethodName = ""

  // Name of the constructor.
  val ConstructorMethodName = ""

  // In some languages like Javascript dynamic calls do not provide any statically known
  // method/function interface information. In those cases please use this value.
  val DynamicCallUnknownFullName = ""

  // Anonymous functions, lambdas, and closures, follow the naming scheme of $LambdaPrefix$int
  val ClosurePrefix = ""

  val LeftAngularBracket = "<"
  val Unknown            = ""
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy