| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Modelling.CdOd.NameCdError
Synopsis
- data NameCdErrorAnswer = NameCdErrorAnswer {}
- data NameCdErrorConfig = NameCdErrorConfig {
- allowedProperties :: AllowedProperties
- articleToUse :: ArticlePreference
- cdConstraints :: !CdConstraints
- classConfig :: ClassConfig
- drawSettings :: !CdDrawSettings
- maxInstances :: Maybe Integer
- objectProperties :: ObjectProperties
- possibleReasons :: [Reason]
- printSolution :: Bool
- reasonsPerInstance :: NumberOfReasons
- timeout :: Maybe Int
- useNames :: Bool
- extraText :: ExtraText
- data NameCdErrorInstance = NameCdErrorInstance {
- byName :: !Bool
- classDiagram :: AnnotatedCd Relevance
- cdDrawSettings :: !CdDrawSettings
- errorReasons :: !(Map Char (Bool, Reason))
- showSolution :: Bool
- taskText :: !NameCdErrorTaskText
- addText :: ExtraText
- type NameCdErrorTaskText = [SpecialOutput NameCdErrorTaskTextElement]
- data NameCdErrorTaskTextElement
- data NumberOfReasons = NumberOfReasons {}
- data Reason
- = Custom (Map Language String)
- | PreDefined Property
- data Relevance
- = NotRelevant
- | Relevant {
- contributingToProblem :: Bool
- listingPriority :: Int
- referenceUsing :: ArticleToUse
- checkNameCdErrorConfig :: NameCdErrorConfig -> Maybe String
- checkNameCdErrorInstance :: NameCdErrorInstance -> Maybe String
- classAndNonInheritanceNames :: NameCdErrorInstance -> ([String], [String])
- defaultNameCdErrorAnswer :: NameCdErrorAnswer
- defaultNameCdErrorConfig :: NameCdErrorConfig
- defaultNameCdErrorInstance :: NameCdErrorInstance
- isRelevant :: Annotation Relevance annotated -> Bool
- nameCdErrorEvaluation :: (Alternative m, MonadCache m, MonadDiagrams m, MonadGraphviz m, OutputCapable m) => FilePath -> NameCdErrorInstance -> NameCdErrorAnswer -> Rated m
- nameCdErrorGenerate :: (MonadAlloy m, MonadCatch m) => NameCdErrorConfig -> Int -> Int -> m NameCdErrorInstance
- nameCdErrorSolution :: NameCdErrorInstance -> NameCdErrorAnswer
- nameCdErrorSyntax :: OutputCapable m => NameCdErrorInstance -> NameCdErrorAnswer -> LangM m
- nameCdErrorTask :: (MonadCache m, MonadDiagrams m, MonadGraphviz m, OutputCapable m) => Bool -> FilePath -> NameCdErrorInstance -> LangM m
- parseNameCdErrorAnswer :: Parser NameCdErrorAnswer
- renameInstance :: MonadThrow m => NameCdErrorInstance -> [String] -> [String] -> m NameCdErrorInstance
- showNameCdErrorAnswer :: NameCdErrorAnswer -> String
Documentation
data NameCdErrorAnswer Source #
Constructors
| NameCdErrorAnswer | |
Instances
data NameCdErrorConfig Source #
Constructors
| NameCdErrorConfig | |
Fields
| |
Instances
data NameCdErrorInstance Source #
Constructors
| NameCdErrorInstance | |
Fields
| |
Instances
type NameCdErrorTaskText = [SpecialOutput NameCdErrorTaskTextElement] Source #
data NameCdErrorTaskTextElement Source #
Constructors
| IncorrectCd | |
| ReasonsList | |
| RelationshipsList |
Instances
data NumberOfReasons Source #
Constructors
| NumberOfReasons | |
Fields
| |
Instances
Constructors
| Custom (Map Language String) | |
| PreDefined Property |
Instances
| Data Reason Source # | |
Defined in Modelling.CdOd.NameCdError Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Reason -> c Reason # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Reason # toConstr :: Reason -> Constr # dataTypeOf :: Reason -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Reason) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Reason) # gmapT :: (forall b. Data b => b -> b) -> Reason -> Reason # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Reason -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Reason -> r # gmapQ :: (forall d. Data d => d -> u) -> Reason -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Reason -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Reason -> m Reason # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Reason -> m Reason # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Reason -> m Reason # | |
| Generic Reason Source # | |
| Read Reason Source # | |
| Show Reason Source # | |
| Eq Reason Source # | |
| Ord Reason Source # | |
| type Rep Reason Source # | |
Defined in Modelling.CdOd.NameCdError type Rep Reason = D1 ('MetaData "Reason" "Modelling.CdOd.NameCdError" "modelling-tasks-0.0.0.1-CFjgFvALsViKGNTlzwwmRs" 'False) (C1 ('MetaCons "Custom" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map Language String))) :+: C1 ('MetaCons "PreDefined" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Property))) | |
Constructors
| NotRelevant | |
| Relevant | |
Fields
| |
Instances
| Data Relevance Source # | |
Defined in Modelling.CdOd.NameCdError Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Relevance -> c Relevance # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Relevance # toConstr :: Relevance -> Constr # dataTypeOf :: Relevance -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Relevance) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Relevance) # gmapT :: (forall b. Data b => b -> b) -> Relevance -> Relevance # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Relevance -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Relevance -> r # gmapQ :: (forall d. Data d => d -> u) -> Relevance -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Relevance -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Relevance -> m Relevance # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Relevance -> m Relevance # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Relevance -> m Relevance # | |
| Generic Relevance Source # | |
| Read Relevance Source # | |
| Show Relevance Source # | |
| Eq Relevance Source # | |
| type Rep Relevance Source # | |
Defined in Modelling.CdOd.NameCdError type Rep Relevance = D1 ('MetaData "Relevance" "Modelling.CdOd.NameCdError" "modelling-tasks-0.0.0.1-CFjgFvALsViKGNTlzwwmRs" 'False) (C1 ('MetaCons "NotRelevant" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Relevant" 'PrefixI 'True) (S1 ('MetaSel ('Just "contributingToProblem") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "listingPriority") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Just "referenceUsing") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArticleToUse)))) | |
classAndNonInheritanceNames :: NameCdErrorInstance -> ([String], [String]) Source #
isRelevant :: Annotation Relevance annotated -> Bool Source #
nameCdErrorEvaluation :: (Alternative m, MonadCache m, MonadDiagrams m, MonadGraphviz m, OutputCapable m) => FilePath -> NameCdErrorInstance -> NameCdErrorAnswer -> Rated m Source #
Grading is done the following way:
- 0 points if the reason is wrong
- otherwise, multiple choice grading for answer on dueTo relationships
nameCdErrorGenerate :: (MonadAlloy m, MonadCatch m) => NameCdErrorConfig -> Int -> Int -> m NameCdErrorInstance Source #
nameCdErrorSyntax :: OutputCapable m => NameCdErrorInstance -> NameCdErrorAnswer -> LangM m Source #
nameCdErrorTask :: (MonadCache m, MonadDiagrams m, MonadGraphviz m, OutputCapable m) => Bool -> FilePath -> NameCdErrorInstance -> LangM m Source #
renameInstance :: MonadThrow m => NameCdErrorInstance -> [String] -> [String] -> m NameCdErrorInstance Source #