cgrep-8.0.0: src/Options.hs
--
-- Copyright (c) 2013-2023 Nicola Bonelli <nicola@larthia.com>
--
-- This program is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 2 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program; if not, write to the Free Software
-- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
--
{-# LANGUAGE DeriveDataTypeable #-}
module Options where
import Data.Data ( Data, Typeable )
data Options = Options
-- Pattern:
{ file :: String
, word_match :: Bool
, prefix_match :: Bool
, suffix_match :: Bool
, edit_dist :: Bool
, regex_posix :: Bool
, regex_pcre :: Bool
, ignore_case :: Bool
-- Context:
, code :: Bool
, comment :: Bool
, literal :: Bool
-- Tokenizer:
, identifier :: Bool
, nativeType :: Bool
, keyword :: Bool
, number :: Bool
, string :: Bool
, operator :: Bool
-- Semantic:
, semantic :: Bool
-- Output control:
, max_count :: Int
, type_filter :: [String]
, kind_filter :: [String]
, type_force :: Maybe String
, type_map :: Bool
, invert_match :: Bool
, multiline :: Int
, recursive :: Bool
, skip_test :: Bool
, prune_dir :: [FilePath]
, follow :: Bool
-- Output format:
, show_match :: Bool
, color :: Bool
, no_color :: Bool
, no_filename :: Bool
, no_numbers :: Bool
, no_column :: Bool
, count :: Bool
, filename_only :: Bool
, json :: Bool
, vim :: Bool
, editor :: Bool
, fileline :: Bool
-- Parallel:
, jobs :: Maybe Int
-- Misc:
, verbose :: Int
, no_shallow :: Bool
, show_palette :: Bool
, others :: [String]
} deriving stock (Data, Typeable, Show)