Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell98 |
ShellCheck.AnalyzerLib
Documentation
type AnalyzerM a = RWS Parameters [TokenComment] Cache a #
nullCheck :: b -> RWST Parameters [TokenComment] Cache Identity () #
runChecker :: Parameters -> Checker -> [TokenComment] #
composeAnalyzers :: (a -> Analysis) -> (a -> Analysis) -> a -> Analysis #
data Parameters #
Constructors
Parameters | |
Fields
|
Instances
Show Parameters # | |
Defined in ShellCheck.AnalyzerLib Methods showsPrec :: Int -> Parameters -> ShowS show :: Parameters -> String showList :: [Parameters] -> ShowS |
Constructors
SubshellScope String | |
NoneScope |
Constructors
StackScope Scope | |
StackScopeEnd | |
Assignment (Token, Token, String, DataType) | |
Reference (Token, Token, String) |
Constructors
DataString DataSource | |
DataArray DataSource |
data DataSource #
Constructors
SourceFrom [Token] | |
SourceExternal | |
SourceDeclaration | |
SourceInteger | |
SourceChecked |
Instances
Show DataSource # | |
Defined in ShellCheck.AnalyzerLib Methods showsPrec :: Int -> DataSource -> ShowS show :: DataSource -> String showList :: [DataSource] -> ShowS |
data VariableState #
Instances
Show VariableState # | |
Defined in ShellCheck.AnalyzerLib Methods showsPrec :: Int -> VariableState -> ShowS show :: VariableState -> String showList :: [VariableState] -> ShowS |
defaultSpec :: ParseResult -> AnalysisSpec #
pScript :: [Char] -> ParseResult #
producesComments :: Checker -> String -> Maybe Bool #
makeComment :: Severity -> Id -> Code -> String -> TokenComment #
addComment :: (NFData a, MonadWriter [a] m) => a -> m () #
warn :: MonadWriter [TokenComment] m => Id -> Code -> String -> m () #
err :: MonadWriter [TokenComment] m => Id -> Code -> String -> m () #
info :: MonadWriter [TokenComment] m => Id -> Code -> String -> m () #
style :: MonadWriter [TokenComment] m => Id -> Code -> String -> m () #
errWithFix :: MonadWriter [TokenComment] m => Id -> Code -> String -> Fix -> m () #
warnWithFix :: MonadWriter [TokenComment] m => Id -> Code -> String -> Fix -> m () #
infoWithFix :: MonadWriter [TokenComment] m => Id -> Code -> String -> Fix -> m () #
styleWithFix :: MonadWriter [TokenComment] m => Id -> Code -> String -> Fix -> m () #
addCommentWithFix :: MonadWriter [TokenComment] m => Severity -> Id -> Code -> String -> Fix -> m () #
makeCommentWithFix :: Severity -> Id -> Code -> String -> Fix -> TokenComment #
containsSetE :: Token -> Bool #
containsSetOption :: [Char] -> Token -> Bool #
containsShopt :: [Char] -> Token -> Bool #
isOptionSet :: [Char] -> Token -> Bool #
prop_determineShell0 :: Bool #
prop_determineShell1 :: Bool #
prop_determineShell2 :: Bool #
prop_determineShell3 :: Bool #
prop_determineShell4 :: Bool #
prop_determineShell5 :: Bool #
prop_determineShell6 :: Bool #
prop_determineShell7 :: Bool #
prop_determineShell8 :: Bool #
prop_determineShell9 :: Bool #
prop_determineShell10 :: Bool #
prop_determineShell11 :: Bool #
prop_determineShell12 :: Bool #
determineShellTest :: [Char] -> Shell #
determineShellTest' :: Maybe Shell -> [Char] -> Shell #
determineShell :: Maybe Shell -> Token -> Shell #
getParentTree :: Token -> Map Id Token #
getTokenMap :: Token -> Map Id Token #
getClosestCommandM :: MonadReader Parameters m => Token -> m (Maybe Token) #
usedAsCommandName :: Map Id Token -> Token -> Bool #
getPathM :: MonadReader Parameters m => Token -> m [Token] #
parents :: Parameters -> Token -> [Token] #
tokenIsJustCommandOutput :: Token -> Bool #
getVariableFlow :: Parameters -> Token -> [StackData] #
leadType :: Parameters -> Token -> Scope #
getReferencedVariableCommand :: Token -> [(Token, Token, String)] #
getVariableForTestDashV :: Token -> Maybe String #
isDereferencingBinaryOp :: String -> Bool #
dataTypeFrom :: (DataSource -> DataType) -> Token -> DataType #
isUnqualifiedCommand :: Token -> String -> Bool #
isCommandMatch :: Token -> (String -> Bool) -> Bool #
isConfusedGlobRegex :: String -> Bool #
getVariablesFromLiteralToken :: Token -> [String] #
prop_getVariablesFromLiteral1 :: Bool #
getVariablesFromLiteral :: String -> [String] #
whenShell :: (MonadReader Parameters m, Foldable t) => t Shell -> m () -> m () #
filterByAnnotation :: AnalysisSpec -> Parameters -> [TokenComment] -> [TokenComment] #
shouldIgnoreCode :: Parameters -> Integer -> Token -> Bool #
isCountingReference :: Token -> Bool #
isQuotedAlternativeReference :: Token -> Bool #
supportsArrays :: Shell -> Bool #
isBashLike :: Parameters -> Bool #
isTrueAssignmentSource :: DataType -> Bool #
modifiesVariable :: Parameters -> Token -> [Char] -> Bool #