| Copyright | (C) CSIRO 2017-2019 |
|---|---|
| License | BSD3 |
| Maintainer | Isaac Elliott <isaace71295@gmail.com> |
| Stability | experimental |
| Portability | non-portable |
| Safe Haskell | None |
| Language | Haskell2010 |
Language.Python.Validate.Scope.Error
Description
Documentation
data ScopeError a #
Constructors
| FoundNonlocal a | Using |
| FoundGlobal a | Using |
| DeletedIdent a | Using |
| FoundDynamic a (Ident '[] a) | Variable assignments deep in control flow can modify the scope outside the control flow. For example: if a:
x = 0
else:
pass
print(x)
|
| NotInScope (Ident '[] a) | An identifier is not in scope |
| BadShadowing (Ident '[] a) | For loops don't execute in a fresh scope, so if the e.g. x = 0 for x in 1, 2, 3: pass print(x) outputs This error occurs when we spot this pattern. |
Instances
| Eq a => Eq (ScopeError a) # | |
Defined in Language.Python.Validate.Scope.Error | |
| Show a => Show (ScopeError a) # | |
Defined in Language.Python.Validate.Scope.Error Methods showsPrec :: Int -> ScopeError a -> ShowS # show :: ScopeError a -> String # showList :: [ScopeError a] -> ShowS # | |
| AsScopeError (ScopeError a) a # | |
Defined in Language.Python.Validate.Scope.Error Methods _ScopeError :: Prism' (ScopeError a) (ScopeError a) # _FoundNonlocal :: Prism' (ScopeError a) a # _FoundGlobal :: Prism' (ScopeError a) a # _DeletedIdent :: Prism' (ScopeError a) a # _FoundDynamic :: Prism' (ScopeError a) (a, Ident [] a) # _NotInScope :: Prism' (ScopeError a) (Ident [] a) # _BadShadowing :: Prism' (ScopeError a) (Ident [] a) # | |
class AsScopeError r a | r -> a where #
Minimal complete definition
Methods
_ScopeError :: Prism' r (ScopeError a) #
_FoundNonlocal :: Prism' r a #
_FoundGlobal :: Prism' r a #
_DeletedIdent :: Prism' r a #
_FoundDynamic :: Prism' r (a, Ident ('[] :: [Type]) a) #
_NotInScope :: Prism' r (Ident ('[] :: [Type]) a) #
_BadShadowing :: Prism' r (Ident ('[] :: [Type]) a) #
Instances
| AsScopeError (ScopeError a) a # | |
Defined in Language.Python.Validate.Scope.Error Methods _ScopeError :: Prism' (ScopeError a) (ScopeError a) # _FoundNonlocal :: Prism' (ScopeError a) a # _FoundGlobal :: Prism' (ScopeError a) a # _DeletedIdent :: Prism' (ScopeError a) a # _FoundDynamic :: Prism' (ScopeError a) (a, Ident [] a) # _NotInScope :: Prism' (ScopeError a) (Ident [] a) # _BadShadowing :: Prism' (ScopeError a) (Ident [] a) # | |
| AsScopeError (ValidationError a) a # | |
Defined in Language.Python.Validate.Error Methods _ScopeError :: Prism' (ValidationError a) (ScopeError a) # _FoundNonlocal :: Prism' (ValidationError a) a # _FoundGlobal :: Prism' (ValidationError a) a # _DeletedIdent :: Prism' (ValidationError a) a # _FoundDynamic :: Prism' (ValidationError a) (a, Ident [] a) # _NotInScope :: Prism' (ValidationError a) (Ident [] a) # _BadShadowing :: Prism' (ValidationError a) (Ident [] a) # | |