language-java-0.2.8: Java source manipulation

Safe HaskellSafe
LanguageHaskell98

Language.Java.Java

Synopsis

Documentation

data Type Source #

There are two kinds of types in the Java programming language: primitive types and reference types.

Instances

Eq Type Source # 

Methods

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

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

Data Type Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Type -> c Type #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Type #

toConstr :: Type -> Constr #

dataTypeOf :: Type -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Type) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Type) #

gmapT :: (forall b. Data b => b -> b) -> Type -> Type #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Type -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Type -> r #

gmapQ :: (forall d. Data d => d -> u) -> Type -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Type -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Type -> m Type #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Type -> m Type #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Type -> m Type #

Read Type Source # 
Show Type Source # 

Methods

showsPrec :: Int -> Type -> ShowS #

show :: Type -> String #

showList :: [Type] -> ShowS #

Generic Type Source # 

Associated Types

type Rep Type :: * -> * #

Methods

from :: Type -> Rep Type x #

to :: Rep Type x -> Type #

HasType Type Source # 

Methods

getType :: Type -> Type Source #

Pretty Type Source # 
type Rep Type Source # 
type Rep Type = D1 (MetaData "Type" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" False) ((:+:) (C1 (MetaCons "PrimType" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 PrimType))) (C1 (MetaCons "RefType" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RefType))))

data RefType Source #

There are three kinds of reference types: class types, interface types, and array types. Reference types may be parameterized with type arguments. Type variables cannot be syntactically distinguished from class type identifiers, and are thus represented uniformly as single ident class types.

Constructors

ClassRefType ClassType 
ArrayType Type

TypeVariable Ident

Instances

Eq RefType Source # 

Methods

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

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

Data RefType Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RefType -> c RefType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RefType #

toConstr :: RefType -> Constr #

dataTypeOf :: RefType -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c RefType) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RefType) #

gmapT :: (forall b. Data b => b -> b) -> RefType -> RefType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RefType -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RefType -> r #

gmapQ :: (forall d. Data d => d -> u) -> RefType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> RefType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> RefType -> m RefType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RefType -> m RefType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RefType -> m RefType #

Read RefType Source # 
Show RefType Source # 
Generic RefType Source # 

Associated Types

type Rep RefType :: * -> * #

Methods

from :: RefType -> Rep RefType x #

to :: Rep RefType x -> RefType #

HasType RefType Source # 

Methods

getType :: RefType -> Type Source #

Pretty RefType Source # 
type Rep RefType Source # 
type Rep RefType = D1 (MetaData "RefType" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" False) ((:+:) (C1 (MetaCons "ClassRefType" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ClassType))) (C1 (MetaCons "ArrayType" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Type))))

data ClassType Source #

A ClassType can either be with an package or without.

Instances

Eq ClassType Source # 
Data ClassType Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ClassType -> c ClassType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ClassType #

toConstr :: ClassType -> Constr #

dataTypeOf :: ClassType -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ClassType) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ClassType) #

gmapT :: (forall b. Data b => b -> b) -> ClassType -> ClassType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ClassType -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ClassType -> r #

gmapQ :: (forall d. Data d => d -> u) -> ClassType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ClassType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ClassType -> m ClassType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ClassType -> m ClassType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ClassType -> m ClassType #

Read ClassType Source # 
Show ClassType Source # 
Generic ClassType Source # 

Associated Types

type Rep ClassType :: * -> * #

Pretty ClassType Source # 
type Rep ClassType Source # 

data ClassName Source #

a Classname is either a Classname or wildcard (matches any name). An AST constructed by the parser will only produce Classnames.

Instances

Eq ClassName Source # 
Data ClassName Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ClassName -> c ClassName #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ClassName #

toConstr :: ClassName -> Constr #

dataTypeOf :: ClassName -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c ClassName) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ClassName) #

gmapT :: (forall b. Data b => b -> b) -> ClassName -> ClassName #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ClassName -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ClassName -> r #

gmapQ :: (forall d. Data d => d -> u) -> ClassName -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ClassName -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ClassName -> m ClassName #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ClassName -> m ClassName #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ClassName -> m ClassName #

Read ClassName Source # 
Show ClassName Source # 
Generic ClassName Source # 

Associated Types

type Rep ClassName :: * -> * #

Pretty ClassName Source # 
type Rep ClassName Source # 
type Rep ClassName = D1 (MetaData "ClassName" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" False) ((:+:) (C1 (MetaCons "ClassName" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [(Ident, [TypeArgument])]))) (C1 (MetaCons "WildcardName" PrefixI False) U1))

data Package Source #

represents a package, e.g. java.util a package can either be fully qualified ("java.util"), or end with an wildcard ("java.util.*")

Instances

Eq Package Source # 

Methods

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

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

Data Package Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Package -> c Package #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Package #

toConstr :: Package -> Constr #

dataTypeOf :: Package -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Package) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Package) #

gmapT :: (forall b. Data b => b -> b) -> Package -> Package #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Package -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Package -> r #

gmapQ :: (forall d. Data d => d -> u) -> Package -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Package -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Package -> m Package #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Package -> m Package #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Package -> m Package #

Read Package Source # 
Show Package Source # 
Generic Package Source # 

Associated Types

type Rep Package :: * -> * #

Methods

from :: Package -> Rep Package x #

to :: Rep Package x -> Package #

Pretty Package Source # 
type Rep Package Source # 
type Rep Package = D1 (MetaData "Package" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" False) ((:+:) (C1 (MetaCons "FullQualiPackage" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Ident]))) (C1 (MetaCons "WildcardPackage" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Ident]))))

data TypeArgument Source #

Type arguments may be either reference types or wildcards.

Instances

Eq TypeArgument Source # 
Data TypeArgument Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TypeArgument -> c TypeArgument #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TypeArgument #

toConstr :: TypeArgument -> Constr #

dataTypeOf :: TypeArgument -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c TypeArgument) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TypeArgument) #

gmapT :: (forall b. Data b => b -> b) -> TypeArgument -> TypeArgument #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TypeArgument -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TypeArgument -> r #

gmapQ :: (forall d. Data d => d -> u) -> TypeArgument -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> TypeArgument -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TypeArgument -> m TypeArgument #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TypeArgument -> m TypeArgument #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TypeArgument -> m TypeArgument #

Read TypeArgument Source # 
Show TypeArgument Source # 
Generic TypeArgument Source # 

Associated Types

type Rep TypeArgument :: * -> * #

Pretty TypeArgument Source # 
type Rep TypeArgument Source # 
type Rep TypeArgument = D1 (MetaData "TypeArgument" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" False) ((:+:) (C1 (MetaCons "Wildcard" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe WildcardBound)))) ((:+:) (C1 (MetaCons "ActualType" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RefType))) (C1 (MetaCons "Diamond" PrefixI False) U1)))

newtype TypeDeclSpecifier Source #

Instances

Eq TypeDeclSpecifier Source # 
Data TypeDeclSpecifier Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TypeDeclSpecifier -> c TypeDeclSpecifier #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TypeDeclSpecifier #

toConstr :: TypeDeclSpecifier -> Constr #

dataTypeOf :: TypeDeclSpecifier -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c TypeDeclSpecifier) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TypeDeclSpecifier) #

gmapT :: (forall b. Data b => b -> b) -> TypeDeclSpecifier -> TypeDeclSpecifier #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TypeDeclSpecifier -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TypeDeclSpecifier -> r #

gmapQ :: (forall d. Data d => d -> u) -> TypeDeclSpecifier -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> TypeDeclSpecifier -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TypeDeclSpecifier -> m TypeDeclSpecifier #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TypeDeclSpecifier -> m TypeDeclSpecifier #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TypeDeclSpecifier -> m TypeDeclSpecifier #

Read TypeDeclSpecifier Source # 
Show TypeDeclSpecifier Source # 
Generic TypeDeclSpecifier Source # 
Pretty TypeDeclSpecifier Source # 
type Rep TypeDeclSpecifier Source # 
type Rep TypeDeclSpecifier = D1 (MetaData "TypeDeclSpecifier" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" True) (C1 (MetaCons "TypeDeclSpecifier" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ClassType)))

data WildcardBound Source #

Wildcards may be given explicit bounds, either upper (extends) or lower (super) bounds.

Instances

Eq WildcardBound Source # 
Data WildcardBound Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WildcardBound -> c WildcardBound #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c WildcardBound #

toConstr :: WildcardBound -> Constr #

dataTypeOf :: WildcardBound -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c WildcardBound) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WildcardBound) #

gmapT :: (forall b. Data b => b -> b) -> WildcardBound -> WildcardBound #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WildcardBound -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WildcardBound -> r #

gmapQ :: (forall d. Data d => d -> u) -> WildcardBound -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WildcardBound -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> WildcardBound -> m WildcardBound #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> WildcardBound -> m WildcardBound #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> WildcardBound -> m WildcardBound #

Read WildcardBound Source # 
Show WildcardBound Source # 
Generic WildcardBound Source # 

Associated Types

type Rep WildcardBound :: * -> * #

Pretty WildcardBound Source # 
type Rep WildcardBound Source # 
type Rep WildcardBound = D1 (MetaData "WildcardBound" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" False) ((:+:) (C1 (MetaCons "ExtendsBound" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RefType))) (C1 (MetaCons "SuperBound" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RefType))))

data PrimType Source #

A primitive type is predefined by the Java programming language and named by its reserved keyword.

Instances

Bounded PrimType Source # 
Enum PrimType Source # 
Eq PrimType Source # 
Data PrimType Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PrimType -> c PrimType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PrimType #

toConstr :: PrimType -> Constr #

dataTypeOf :: PrimType -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c PrimType) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PrimType) #

gmapT :: (forall b. Data b => b -> b) -> PrimType -> PrimType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PrimType -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PrimType -> r #

gmapQ :: (forall d. Data d => d -> u) -> PrimType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> PrimType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> PrimType -> m PrimType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PrimType -> m PrimType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PrimType -> m PrimType #

Read PrimType Source # 
Show PrimType Source # 
Generic PrimType Source # 

Associated Types

type Rep PrimType :: * -> * #

Methods

from :: PrimType -> Rep PrimType x #

to :: Rep PrimType x -> PrimType #

HasType PrimType Source # 
Pretty PrimType Source # 
type Rep PrimType Source # 
type Rep PrimType = D1 (MetaData "PrimType" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" False) ((:+:) ((:+:) ((:+:) (C1 (MetaCons "BooleanT" PrefixI False) U1) (C1 (MetaCons "ByteT" PrefixI False) U1)) ((:+:) (C1 (MetaCons "ShortT" PrefixI False) U1) (C1 (MetaCons "IntT" PrefixI False) U1))) ((:+:) ((:+:) (C1 (MetaCons "LongT" PrefixI False) U1) (C1 (MetaCons "CharT" PrefixI False) U1)) ((:+:) (C1 (MetaCons "FloatT" PrefixI False) U1) (C1 (MetaCons "DoubleT" PrefixI False) U1))))

data TypeParam Source #

A class is generic if it declares one or more type variables. These type variables are known as the type parameters of the class.

Constructors

TypeParam 

Instances

Eq TypeParam Source # 
Data TypeParam Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TypeParam -> c TypeParam #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TypeParam #

toConstr :: TypeParam -> Constr #

dataTypeOf :: TypeParam -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c TypeParam) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TypeParam) #

gmapT :: (forall b. Data b => b -> b) -> TypeParam -> TypeParam #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TypeParam -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TypeParam -> r #

gmapQ :: (forall d. Data d => d -> u) -> TypeParam -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> TypeParam -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TypeParam -> m TypeParam #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TypeParam -> m TypeParam #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TypeParam -> m TypeParam #

Read TypeParam Source # 
Show TypeParam Source # 
Generic TypeParam Source # 

Associated Types

type Rep TypeParam :: * -> * #

Pretty TypeParam Source # 
type Rep TypeParam Source # 
type Rep TypeParam = D1 (MetaData "TypeParam" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" False) (C1 (MetaCons "TypeParam" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "typeParamName") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Ident)) (S1 (MetaSel (Just Symbol "typeParamBounds") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [RefType]))))

newtype Ident Source #

A single identifier.

Constructors

Ident String 

Instances

Eq Ident Source # 

Methods

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

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

Data Ident Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Ident -> c Ident #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Ident #

toConstr :: Ident -> Constr #

dataTypeOf :: Ident -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Ident) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Ident) #

gmapT :: (forall b. Data b => b -> b) -> Ident -> Ident #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Ident -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Ident -> r #

gmapQ :: (forall d. Data d => d -> u) -> Ident -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Ident -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Ident -> m Ident #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Ident -> m Ident #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Ident -> m Ident #

Ord Ident Source # 

Methods

compare :: Ident -> Ident -> Ordering #

(<) :: Ident -> Ident -> Bool #

(<=) :: Ident -> Ident -> Bool #

(>) :: Ident -> Ident -> Bool #

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

max :: Ident -> Ident -> Ident #

min :: Ident -> Ident -> Ident #

Read Ident Source # 
Show Ident Source # 

Methods

showsPrec :: Int -> Ident -> ShowS #

show :: Ident -> String #

showList :: [Ident] -> ShowS #

Generic Ident Source # 

Associated Types

type Rep Ident :: * -> * #

Methods

from :: Ident -> Rep Ident x #

to :: Rep Ident x -> Ident #

Pretty Ident Source # 
type Rep Ident Source # 
type Rep Ident = D1 (MetaData "Ident" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" True) (C1 (MetaCons "Ident" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 String)))

newtype Name Source #

A name, i.e. a period-separated list of identifiers.

Constructors

Name [Ident] 

Instances

Eq Name Source # 

Methods

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

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

Data Name Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Name -> c Name #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Name #

toConstr :: Name -> Constr #

dataTypeOf :: Name -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Name) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Name) #

gmapT :: (forall b. Data b => b -> b) -> Name -> Name #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Name -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Name -> r #

gmapQ :: (forall d. Data d => d -> u) -> Name -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Name -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Name -> m Name #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Name -> m Name #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Name -> m Name #

Ord Name Source # 

Methods

compare :: Name -> Name -> Ordering #

(<) :: Name -> Name -> Bool #

(<=) :: Name -> Name -> Bool #

(>) :: Name -> Name -> Bool #

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

max :: Name -> Name -> Name #

min :: Name -> Name -> Name #

Read Name Source # 
Show Name Source # 

Methods

showsPrec :: Int -> Name -> ShowS #

show :: Name -> String #

showList :: [Name] -> ShowS #

Generic Name Source # 

Associated Types

type Rep Name :: * -> * #

Methods

from :: Name -> Rep Name x #

to :: Rep Name x -> Name #

Pretty Name Source # 
type Rep Name Source # 
type Rep Name = D1 (MetaData "Name" "Language.Java.Syntax.Types" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" True) (C1 (MetaCons "Name" PrefixI False) (S1 (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Ident])))

newtype RelaxedType Source #

A type with relaxed equality checking: 1. If packages equal 2. Or if classes equal 3. Or if boxed primitives equal primitives

Constructors

RelaxedType Type 

Instances

Eq RelaxedType Source #

Defines Equals for RelaxedType

checkRelaxed :: RefType -> RefType -> Bool Source #

Checks a RelaxedType for equality. A RelaxedType equals another RelaxedType if: 1. If packages equal 2. If classes equal 3. If boxed primitives equal primitives

primToRefType :: PrimType -> RefType Source #

This function returns a primitve as a ref type (i.e. boxed primitve)

withPackageIdentToType :: [Ident] -> Ident -> Type Source #

This function returns an Ident as a Type

withoutPackageIdentToType :: Ident -> Type Source #

This function returns an Ident as a Type

data Literal Source #

A literal denotes a fixed, unchanging value.

Instances

Eq Literal Source # 

Methods

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

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

Data Literal Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Literal -> c Literal #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Literal #

toConstr :: Literal -> Constr #

dataTypeOf :: Literal -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Literal) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Literal) #

gmapT :: (forall b. Data b => b -> b) -> Literal -> Literal #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Literal -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Literal -> r #

gmapQ :: (forall d. Data d => d -> u) -> Literal -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Literal -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Literal -> m Literal #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Literal -> m Literal #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Literal -> m Literal #

Read Literal Source # 
Show Literal Source # 
Generic Literal Source # 

Associated Types

type Rep Literal :: * -> * #

Methods

from :: Literal -> Rep Literal x #

to :: Rep Literal x -> Literal #

Pretty Literal Source # 
type Rep Literal Source # 

data Op Source #

A binary infix operator.

Instances

Bounded Op Source # 

Methods

minBound :: Op #

maxBound :: Op #

Enum Op Source # 

Methods

succ :: Op -> Op #

pred :: Op -> Op #

toEnum :: Int -> Op #

fromEnum :: Op -> Int #

enumFrom :: Op -> [Op] #

enumFromThen :: Op -> Op -> [Op] #

enumFromTo :: Op -> Op -> [Op] #

enumFromThenTo :: Op -> Op -> Op -> [Op] #

Eq Op Source # 

Methods

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

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

Data Op Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Op -> c Op #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Op #

toConstr :: Op -> Constr #

dataTypeOf :: Op -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Op) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Op) #

gmapT :: (forall b. Data b => b -> b) -> Op -> Op #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Op -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Op -> r #

gmapQ :: (forall d. Data d => d -> u) -> Op -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Op -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Op -> m Op #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Op -> m Op #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Op -> m Op #

Read Op Source # 
Show Op Source # 

Methods

showsPrec :: Int -> Op -> ShowS #

show :: Op -> String #

showList :: [Op] -> ShowS #

Generic Op Source # 

Associated Types

type Rep Op :: * -> * #

Methods

from :: Op -> Rep Op x #

to :: Rep Op x -> Op #

Pretty Op Source # 

Methods

pretty :: Op -> Doc Source #

prettyPrec :: Int -> Op -> Doc Source #

type Rep Op Source # 
type Rep Op = D1 (MetaData "Op" "Language.Java.Syntax.Exp" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" False) ((:+:) ((:+:) ((:+:) ((:+:) (C1 (MetaCons "Mult" PrefixI False) U1) (C1 (MetaCons "Div" PrefixI False) U1)) ((:+:) (C1 (MetaCons "Rem" PrefixI False) U1) (C1 (MetaCons "Add" PrefixI False) U1))) ((:+:) ((:+:) (C1 (MetaCons "Sub" PrefixI False) U1) (C1 (MetaCons "LShift" PrefixI False) U1)) ((:+:) (C1 (MetaCons "RShift" PrefixI False) U1) ((:+:) (C1 (MetaCons "RRShift" PrefixI False) U1) (C1 (MetaCons "LThan" PrefixI False) U1))))) ((:+:) ((:+:) ((:+:) (C1 (MetaCons "GThan" PrefixI False) U1) (C1 (MetaCons "LThanE" PrefixI False) U1)) ((:+:) (C1 (MetaCons "GThanE" PrefixI False) U1) ((:+:) (C1 (MetaCons "Equal" PrefixI False) U1) (C1 (MetaCons "NotEq" PrefixI False) U1)))) ((:+:) ((:+:) (C1 (MetaCons "And" PrefixI False) U1) (C1 (MetaCons "Or" PrefixI False) U1)) ((:+:) (C1 (MetaCons "Xor" PrefixI False) U1) ((:+:) (C1 (MetaCons "CAnd" PrefixI False) U1) (C1 (MetaCons "COr" PrefixI False) U1))))))

data AssignOp Source #

An assignment operator.

Instances

Bounded AssignOp Source # 
Enum AssignOp Source # 
Eq AssignOp Source # 
Data AssignOp Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AssignOp -> c AssignOp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AssignOp #

toConstr :: AssignOp -> Constr #

dataTypeOf :: AssignOp -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c AssignOp) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AssignOp) #

gmapT :: (forall b. Data b => b -> b) -> AssignOp -> AssignOp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AssignOp -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AssignOp -> r #

gmapQ :: (forall d. Data d => d -> u) -> AssignOp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> AssignOp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> AssignOp -> m AssignOp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AssignOp -> m AssignOp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AssignOp -> m AssignOp #

Read AssignOp Source # 
Show AssignOp Source # 
Generic AssignOp Source # 

Associated Types

type Rep AssignOp :: * -> * #

Methods

from :: AssignOp -> Rep AssignOp x #

to :: Rep AssignOp x -> AssignOp #

Pretty AssignOp Source # 
type Rep AssignOp Source # 
type Rep AssignOp = D1 (MetaData "AssignOp" "Language.Java.Syntax.Exp" "language-java-0.2.8-AgEtH1QMF83H54ihDWLUQH" False) ((:+:) ((:+:) ((:+:) (C1 (MetaCons "EqualA" PrefixI False) U1) ((:+:) (C1 (MetaCons "MultA" PrefixI False) U1) (C1 (MetaCons "DivA" PrefixI False) U1))) ((:+:) (C1 (MetaCons "RemA" PrefixI False) U1) ((:+:) (C1 (MetaCons "AddA" PrefixI False) U1) (C1 (MetaCons "SubA" PrefixI False) U1)))) ((:+:) ((:+:) (C1 (MetaCons "LShiftA" PrefixI False) U1) ((:+:) (C1 (MetaCons "RShiftA" PrefixI False) U1) (C1 (MetaCons "RRShiftA" PrefixI False) U1))) ((:+:) (C1 (MetaCons "AndA" PrefixI False) U1) ((:+:) (C1 (MetaCons "XorA" PrefixI False) U1) (C1 (MetaCons "OrA" PrefixI False) U1)))))