From 3f3ca2789b0a6d031f4819d303ca9584e833cac2 Mon Sep 17 00:00:00 2001 From: Vidar Holen Date: Mon, 19 Nov 2012 22:32:55 -0800 Subject: [PATCH] Moved Eq Token instance to AST where it belongs --- ShellCheck/AST.hs | 6 ++++++ ShellCheck/Parser.hs | 6 ------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ShellCheck/AST.hs b/ShellCheck/AST.hs index e6361c6..493eec2 100644 --- a/ShellCheck/AST.hs +++ b/ShellCheck/AST.hs @@ -19,6 +19,7 @@ module ShellCheck.AST where import Control.Monad import Control.Monad.Identity +import qualified Text.Regex as Re data Id = Id Int deriving (Show, Eq, Ord) @@ -28,6 +29,11 @@ data Token = T_AND_IF Id | T_OR_IF Id | T_DSEMI Id | T_Semi Id | T_DLESS Id | T_ data ConditionType = DoubleBracket | SingleBracket deriving (Show, Eq) +-- I apologize for nothing! +lolHax s = Re.subRegex (Re.mkRegex "(Id [0-9]+)") (show s) "(Id 0)" +instance Eq Token where + (==) a b = (lolHax a) == (lolHax b) + analyze :: Monad m => (Token -> m ()) -> (Token -> m ()) -> (Token -> Token) -> Token -> m Token analyze f g i t = diff --git a/ShellCheck/Parser.hs b/ShellCheck/Parser.hs index 4792592..d555dbb 100644 --- a/ShellCheck/Parser.hs +++ b/ShellCheck/Parser.hs @@ -31,7 +31,6 @@ import Data.Maybe import Prelude hiding (readList) import System.IO import Text.Parsec.Error -import qualified Text.Regex as Re import GHC.Exts (sortWith) @@ -441,11 +440,6 @@ condSpacingMsg soft msg = do space <- spacing when (null space) $ (if soft then parseNoteAt else parseProblemAt) pos ErrorC msg - -lolHax s = Re.subRegex (Re.mkRegex "(Id [0-9]+)") (show s) "(Id 0)" -instance Eq Token where - (==) a b = (lolHax a) == (lolHax b) - readComment = do char '#' anyChar `reluctantlyTill` linefeed