octane-0.16.3: Parse Rocket League replays.

Safe HaskellNone
LanguageHaskell2010

Octane.Type.Vector

Synopsis

Documentation

data Vector a Source #

Three values packed together. Although the fields are called x, y, and z, that may not be what they actually represent.

This cannot be an instance of BinaryBit because it is not always serialized the same way. Sometimes it is three values run together, but other times it has a flag for the presence of each value.

Constructors

Vector 

Fields

Instances

ModifyField "angularVelocity" RigidBodyStateValue RigidBodyStateValue (Maybe (Vector Int)) (Maybe (Vector Int)) # 
ModifyField "attackerVelocity" DemolishValue DemolishValue (Vector Int) (Vector Int) # 

Methods

modifyField :: Proxy# Symbol "attackerVelocity" -> (Vector Int -> Vector Int) -> DemolishValue -> DemolishValue #

setField :: Proxy# Symbol "attackerVelocity" -> DemolishValue -> Vector Int -> DemolishValue #

fieldLens :: Functor f => Proxy# Symbol "attackerVelocity" -> (Vector Int -> f (Vector Int)) -> DemolishValue -> f DemolishValue #

ModifyField "linearVelocity" RigidBodyStateValue RigidBodyStateValue (Maybe (Vector Int)) (Maybe (Vector Int)) # 
ModifyField "location" Initialization Initialization (Maybe (Vector Int)) (Maybe (Vector Int)) # 
ModifyField "offset" WeldedInfoValue WeldedInfoValue (Vector Int) (Vector Int) # 
ModifyField "position" ExplosionValue ExplosionValue (Vector Int) (Vector Int) # 
ModifyField "position" RigidBodyStateValue RigidBodyStateValue (Vector Int) (Vector Int) # 
ModifyField "rotation" RigidBodyStateValue RigidBodyStateValue (Vector Float) (Vector Float) # 
ModifyField "rotation" WeldedInfoValue WeldedInfoValue (Vector Int8) (Vector Int8) # 
ModifyField "rotation" Initialization Initialization (Maybe (Vector Int8)) (Maybe (Vector Int8)) # 
ModifyField "unpack" LocationValue LocationValue (Vector Int) (Vector Int) # 
ModifyField "unpack" RelativeRotationValue RelativeRotationValue (Vector Float) (Vector Float) # 
ModifyField "victimVelocity" DemolishValue DemolishValue (Vector Int) (Vector Int) # 

Methods

modifyField :: Proxy# Symbol "victimVelocity" -> (Vector Int -> Vector Int) -> DemolishValue -> DemolishValue #

setField :: Proxy# Symbol "victimVelocity" -> DemolishValue -> Vector Int -> DemolishValue #

fieldLens :: Functor f => Proxy# Symbol "victimVelocity" -> (Vector Int -> f (Vector Int)) -> DemolishValue -> f DemolishValue #

HasField "angularVelocity" RigidBodyStateValue (Maybe (Vector Int)) # 

Methods

getField :: Proxy# Symbol "angularVelocity" -> RigidBodyStateValue -> Maybe (Vector Int) #

HasField "attackerVelocity" DemolishValue (Vector Int) # 

Methods

getField :: Proxy# Symbol "attackerVelocity" -> DemolishValue -> Vector Int #

HasField "linearVelocity" RigidBodyStateValue (Maybe (Vector Int)) # 

Methods

getField :: Proxy# Symbol "linearVelocity" -> RigidBodyStateValue -> Maybe (Vector Int) #

HasField "location" Initialization (Maybe (Vector Int)) # 

Methods

getField :: Proxy# Symbol "location" -> Initialization -> Maybe (Vector Int) #

HasField "offset" WeldedInfoValue (Vector Int) # 

Methods

getField :: Proxy# Symbol "offset" -> WeldedInfoValue -> Vector Int #

HasField "position" ExplosionValue (Vector Int) # 

Methods

getField :: Proxy# Symbol "position" -> ExplosionValue -> Vector Int #

HasField "position" RigidBodyStateValue (Vector Int) # 

Methods

getField :: Proxy# Symbol "position" -> RigidBodyStateValue -> Vector Int #

HasField "rotation" RigidBodyStateValue (Vector Float) # 
HasField "rotation" WeldedInfoValue (Vector Int8) # 

Methods

getField :: Proxy# Symbol "rotation" -> WeldedInfoValue -> Vector Int8 #

HasField "rotation" Initialization (Maybe (Vector Int8)) # 

Methods

getField :: Proxy# Symbol "rotation" -> Initialization -> Maybe (Vector Int8) #

HasField "unpack" LocationValue (Vector Int) # 

Methods

getField :: Proxy# Symbol "unpack" -> LocationValue -> Vector Int #

HasField "unpack" RelativeRotationValue (Vector Float) # 
HasField "victimVelocity" DemolishValue (Vector Int) # 

Methods

getField :: Proxy# Symbol "victimVelocity" -> DemolishValue -> Vector Int #

HasField "x" (Vector a0) a0 Source # 

Methods

getField :: Proxy# Symbol "x" -> Vector a0 -> a0 #

HasField "y" (Vector a0) a0 Source # 

Methods

getField :: Proxy# Symbol "y" -> Vector a0 -> a0 #

HasField "z" (Vector a0) a0 Source # 

Methods

getField :: Proxy# Symbol "z" -> Vector a0 -> a0 #

ModifyField "x" (Vector a0) (Vector a0) a0 a0 Source # 

Methods

modifyField :: Proxy# Symbol "x" -> (a0 -> a0) -> Vector a0 -> Vector a0 #

setField :: Proxy# Symbol "x" -> Vector a0 -> a0 -> Vector a0 #

fieldLens :: Functor f => Proxy# Symbol "x" -> (a0 -> f a0) -> Vector a0 -> f (Vector a0) #

ModifyField "y" (Vector a0) (Vector a0) a0 a0 Source # 

Methods

modifyField :: Proxy# Symbol "y" -> (a0 -> a0) -> Vector a0 -> Vector a0 #

setField :: Proxy# Symbol "y" -> Vector a0 -> a0 -> Vector a0 #

fieldLens :: Functor f => Proxy# Symbol "y" -> (a0 -> f a0) -> Vector a0 -> f (Vector a0) #

ModifyField "z" (Vector a0) (Vector a0) a0 a0 Source # 

Methods

modifyField :: Proxy# Symbol "z" -> (a0 -> a0) -> Vector a0 -> Vector a0 #

setField :: Proxy# Symbol "z" -> Vector a0 -> a0 -> Vector a0 #

fieldLens :: Functor f => Proxy# Symbol "z" -> (a0 -> f a0) -> Vector a0 -> f (Vector a0) #

ModifyRec "x" a0 cs0 => HasField "x" (Rec cs0 (Vector a0)) a0 Source # 

Methods

getField :: Proxy# Symbol "x" -> Rec cs0 (Vector a0) -> a0 #

ModifyRec "y" a0 cs0 => HasField "y" (Rec cs0 (Vector a0)) a0 Source # 

Methods

getField :: Proxy# Symbol "y" -> Rec cs0 (Vector a0) -> a0 #

ModifyRec "z" a0 cs0 => HasField "z" (Rec cs0 (Vector a0)) a0 Source # 

Methods

getField :: Proxy# Symbol "z" -> Rec cs0 (Vector a0) -> a0 #

ModifyRec "angularVelocity" (Maybe (Vector Int)) cs0 => HasField "angularVelocity" (Rec cs0 RigidBodyStateValue) (Maybe (Vector Int)) # 

Methods

getField :: Proxy# Symbol "angularVelocity" -> Rec cs0 RigidBodyStateValue -> Maybe (Vector Int) #

ModifyRec "attackerVelocity" (Vector Int) cs0 => HasField "attackerVelocity" (Rec cs0 DemolishValue) (Vector Int) # 

Methods

getField :: Proxy# Symbol "attackerVelocity" -> Rec cs0 DemolishValue -> Vector Int #

ModifyRec "linearVelocity" (Maybe (Vector Int)) cs0 => HasField "linearVelocity" (Rec cs0 RigidBodyStateValue) (Maybe (Vector Int)) # 

Methods

getField :: Proxy# Symbol "linearVelocity" -> Rec cs0 RigidBodyStateValue -> Maybe (Vector Int) #

ModifyRec "location" (Maybe (Vector Int)) cs0 => HasField "location" (Rec cs0 Initialization) (Maybe (Vector Int)) # 

Methods

getField :: Proxy# Symbol "location" -> Rec cs0 Initialization -> Maybe (Vector Int) #

ModifyRec "offset" (Vector Int) cs0 => HasField "offset" (Rec cs0 WeldedInfoValue) (Vector Int) # 

Methods

getField :: Proxy# Symbol "offset" -> Rec cs0 WeldedInfoValue -> Vector Int #

ModifyRec "position" (Vector Int) cs0 => HasField "position" (Rec cs0 ExplosionValue) (Vector Int) # 

Methods

getField :: Proxy# Symbol "position" -> Rec cs0 ExplosionValue -> Vector Int #

ModifyRec "position" (Vector Int) cs0 => HasField "position" (Rec cs0 RigidBodyStateValue) (Vector Int) # 

Methods

getField :: Proxy# Symbol "position" -> Rec cs0 RigidBodyStateValue -> Vector Int #

ModifyRec "rotation" (Vector Float) cs0 => HasField "rotation" (Rec cs0 RigidBodyStateValue) (Vector Float) # 

Methods

getField :: Proxy# Symbol "rotation" -> Rec cs0 RigidBodyStateValue -> Vector Float #

ModifyRec "rotation" (Vector Int8) cs0 => HasField "rotation" (Rec cs0 WeldedInfoValue) (Vector Int8) # 

Methods

getField :: Proxy# Symbol "rotation" -> Rec cs0 WeldedInfoValue -> Vector Int8 #

ModifyRec "rotation" (Maybe (Vector Int8)) cs0 => HasField "rotation" (Rec cs0 Initialization) (Maybe (Vector Int8)) # 

Methods

getField :: Proxy# Symbol "rotation" -> Rec cs0 Initialization -> Maybe (Vector Int8) #

ModifyRec "unpack" (Vector Int) cs0 => HasField "unpack" (Rec cs0 LocationValue) (Vector Int) # 

Methods

getField :: Proxy# Symbol "unpack" -> Rec cs0 LocationValue -> Vector Int #

ModifyRec "unpack" (Vector Float) cs0 => HasField "unpack" (Rec cs0 RelativeRotationValue) (Vector Float) # 
ModifyRec "victimVelocity" (Vector Int) cs0 => HasField "victimVelocity" (Rec cs0 DemolishValue) (Vector Int) # 

Methods

getField :: Proxy# Symbol "victimVelocity" -> Rec cs0 DemolishValue -> Vector Int #

ModifyRec "x" a0 cs0 => ModifyField "x" (Rec cs0 (Vector a0)) (Rec cs0 (Vector a0)) a0 a0 Source # 

Methods

modifyField :: Proxy# Symbol "x" -> (a0 -> a0) -> Rec cs0 (Vector a0) -> Rec cs0 (Vector a0) #

setField :: Proxy# Symbol "x" -> Rec cs0 (Vector a0) -> a0 -> Rec cs0 (Vector a0) #

fieldLens :: Functor f => Proxy# Symbol "x" -> (a0 -> f a0) -> Rec cs0 (Vector a0) -> f (Rec cs0 (Vector a0)) #

ModifyRec "y" a0 cs0 => ModifyField "y" (Rec cs0 (Vector a0)) (Rec cs0 (Vector a0)) a0 a0 Source # 

Methods

modifyField :: Proxy# Symbol "y" -> (a0 -> a0) -> Rec cs0 (Vector a0) -> Rec cs0 (Vector a0) #

setField :: Proxy# Symbol "y" -> Rec cs0 (Vector a0) -> a0 -> Rec cs0 (Vector a0) #

fieldLens :: Functor f => Proxy# Symbol "y" -> (a0 -> f a0) -> Rec cs0 (Vector a0) -> f (Rec cs0 (Vector a0)) #

ModifyRec "z" a0 cs0 => ModifyField "z" (Rec cs0 (Vector a0)) (Rec cs0 (Vector a0)) a0 a0 Source # 

Methods

modifyField :: Proxy# Symbol "z" -> (a0 -> a0) -> Rec cs0 (Vector a0) -> Rec cs0 (Vector a0) #

setField :: Proxy# Symbol "z" -> Rec cs0 (Vector a0) -> a0 -> Rec cs0 (Vector a0) #

fieldLens :: Functor f => Proxy# Symbol "z" -> (a0 -> f a0) -> Rec cs0 (Vector a0) -> f (Rec cs0 (Vector a0)) #

ModifyRec "angularVelocity" (Maybe (Vector Int)) cs0 => ModifyField "angularVelocity" (Rec cs0 RigidBodyStateValue) (Rec cs0 RigidBodyStateValue) (Maybe (Vector Int)) (Maybe (Vector Int)) # 

Methods

modifyField :: Proxy# Symbol "angularVelocity" -> (Maybe (Vector Int) -> Maybe (Vector Int)) -> Rec cs0 RigidBodyStateValue -> Rec cs0 RigidBodyStateValue #

setField :: Proxy# Symbol "angularVelocity" -> Rec cs0 RigidBodyStateValue -> Maybe (Vector Int) -> Rec cs0 RigidBodyStateValue #

fieldLens :: Functor f => Proxy# Symbol "angularVelocity" -> (Maybe (Vector Int) -> f (Maybe (Vector Int))) -> Rec cs0 RigidBodyStateValue -> f (Rec cs0 RigidBodyStateValue) #

ModifyRec "attackerVelocity" (Vector Int) cs0 => ModifyField "attackerVelocity" (Rec cs0 DemolishValue) (Rec cs0 DemolishValue) (Vector Int) (Vector Int) # 

Methods

modifyField :: Proxy# Symbol "attackerVelocity" -> (Vector Int -> Vector Int) -> Rec cs0 DemolishValue -> Rec cs0 DemolishValue #

setField :: Proxy# Symbol "attackerVelocity" -> Rec cs0 DemolishValue -> Vector Int -> Rec cs0 DemolishValue #

fieldLens :: Functor f => Proxy# Symbol "attackerVelocity" -> (Vector Int -> f (Vector Int)) -> Rec cs0 DemolishValue -> f (Rec cs0 DemolishValue) #

ModifyRec "linearVelocity" (Maybe (Vector Int)) cs0 => ModifyField "linearVelocity" (Rec cs0 RigidBodyStateValue) (Rec cs0 RigidBodyStateValue) (Maybe (Vector Int)) (Maybe (Vector Int)) # 

Methods

modifyField :: Proxy# Symbol "linearVelocity" -> (Maybe (Vector Int) -> Maybe (Vector Int)) -> Rec cs0 RigidBodyStateValue -> Rec cs0 RigidBodyStateValue #

setField :: Proxy# Symbol "linearVelocity" -> Rec cs0 RigidBodyStateValue -> Maybe (Vector Int) -> Rec cs0 RigidBodyStateValue #

fieldLens :: Functor f => Proxy# Symbol "linearVelocity" -> (Maybe (Vector Int) -> f (Maybe (Vector Int))) -> Rec cs0 RigidBodyStateValue -> f (Rec cs0 RigidBodyStateValue) #

ModifyRec "location" (Maybe (Vector Int)) cs0 => ModifyField "location" (Rec cs0 Initialization) (Rec cs0 Initialization) (Maybe (Vector Int)) (Maybe (Vector Int)) # 

Methods

modifyField :: Proxy# Symbol "location" -> (Maybe (Vector Int) -> Maybe (Vector Int)) -> Rec cs0 Initialization -> Rec cs0 Initialization #

setField :: Proxy# Symbol "location" -> Rec cs0 Initialization -> Maybe (Vector Int) -> Rec cs0 Initialization #

fieldLens :: Functor f => Proxy# Symbol "location" -> (Maybe (Vector Int) -> f (Maybe (Vector Int))) -> Rec cs0 Initialization -> f (Rec cs0 Initialization) #

ModifyRec "offset" (Vector Int) cs0 => ModifyField "offset" (Rec cs0 WeldedInfoValue) (Rec cs0 WeldedInfoValue) (Vector Int) (Vector Int) # 
ModifyRec "position" (Vector Int) cs0 => ModifyField "position" (Rec cs0 ExplosionValue) (Rec cs0 ExplosionValue) (Vector Int) (Vector Int) # 

Methods

modifyField :: Proxy# Symbol "position" -> (Vector Int -> Vector Int) -> Rec cs0 ExplosionValue -> Rec cs0 ExplosionValue #

setField :: Proxy# Symbol "position" -> Rec cs0 ExplosionValue -> Vector Int -> Rec cs0 ExplosionValue #

fieldLens :: Functor f => Proxy# Symbol "position" -> (Vector Int -> f (Vector Int)) -> Rec cs0 ExplosionValue -> f (Rec cs0 ExplosionValue) #

ModifyRec "position" (Vector Int) cs0 => ModifyField "position" (Rec cs0 RigidBodyStateValue) (Rec cs0 RigidBodyStateValue) (Vector Int) (Vector Int) # 
ModifyRec "rotation" (Vector Float) cs0 => ModifyField "rotation" (Rec cs0 RigidBodyStateValue) (Rec cs0 RigidBodyStateValue) (Vector Float) (Vector Float) # 
ModifyRec "rotation" (Vector Int8) cs0 => ModifyField "rotation" (Rec cs0 WeldedInfoValue) (Rec cs0 WeldedInfoValue) (Vector Int8) (Vector Int8) # 

Methods

modifyField :: Proxy# Symbol "rotation" -> (Vector Int8 -> Vector Int8) -> Rec cs0 WeldedInfoValue -> Rec cs0 WeldedInfoValue #

setField :: Proxy# Symbol "rotation" -> Rec cs0 WeldedInfoValue -> Vector Int8 -> Rec cs0 WeldedInfoValue #

fieldLens :: Functor f => Proxy# Symbol "rotation" -> (Vector Int8 -> f (Vector Int8)) -> Rec cs0 WeldedInfoValue -> f (Rec cs0 WeldedInfoValue) #

ModifyRec "rotation" (Maybe (Vector Int8)) cs0 => ModifyField "rotation" (Rec cs0 Initialization) (Rec cs0 Initialization) (Maybe (Vector Int8)) (Maybe (Vector Int8)) # 

Methods

modifyField :: Proxy# Symbol "rotation" -> (Maybe (Vector Int8) -> Maybe (Vector Int8)) -> Rec cs0 Initialization -> Rec cs0 Initialization #

setField :: Proxy# Symbol "rotation" -> Rec cs0 Initialization -> Maybe (Vector Int8) -> Rec cs0 Initialization #

fieldLens :: Functor f => Proxy# Symbol "rotation" -> (Maybe (Vector Int8) -> f (Maybe (Vector Int8))) -> Rec cs0 Initialization -> f (Rec cs0 Initialization) #

ModifyRec "unpack" (Vector Int) cs0 => ModifyField "unpack" (Rec cs0 LocationValue) (Rec cs0 LocationValue) (Vector Int) (Vector Int) # 

Methods

modifyField :: Proxy# Symbol "unpack" -> (Vector Int -> Vector Int) -> Rec cs0 LocationValue -> Rec cs0 LocationValue #

setField :: Proxy# Symbol "unpack" -> Rec cs0 LocationValue -> Vector Int -> Rec cs0 LocationValue #

fieldLens :: Functor f => Proxy# Symbol "unpack" -> (Vector Int -> f (Vector Int)) -> Rec cs0 LocationValue -> f (Rec cs0 LocationValue) #

ModifyRec "unpack" (Vector Float) cs0 => ModifyField "unpack" (Rec cs0 RelativeRotationValue) (Rec cs0 RelativeRotationValue) (Vector Float) (Vector Float) # 
ModifyRec "victimVelocity" (Vector Int) cs0 => ModifyField "victimVelocity" (Rec cs0 DemolishValue) (Rec cs0 DemolishValue) (Vector Int) (Vector Int) # 

Methods

modifyField :: Proxy# Symbol "victimVelocity" -> (Vector Int -> Vector Int) -> Rec cs0 DemolishValue -> Rec cs0 DemolishValue #

setField :: Proxy# Symbol "victimVelocity" -> Rec cs0 DemolishValue -> Vector Int -> Rec cs0 DemolishValue #

fieldLens :: Functor f => Proxy# Symbol "victimVelocity" -> (Vector Int -> f (Vector Int)) -> Rec cs0 DemolishValue -> f (Rec cs0 DemolishValue) #

Eq a => Eq (Vector a) Source # 

Methods

(==) :: Vector a -> Vector a -> Bool #

(/=) :: Vector a -> Vector a -> Bool #

Show a => Show (Vector a) Source # 

Methods

showsPrec :: Int -> Vector a -> ShowS #

show :: Vector a -> String #

showList :: [Vector a] -> ShowS #

Generic (Vector a) Source # 

Associated Types

type Rep (Vector a) :: * -> * #

Methods

from :: Vector a -> Rep (Vector a) x #

to :: Rep (Vector a) x -> Vector a #

ToJSON a => ToJSON (Vector a) Source #

Encoded as a JSON array with 3 elements.

Aeson.encode (Vector 1 2 3 :: Vector Int) "[1,2,3]"

NFData a => NFData (Vector a) Source # 

Methods

rnf :: Vector a -> () #

type UpdateType "angularVelocity" RigidBodyStateValue (Maybe (Vector Int)) # 
type UpdateType "attackerVelocity" DemolishValue (Vector Int) # 
type UpdateType "attackerVelocity" DemolishValue (Vector Int) = DemolishValue
type UpdateType "linearVelocity" RigidBodyStateValue (Maybe (Vector Int)) # 
type UpdateType "location" Initialization (Maybe (Vector Int)) # 
type UpdateType "offset" WeldedInfoValue (Vector Int) # 
type UpdateType "position" ExplosionValue (Vector Int) # 
type UpdateType "position" RigidBodyStateValue (Vector Int) # 
type UpdateType "rotation" RigidBodyStateValue (Vector Float) # 
type UpdateType "rotation" WeldedInfoValue (Vector Int8) # 
type UpdateType "rotation" Initialization (Maybe (Vector Int8)) # 
type UpdateType "unpack" LocationValue (Vector Int) # 
type UpdateType "unpack" RelativeRotationValue (Vector Float) # 
type UpdateType "victimVelocity" DemolishValue (Vector Int) # 
type UpdateType "victimVelocity" DemolishValue (Vector Int) = DemolishValue
type FieldType "x" (Vector a0) Source # 
type FieldType "x" (Vector a0) = a0
type FieldType "y" (Vector a0) Source # 
type FieldType "y" (Vector a0) = a0
type FieldType "z" (Vector a0) Source # 
type FieldType "z" (Vector a0) = a0
type UpdateType "x" (Vector a0) a0 Source # 
type UpdateType "x" (Vector a0) a0 = Vector a0
type UpdateType "y" (Vector a0) a0 Source # 
type UpdateType "y" (Vector a0) a0 = Vector a0
type UpdateType "z" (Vector a0) a0 Source # 
type UpdateType "z" (Vector a0) a0 = Vector a0
type Rep (Vector a) Source # 
type Rep (Vector a) = D1 (MetaData "Vector" "Octane.Type.Vector" "octane-0.16.3-BwaIROHkKmo4WuJxKX8pbC" False) (C1 (MetaCons "Vector" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "vectorX") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 a)) ((:*:) (S1 (MetaSel (Just Symbol "vectorY") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 a)) (S1 (MetaSel (Just Symbol "vectorZ") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 a)))))

getInt8Vector :: BitGet (Vector Int8) Source #

Gets a Vector full of Int8s.

putInt8Vector :: Vector Int8 -> BitPut () Source #

Puts a Vector full of Int8s.

putIntVector :: Vector Int -> BitPut () Source #

Puts a Vector full of Ints.