-- | This module is used for defining new types of rules for Shake build systems. -- Most users will find the built-in set of rules sufficient. module Development.Shake.Rule( -- * Defining builtin rules addBuiltinRule, BuiltinLint, noLint, BuiltinRun, RunChanged(..), RunResult(..), -- * Calling builtin rules apply, apply1, -- * User rules UserRule(..), addUserRule, getUserRules, userRuleMatch, -- * Lint integration trackUse, trackChange, trackAllow ) where import Development.Shake.Internal.Core.Types import Development.Shake.Internal.Core.Action import Development.Shake.Internal.Core.Run import Development.Shake.Internal.Core.Rules