io.joern.csharpsrc2cpg.datastructures

Members list

Type members

Classlikes

object BlockScope extends TypedScopeElement

Represents scope objects that map to a block node.

Represents scope objects that map to a block node.

Attributes

Supertypes
trait TypedScopeElement
class Object
trait Matchable
class Any
Self type
BlockScope.type
case class CSharpField(name: String, typeName: String) extends FieldLike

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait FieldLike
trait MemberLike
class Object
trait Matchable
class Any
Show all
case class CSharpMethod(name: String, returnType: String, parameterTypes: List[(String, String)], isStatic: Boolean) extends MethodLike

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait MethodLike
trait MemberLike
class Object
trait Matchable
class Any
Show all
class CSharpProgramSummary(initialMappings: List[NamespaceToTypeMap]) extends ProgramSummary[CSharpType]

A mapping of type stubs of known types within the scope of the analysis.

A mapping of type stubs of known types within the scope of the analysis.

Value parameters

initialMappings

mappings to create the scope from

Attributes

See also

CSharpProgramSummary.jsonToInitialMapping for generating initial mappings.

Companion
object
Supertypes
trait ProgramSummary[CSharpType]
class Object
trait Matchable
class Any

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
class CSharpScope(summary: CSharpProgramSummary) extends Scope[String, DeclarationNew, TypedScopeElement], TypedScope[CSharpMethod, CSharpField, CSharpType]

Attributes

Supertypes
trait TypedScope[CSharpMethod, CSharpField, CSharpType]
class Scope[String, DeclarationNew, TypedScopeElement]
class Object
trait Matchable
class Any
case class CSharpType(name: String, methods: List[CSharpMethod], fields: List[CSharpField]) extends TypeLike[CSharpMethod, CSharpField]

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait TypeLike[CSharpMethod, CSharpField]
class Object
trait Matchable
class Any
Show all
case class EnumScope(fullName: String, aliasFor: String) extends TypeLikeScope

An enumeration type.

An enumeration type.

Value parameters

aliasFor

the integer equivalent type that this represents

fullName

the enum full name

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait TypedScopeElement
class Object
trait Matchable
class Any
Show all
case class FieldDecl(name: String, typeFullName: String, isStatic: Boolean, isInitialized: Boolean, node: DotNetNodeInfo) extends TypedScopeElement

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait TypedScopeElement
class Object
trait Matchable
class Any
Show all
case class MethodScope(fullName: String) extends TypedScopeElement

Represents scope objects that map to a method node.

Represents scope objects that map to a method node.

Value parameters

fullName

the method full name.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait TypedScopeElement
class Object
trait Matchable
class Any
Show all
case class NamespaceScope(fullName: String) extends NamespaceLikeScope

Represents scope objects mapping to namespace nodes. Likened to namespace or package declarations.

Represents scope objects mapping to namespace nodes. Likened to namespace or package declarations.

Value parameters

fullName

the fully qualified name.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait NamespaceLikeScope
trait TypedScopeElement
class Object
trait Matchable
class Any
Show all
sealed trait TypeLikeScope extends TypedScopeElement

Represents scope objects that map to a type declaration node.

Represents scope objects that map to a type declaration node.

Attributes

Supertypes
trait TypedScopeElement
class Object
trait Matchable
class Any
Known subtypes
class EnumScope
class TypeScope
case class TypeScope(fullName: String, fields: List[FieldDecl]) extends TypeLikeScope

A class or interface.

A class or interface.

Value parameters

fullName

the type full name.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait TypedScopeElement
class Object
trait Matchable
class Any
Show all

Types

type NamespaceToTypeMap = Map[String, Set[CSharpType]]