Move more base stuff into Types module
This commit is contained in:
		
							parent
							
								
									de6495d750
								
							
						
					
					
						commit
						e3868332be
					
				| @ -1,13 +1,8 @@ | ||||
| {-# LANGUAGE GADTs #-} | ||||
| {-# LANGUAGE FunctionalDependencies #-} | ||||
| module Functions where | ||||
| 
 | ||||
| import Types | ||||
| import Sources | ||||
| 
 | ||||
| class (SourceState a, Show f) => IsFunction f a b | f -> a b where | ||||
|   runF :: f -> a -> b | ||||
| 
 | ||||
| data IsImageFilename = IsImageFilename deriving (Show) | ||||
| instance IsFunction IsImageFilename FilePath Bool where | ||||
|   runF IsImageFilename _path = undefined | ||||
| @ -17,9 +12,6 @@ instance IsFunction ConvertedImageFilename FilePath FilePath where | ||||
|   runF ConvertedImageFilename _path = undefined | ||||
| 
 | ||||
| 
 | ||||
| class (SourceState a, Show f) => IsFunctionIO f a b | f -> a b where | ||||
|   runFIO :: f -> a -> IO b | ||||
| 
 | ||||
| data ListDirectory = ListDirectory deriving (Show) | ||||
| instance IsFunctionIO ListDirectory FilePath [FilePath] where | ||||
|   runFIO ListDirectory _path = undefined | ||||
|  | ||||
| @ -2,14 +2,9 @@ module Sources where | ||||
| 
 | ||||
| import Types | ||||
| 
 | ||||
| import Data.ByteString (ByteString) | ||||
| 
 | ||||
| data Source a where | ||||
|   Data :: a -> Source a | ||||
| 
 | ||||
| class SourceState a where | ||||
|   stateOfSource :: a -> IO ByteString | ||||
| 
 | ||||
| instance SourceState FilePath where | ||||
|   stateOfSource = undefined | ||||
| 
 | ||||
|  | ||||
| @ -1,4 +1,17 @@ | ||||
| {-# LANGUAGE FunctionalDependencies #-} | ||||
| module Types where | ||||
| 
 | ||||
| import Data.ByteString (ByteString) | ||||
| 
 | ||||
| data Image = Image | ||||
|   deriving (Show) | ||||
| 
 | ||||
| class (SourceState a, Show f) => IsFunction f a b | f -> a b where | ||||
|   runF :: f -> a -> b | ||||
| 
 | ||||
| class (SourceState a, Show f) => IsFunctionIO f a b | f -> a b where | ||||
|   runFIO :: f -> a -> IO b | ||||
| 
 | ||||
| class SourceState a where | ||||
|   stateOfSource :: a -> IO ByteString | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user