octane-0.16.3: 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 # 
ModifyRec "classes" (List ClassItem) cs0 => ModifyField "classes" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List ClassItem) (List ClassItem) Source # 
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 # 
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 # 
ModifyRec "messages" (List Message) cs0 => ModifyField "messages" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List Message) (List Message) Source # 
ModifyRec "names" (List Text) cs0 => ModifyField "names" (Rec cs0 OptimizedReplay) (Rec cs0 OptimizedReplay) (List Text) (List Text) Source # 
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 # 
type Rep OptimizedReplay Source # 
type Rep OptimizedReplay = D1 (MetaData "OptimizedReplay" "Octane.Type.OptimizedReplay" "octane-0.16.3-BwaIROHkKmo4WuJxKX8pbC" False) (C1 (MetaCons "OptimizedReplay" PrefixI True) ((:*:) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "optimizedReplayVersion1") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 Word32)) ((:*:) (S1 (MetaSel (Just Symbol "optimizedReplayVersion2") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (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 "classes" OptimizedReplay Source # 
type FieldType "frames" OptimizedReplay Source # 
type FieldType "frames" OptimizedReplay = [Frame]
type FieldType "keyFrames" OptimizedReplay Source # 
type FieldType "label" OptimizedReplay Source # 
type FieldType "levels" OptimizedReplay Source # 
type FieldType "marks" OptimizedReplay Source # 
type FieldType "messages" OptimizedReplay Source # 
type FieldType "names" OptimizedReplay Source # 
type FieldType "objects" OptimizedReplay Source # 
type FieldType "packages" OptimizedReplay Source # 
type FieldType "properties" OptimizedReplay Source # 
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 "version1" OptimizedReplay Word32 Source # 
type UpdateType "version2" OptimizedReplay Word32 Source # 
type UpdateType "cache" OptimizedReplay (List CacheItem) Source # 
type UpdateType "classes" OptimizedReplay (List ClassItem) Source # 
type UpdateType "frames" OptimizedReplay [Frame] Source # 
type UpdateType "keyFrames" OptimizedReplay (List KeyFrame) Source # 
type UpdateType "levels" OptimizedReplay (List Text) Source # 
type UpdateType "marks" OptimizedReplay (List Mark) Source # 
type UpdateType "messages" OptimizedReplay (List Message) Source # 
type UpdateType "names" OptimizedReplay (List Text) Source # 
type UpdateType "objects" OptimizedReplay (List Text) Source # 
type UpdateType "packages" OptimizedReplay (List Text) Source # 
type UpdateType "properties" OptimizedReplay (Dictionary Property) Source # 

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.