| Portability | Rank2Types |
|---|---|
| Stability | experimental |
| Maintainer | Edward Kmett <ekmett@gmail.com> |
| Safe Haskell | None |
System.FilePath.Lens
Description
- (</>~) :: ASetter s t FilePath FilePath -> FilePath -> s -> t
- (<</>~) :: LensLike ((,) FilePath) s a FilePath FilePath -> FilePath -> s -> (FilePath, a)
- (<.>~) :: ASetter s a FilePath FilePath -> String -> s -> a
- (<<.>~) :: LensLike ((,) FilePath) s a FilePath FilePath -> String -> s -> (FilePath, a)
- (</>=) :: MonadState s m => ASetter' s FilePath -> FilePath -> m ()
- (<</>=) :: MonadState s m => LensLike' ((,) FilePath) s FilePath -> FilePath -> m FilePath
- (<.>=) :: MonadState s m => ASetter' s FilePath -> String -> m ()
- (<<.>=) :: MonadState s m => LensLike' ((,) FilePath) s FilePath -> String -> m FilePath
- basename :: Lens' FilePath FilePath
- directory :: Lens' FilePath FilePath
- extension :: Lens' FilePath FilePath
- filename :: Lens' FilePath FilePath
Operators
(</>~) :: ASetter s t FilePath FilePath -> FilePath -> s -> tSource
Modify the path by adding another path.
>>>both </>~ "bin" $ ("hello","world")("hello/bin","world/bin")
(</>~) ::Setters aFilePathFilePath->FilePath-> s -> a (</>~) ::Isos aFilePathFilePath->FilePath-> s -> a (</>~) ::Lenss aFilePathFilePath->FilePath-> s -> a (</>~) ::Traversals aFilePathFilePath->FilePath-> s -> a
(<.>~) :: ASetter s a FilePath FilePath -> String -> s -> aSource
Modify the path by adding extension.
>>>both <.>~ "txt" $ ("hello","world")("hello.txt","world.txt")
(<.>~) ::Setters aFilePathFilePath->String-> s -> a (<.>~) ::Isos aFilePathFilePath->String-> s -> a (<.>~) ::Lenss aFilePathFilePath->String-> s -> a (<.>~) ::Traversals aFilePathFilePath->String-> s -> a
(</>=) :: MonadState s m => ASetter' s FilePath -> FilePath -> m ()Source
Modify the target(s) of a Simple Lens, Iso, Setter or Traversal by adding a path.
>>>execState (both </>= "bin") ("hello","world")("hello/bin","world/bin")
(</>=) ::MonadStates m =>Setter'sFilePath->FilePath-> m () (</>=) ::MonadStates m =>Iso'sFilePath->FilePath-> m () (</>=) ::MonadStates m =>Lens'sFilePath->FilePath-> m () (</>=) ::MonadStates m =>Traversal'sFilePath->FilePath-> m ()
(<.>=) :: MonadState s m => ASetter' s FilePath -> String -> m ()Source
Modify the target(s) of a Simple Lens, Iso, Setter or Traversal by adding an extension.
>>>execState (both <.>= "txt") ("hello","world")("hello.txt","world.txt")
(<.>=) ::MonadStates m =>Setter'sFilePath->String-> m () (<.>=) ::MonadStates m =>Iso'sFilePath->String-> m () (<.>=) ::MonadStates m =>Lens'sFilePath->String-> m () (<.>=) ::MonadStates m =>Traversal'sFilePath->String-> m ()
Lenses
basename :: Lens' FilePath FilePathSource
A Lens for reading and writing to the basename
>>>basename .~ "filename" $ "path/name.png""path/filename.png"
directory :: Lens' FilePath FilePathSource
A Lens for reading and writing to the directory
>>>"long/path/name.txt" ^. directory"long/path"