tokstyle-0.0.9: TokTok C code style checker
Safe HaskellNone
LanguageHaskell2010

Tokstyle.Analysis.PointsTo.Types

Synopsis

Documentation

data MemLoc Source #

Instances

Instances details
Eq MemLoc Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Methods

(==) :: MemLoc -> MemLoc -> Bool #

(/=) :: MemLoc -> MemLoc -> Bool #

Ord MemLoc Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Show MemLoc Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Generic MemLoc Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Associated Types

type Rep MemLoc :: Type -> Type #

Methods

from :: MemLoc -> Rep MemLoc x #

to :: Rep MemLoc x -> MemLoc #

Hashable MemLoc Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Methods

hashWithSalt :: Int -> MemLoc -> Int #

hash :: MemLoc -> Int #

type Rep MemLoc Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

type Rep MemLoc = D1 ('MetaData "MemLoc" "Tokstyle.Analysis.PointsTo.Types" "tokstyle-0.0.9-inplace" 'False) ((C1 ('MetaCons "StackLoc" 'PrefixI 'True) (S1 ('MetaSel ('Just "locId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ScopedId)) :+: (C1 ('MetaCons "HeapLoc" 'PrefixI 'True) (S1 ('MetaSel ('Just "allocSite") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)) :+: C1 ('MetaCons "GlobalVarLoc" 'PrefixI 'True) (S1 ('MetaSel ('Just "locId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ScopedId)))) :+: ((C1 ('MetaCons "ExternalParamLoc" 'PrefixI 'True) (S1 ('MetaSel ('Just "funcName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "paramName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)) :+: C1 ('MetaCons "FieldLoc" 'PrefixI 'True) (S1 ('MetaSel ('Just "baseLoc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MemLoc) :*: S1 ('MetaSel ('Just "fieldName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))) :+: (C1 ('MetaCons "NullLoc" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "UnknownLoc" 'PrefixI 'False) (U1 :: Type -> Type))))

newtype IMemLoc Source #

Interned Memory Location (just an Int for efficiency).

Constructors

IMemLoc 

Fields

Instances

Instances details
Eq IMemLoc Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Methods

(==) :: IMemLoc -> IMemLoc -> Bool #

(/=) :: IMemLoc -> IMemLoc -> Bool #

Ord IMemLoc Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Show IMemLoc Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Hashable IMemLoc Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Methods

hashWithSalt :: Int -> IMemLoc -> Int #

hash :: IMemLoc -> Int #

data FunctionSummary Source #

Constructors

FunctionSummary 

Fields

data PointsToFact Source #

Constructors

PointsToFact 

Fields

newtype RelevantInputState Source #

Represents the subset of PointsToFact that is relevant for a function call. This is used as the context key for memoization.

Instances

Instances details
Eq RelevantInputState Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Ord RelevantInputState Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

Show RelevantInputState Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo.Types

DataFlow PointsToAnalysis PointsToContext ScopedId PointsToFact RelevantInputState Source # 
Instance details

Defined in Tokstyle.Analysis.PointsTo