octane-0.16.1: Parse Rocket League replays.

Safe HaskellNone
LanguageHaskell2010

Octane.Type.OptimizedReplay

Synopsis

Documentation

data OptimizedReplay Source #

A fully-processed replay with optimized frames. That means any unnecessary replications have been removed.

See Replay.

Instances

Eq OptimizedReplay Source # 
Show OptimizedReplay Source # 
Generic OptimizedReplay Source # 
Binary OptimizedReplay Source # 
NFData OptimizedReplay Source # 

Methods

rnf :: OptimizedReplay -> () #

HasField "label" OptimizedReplay Text Source # 

Methods

getField :: Proxy# Symbol "label" -> OptimizedReplay -> Text

HasField "version1" OptimizedReplay Word32 Source # 

Methods

getField :: Proxy# Symbol "version1" -> OptimizedReplay -> Word32

HasField "version2" OptimizedReplay Word32 Source # 

Methods

getField :: Proxy# Symbol "version2" -> OptimizedReplay -> Word32

ModifyField "label" OptimizedReplay OptimizedReplay Text Text Source # 
ModifyField "version1" OptimizedReplay OptimizedReplay Word32 Word32 Source # 
ModifyField "version2" OptimizedReplay OptimizedReplay Word32 Word32 Source # 
ModifyField "cache" OptimizedReplay OptimizedReplay (List CacheItem) (List CacheItem) Source # 
ModifyField "classes" OptimizedReplay OptimizedReplay (List ClassItem) (List ClassItem) Source # 
ModifyField "frames" OptimizedReplay OptimizedReplay [Frame] [Frame] Source # 
ModifyField "keyFrames" OptimizedReplay OptimizedReplay (List KeyFrame) (List KeyFrame) Source # 
ModifyField "levels" OptimizedReplay OptimizedReplay (List Text) (List Text) Source # 
ModifyField "marks" OptimizedReplay OptimizedReplay (List Mark) (List Mark) Source # 
ModifyField "messages" OptimizedReplay OptimizedReplay (List Message) (List Message) Source # 
ModifyField "names" OptimizedReplay OptimizedReplay (List Text) (List Text) Source # 
ModifyField "objects" OptimizedReplay OptimizedReplay (List Text) (List Text) Source # 
ModifyField "packages" OptimizedReplay OptimizedReplay (List Text) (List Text) Source # 
ModifyField "properties" OptimizedReplay OptimizedReplay (Dictionary Property) (Dictionary Property) Source # 
HasField "cache" OptimizedReplay (List CacheItem) Source # 
HasField "classes" OptimizedReplay (List ClassItem) Source # 
HasField "frames" OptimizedReplay [Frame] Source # 

Methods

getField :: Proxy# Symbol "frames" -> OptimizedReplay -> [Frame]

HasField "keyFrames" OptimizedReplay (List KeyFrame) Source # 

Methods

getField :: Proxy# Symbol "keyFrames" -> OptimizedReplay -> List KeyFrame

HasField "levels" OptimizedReplay (List Text) Source # 

Methods

getField :: Proxy# Symbol "levels" -> OptimizedReplay -> List Text

HasField "marks" OptimizedReplay (List Mark) Source # 

Methods

getField :: Proxy# Symbol "marks" -> OptimizedReplay -> List Mark

HasField "messages" OptimizedReplay (List Message) Source # 

Methods

getField :: Proxy# Symbol "messages" -> OptimizedReplay -> List Message

HasField "names" OptimizedReplay (List Text) Source # 

Methods

getField :: Proxy# Symbol "names" -> OptimizedReplay -> List Text

HasField "objects" OptimizedReplay (List Text) Source # 

Methods

getField :: Proxy# Symbol "objects" -> OptimizedReplay -> List Text

HasField "packages" OptimizedReplay (List Text) Source # 

Methods

getField :: Proxy# Symbol "packages" -> OptimizedReplay -> List Text

HasField "properties" OptimizedReplay (Dictionary Property) Source # 
ModifyRec "label" Text cs0 => HasField "label" (Rec cs0 OptimizedReplay) Text Source # 

Methods

getField :: Proxy# Symbol "label" -> Rec cs0 OptimizedReplay -> Text

ModifyRec "version1" Word32 cs0 => HasField "version1" (Rec cs0 OptimizedReplay) Word32 Source # 

Methods

getField :: Proxy# Symbol "version1" -> Rec cs0 OptimizedReplay -> Word32

ModifyRec "version2" Word32 cs0 => HasField "version2" (Rec cs0 OptimizedReplay) Word32 Source # 

Methods

getField :: Proxy# Symbol "version2" -> Rec cs0 OptimizedReplay -> Word32

ModifyRec "cache" (List CacheItem) cs0 => HasField "cache" (Rec cs0 OptimizedReplay) (List CacheItem) Source # 

Methods

getField :: Proxy# Symbol "cache" -> Rec cs0 OptimizedReplay -> List CacheItem

ModifyRec "classes" (List ClassItem) cs0 => HasField "classes" (Rec cs0 OptimizedReplay) (List ClassItem) Source # 

Methods

getField :: Proxy# Symbol "classes" -> Rec cs0 OptimizedReplay -> List ClassItem

ModifyRec "frames" [Frame] cs0 => HasField "frames" (Rec cs0 OptimizedReplay) [Frame] Source # 

Methods

getField :: Proxy# Symbol "frames" -> Rec cs0 OptimizedReplay -> [Frame]

ModifyRec "keyFrames" (List KeyFrame) cs0 => HasField "keyFrames" (Rec cs0 OptimizedReplay) (List KeyFrame) Source # 

Methods

getField :: Proxy# Symbol "keyFrames" -> Rec cs0 OptimizedReplay -> List KeyFrame

ModifyRec "levels" (List Text) cs0 => HasField "levels" (Rec cs0 OptimizedReplay) (List Text) Source # 

Methods

getField :: Proxy# Symbol "levels" -> Rec cs0 OptimizedReplay -> List Text

ModifyRec "marks" (List Mark) cs0 => HasField "marks" (Rec cs0 OptimizedReplay) (List Mark) Source # 

Methods

getField :: Proxy# Symbol "marks" -> Rec cs0 OptimizedReplay -> List Mark

ModifyRec "messages" (List Message) cs0 => HasField "messages" (Rec cs0 OptimizedReplay) (List Message) Source # 

Methods

getField :: Proxy# Symbol "messages" -> Rec cs0 OptimizedReplay -> List Message

ModifyRec "names" (List Text) cs0 => HasField "names" (Rec cs0 OptimizedReplay) (List Text) Source # 

Methods

getField :: Proxy# Symbol "names" -> Rec cs0 OptimizedReplay -> List Text

ModifyRec "objects" (List Text) cs0 => HasField "objects" (Rec cs0 OptimizedReplay) (List Text) Source # 

Methods

getField :: Proxy# Symbol "objects" -> Rec cs0 OptimizedReplay -> List Text

ModifyRec "packages" (List Text) cs0 => HasField "packages" (Rec cs0 OptimizedReplay) (List Text) Source # 

Methods

getField :: Proxy# Symbol "packages" -> Rec cs0 OptimizedReplay -> List Text

ModifyRec "properties" (Dictionary Property) cs0 => HasField "properties" (Rec cs0 OptimizedReplay) (Dictionary Property) Source # 

Methods

getField :: Proxy# Symbol "properties" -> Rec cs0 OptimizedReplay -> Dictionary Property

ModifyRec "label" Text cs0 => ModifyField "label" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) Text Text Source # 

Methods

modifyField :: Proxy# Symbol "label" -> (Text -> Text) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "label" -> Rec cs0 OptimizedReplay -> Text -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "label" -> (Text -> f Text) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "version1" Word32 cs0 => ModifyField "version1" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) Word32 Word32 Source # 

Methods

modifyField :: Proxy# Symbol "version1" -> (Word32 -> Word32) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "version1" -> Rec cs0 OptimizedReplay -> Word32 -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "version1" -> (Word32 -> f Word32) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "version2" Word32 cs0 => ModifyField "version2" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) Word32 Word32 Source # 

Methods

modifyField :: Proxy# Symbol "version2" -> (Word32 -> Word32) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "version2" -> Rec cs0 OptimizedReplay -> Word32 -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "version2" -> (Word32 -> f Word32) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "cache" (List CacheItem) cs0 => ModifyField "cache" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List CacheItem) (List CacheItem) Source # 

Methods

modifyField :: Proxy# Symbol "cache" -> (List CacheItem -> List CacheItem) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "cache" -> Rec cs0 OptimizedReplay -> List CacheItem -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "cache" -> (List CacheItem -> f (List CacheItem)) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "classes" (List ClassItem) cs0 => ModifyField "classes" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List ClassItem) (List ClassItem) Source # 

Methods

modifyField :: Proxy# Symbol "classes" -> (List ClassItem -> List ClassItem) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "classes" -> Rec cs0 OptimizedReplay -> List ClassItem -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "classes" -> (List ClassItem -> f (List ClassItem)) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "frames" [Frame] cs0 => ModifyField "frames" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) [Frame] [Frame] Source # 

Methods

modifyField :: Proxy# Symbol "frames" -> ([Frame] -> [Frame]) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "frames" -> Rec cs0 OptimizedReplay -> [Frame] -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "frames" -> ([Frame] -> f [Frame]) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "keyFrames" (List KeyFrame) cs0 => ModifyField "keyFrames" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List KeyFrame) (List KeyFrame) Source # 

Methods

modifyField :: Proxy# Symbol "keyFrames" -> (List KeyFrame -> List KeyFrame) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "keyFrames" -> Rec cs0 OptimizedReplay -> List KeyFrame -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "keyFrames" -> (List KeyFrame -> f (List KeyFrame)) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "levels" (List Text) cs0 => ModifyField "levels" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List Text) (List Text) Source # 

Methods

modifyField :: Proxy# Symbol "levels" -> (List Text -> List Text) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "levels" -> Rec cs0 OptimizedReplay -> List Text -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "levels" -> (List Text -> f (List Text)) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "marks" (List Mark) cs0 => ModifyField "marks" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List Mark) (List Mark) Source # 

Methods

modifyField :: Proxy# Symbol "marks" -> (List Mark -> List Mark) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "marks" -> Rec cs0 OptimizedReplay -> List Mark -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "marks" -> (List Mark -> f (List Mark)) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "messages" (List Message) cs0 => ModifyField "messages" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List Message) (List Message) Source # 

Methods

modifyField :: Proxy# Symbol "messages" -> (List Message -> List Message) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "messages" -> Rec cs0 OptimizedReplay -> List Message -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "messages" -> (List Message -> f (List Message)) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "names" (List Text) cs0 => ModifyField "names" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List Text) (List Text) Source # 

Methods

modifyField :: Proxy# Symbol "names" -> (List Text -> List Text) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "names" -> Rec cs0 OptimizedReplay -> List Text -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "names" -> (List Text -> f (List Text)) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "objects" (List Text) cs0 => ModifyField "objects" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List Text) (List Text) Source # 

Methods

modifyField :: Proxy# Symbol "objects" -> (List Text -> List Text) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "objects" -> Rec cs0 OptimizedReplay -> List Text -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "objects" -> (List Text -> f (List Text)) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "packages" (List Text) cs0 => ModifyField "packages" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List Text) (List Text) Source # 

Methods

modifyField :: Proxy# Symbol "packages" -> (List Text -> List Text) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "packages" -> Rec cs0 OptimizedReplay -> List Text -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "packages" -> (List Text -> f (List Text)) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

ModifyRec "properties" (Dictionary Property) cs0 => ModifyField "properties" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (Dictionary Property) (Dictionary Property) Source # 

Methods

modifyField :: Proxy# Symbol "properties" -> (Dictionary Property -> Dictionary Property) -> Rec cs0 OptimizedReplay -> Rec cs0 OptimizedReplay

setField :: Proxy# Symbol "properties" -> Rec cs0 OptimizedReplay -> Dictionary Property -> Rec cs0 OptimizedReplay

fieldLens :: Functor f => Proxy# Symbol "properties" -> (Dictionary Property -> f (Dictionary Property)) -> Rec cs0 OptimizedReplay -> f (Rec cs0 OptimizedReplay)

type Rep OptimizedReplay Source # 
type Rep OptimizedReplay = D1 (MetaData "OptimizedReplay" "Octane.Type.OptimizedReplay" "octane-0.16.1-GutvkXgevkCABZiWZysr0h" False) (C1 (MetaCons "OptimizedReplay" PrefixI True) ((:*:) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "optimizedReplayVersion1") NoSourceUnpackedness NoSourceStrictness DecidedUnpack) (Rec0 Word32)) ((:*:) (S1 (MetaSel (Just Symbol "optimizedReplayVersion2") NoSourceUnpackedness NoSourceStrictness DecidedUnpack) (Rec0 Word32)) (S1 (MetaSel (Just Symbol "optimizedReplayLabel") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 Text)))) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "optimizedReplayProperties") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 (Dictionary Property))) (S1 (MetaSel (Just Symbol "optimizedReplayLevels") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 (List Text)))) ((:*:) (S1 (MetaSel (Just Symbol "optimizedReplayKeyFrames") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 (List KeyFrame))) (S1 (MetaSel (Just Symbol "optimizedReplayFrames") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 [Frame]))))) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "optimizedReplayMessages") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 (List Message))) ((:*:) (S1 (MetaSel (Just Symbol "optimizedReplayMarks") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 (List Mark))) (S1 (MetaSel (Just Symbol "optimizedReplayPackages") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 (List Text))))) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "optimizedReplayObjects") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 (List Text))) (S1 (MetaSel (Just Symbol "optimizedReplayNames") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 (List Text)))) ((:*:) (S1 (MetaSel (Just Symbol "optimizedReplayClasses") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 (List ClassItem))) (S1 (MetaSel (Just Symbol "optimizedReplayCache") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 (List CacheItem))))))))
type FieldType "cache" OptimizedReplay Source # 
type FieldType "cache" OptimizedReplay = List CacheItem
type FieldType "classes" OptimizedReplay Source # 
type FieldType "classes" OptimizedReplay = List ClassItem
type FieldType "frames" OptimizedReplay Source # 
type FieldType "frames" OptimizedReplay = [Frame]
type FieldType "keyFrames" OptimizedReplay Source # 
type FieldType "keyFrames" OptimizedReplay = List KeyFrame
type FieldType "label" OptimizedReplay Source # 
type FieldType "label" OptimizedReplay = Text
type FieldType "levels" OptimizedReplay Source # 
type FieldType "levels" OptimizedReplay = List Text
type FieldType "marks" OptimizedReplay Source # 
type FieldType "marks" OptimizedReplay = List Mark
type FieldType "messages" OptimizedReplay Source # 
type FieldType "messages" OptimizedReplay = List Message
type FieldType "names" OptimizedReplay Source # 
type FieldType "names" OptimizedReplay = List Text
type FieldType "objects" OptimizedReplay Source # 
type FieldType "objects" OptimizedReplay = List Text
type FieldType "packages" OptimizedReplay Source # 
type FieldType "packages" OptimizedReplay = List Text
type FieldType "properties" OptimizedReplay Source # 
type FieldType "properties" OptimizedReplay = Dictionary Property
type FieldType "version1" OptimizedReplay Source # 
type FieldType "version1" OptimizedReplay = Word32
type FieldType "version2" OptimizedReplay Source # 
type FieldType "version2" OptimizedReplay = Word32
type UpdateType "label" OptimizedReplay Text Source # 
type UpdateType "label" OptimizedReplay Text = OptimizedReplay
type UpdateType "version1" OptimizedReplay Word32 Source # 
type UpdateType "version1" OptimizedReplay Word32 = OptimizedReplay
type UpdateType "version2" OptimizedReplay Word32 Source # 
type UpdateType "version2" OptimizedReplay Word32 = OptimizedReplay
type UpdateType "cache" OptimizedReplay (List CacheItem) Source # 
type UpdateType "cache" OptimizedReplay (List CacheItem) = OptimizedReplay
type UpdateType "classes" OptimizedReplay (List ClassItem) Source # 
type UpdateType "classes" OptimizedReplay (List ClassItem) = OptimizedReplay
type UpdateType "frames" OptimizedReplay [Frame] Source # 
type UpdateType "frames" OptimizedReplay [Frame] = OptimizedReplay
type UpdateType "keyFrames" OptimizedReplay (List KeyFrame) Source # 
type UpdateType "keyFrames" OptimizedReplay (List KeyFrame) = OptimizedReplay
type UpdateType "levels" OptimizedReplay (List Text) Source # 
type UpdateType "levels" OptimizedReplay (List Text) = OptimizedReplay
type UpdateType "marks" OptimizedReplay (List Mark) Source # 
type UpdateType "marks" OptimizedReplay (List Mark) = OptimizedReplay
type UpdateType "messages" OptimizedReplay (List Message) Source # 
type UpdateType "messages" OptimizedReplay (List Message) = OptimizedReplay
type UpdateType "names" OptimizedReplay (List Text) Source # 
type UpdateType "names" OptimizedReplay (List Text) = OptimizedReplay
type UpdateType "objects" OptimizedReplay (List Text) Source # 
type UpdateType "objects" OptimizedReplay (List Text) = OptimizedReplay
type UpdateType "packages" OptimizedReplay (List Text) Source # 
type UpdateType "packages" OptimizedReplay (List Text) = OptimizedReplay
type UpdateType "properties" OptimizedReplay (Dictionary Property) Source # 
type UpdateType "properties" OptimizedReplay (Dictionary Property) = OptimizedReplay

fromReplayWithFrames :: Monad m => ReplayWithFrames -> m OptimizedReplay Source #

Converts a ReplayWithFrames into an OptimizedReplay. Operates in a Monad so that it can fail somewhat gracefully.

toReplayWithFrames :: Monad m => OptimizedReplay -> m ReplayWithFrames Source #

Converts an OptimizedReplay into a ReplayWithFrames. Operates in a Monad so that it can fail somewhat gracefully.