| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Subject
Description
Main module for the Subject library.
This module provides convenient access to all Subject library functionality by re-exporting public APIs from core modules. Import this module to access all Subject types, functions, and typeclass instances without needing to import individual modules.
Library Organization
The Subject library is organized into several modules:
Subject.Core- Core Subject data type, Symbol type, PropertyRecord type, and typeclass instances (Show, Eq, Ord, Hashable, Semigroup, Monoid)Subject.Value- Value type system supporting standard and extended typesSubject.Construction- Constructor functions and property manipulation
Usage
Import the main Subject module to access all functionality:
>>>import Subject>>>import Data.Map (fromList, empty)>>>import Data.Set (Set)>>>import qualified Data.Set as Set>>>import Subject.Value (VString)>>>let s = Subject (Symbol "n") (Set.fromList ["Person"]) (fromList [("name", VString "Alice")])
All public functions, types, and typeclass instances from Subject.Core and Subject.Value are available through this module. See individual module documentation for detailed information about specific functionality.
Re-export Structure
This module re-exports:
- All public exports from
Subject.Core(Subject type, Symbol type, PropertyRecord type, and all typeclass instances) - All public exports from
Subject.Value(Value type, RangeValue type)
Internal implementation details and helper functions are not exported through this module, ensuring a clean public API.