mischief-ecs
Safe HaskellNone
LanguageGHC2024

Mischief.ECS.World.Query.QueryFilter

Synopsis

Documentation

data ErasedCheck where Source #

Constructors

ErasedCheck :: forall c. Component c => (c -> Bool) -> ErasedCheck 

Instances

Instances details
Show ErasedCheck Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

extractArchetypeFilters :: QueryFilter -> (QueryFilter, QueryFilter) Source #

Extracts archetype-level filters from the bigger filter where possible, to be applied at the start of querying for better performance.

class IntoQueryFilter qf where Source #

Instances

Instances details
Collectable c FilterType => IntoQueryFilter (Added c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

Collectable c FilterType => IntoQueryFilter (Changed c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

Component c => IntoQueryFilter (Check c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

IntoQueryFilter q => IntoQueryFilter (Not q) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

Collectable c FilterType => IntoQueryFilter (With c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

Collectable c FilterType => IntoQueryFilter (Without c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

(IntoQueryFilter a, IntoQueryFilter b) => IntoQueryFilter (And a b) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

Component c => IntoQueryFilter (CheckR Entity c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

Component c => IntoQueryFilter (CheckR Any c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

(IntoQueryFilter a, IntoQueryFilter b) => IntoQueryFilter (Or a b) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

newtype With c Source #

Constructors

With c 

Instances

Instances details
Collectable c FilterType => IntoQueryFilter (With c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

newtype Without c Source #

Constructors

Without c 

Instances

Instances details
Collectable c FilterType => IntoQueryFilter (Without c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

newtype Not c Source #

Constructors

Not c 

Instances

Instances details
IntoQueryFilter q => IntoQueryFilter (Not q) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

data Or a b Source #

Constructors

Or a b 

Instances

Instances details
(IntoQueryFilter a, IntoQueryFilter b) => IntoQueryFilter (Or a b) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

(|.) :: a -> b -> Or a b infix 9 Source #

data And a b Source #

Constructors

And a b 

Instances

Instances details
(IntoQueryFilter a, IntoQueryFilter b) => IntoQueryFilter (And a b) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

(&.) :: a -> b -> And a b infix 8 Source #

newtype Changed c Source #

Constructors

Changed c 

Instances

Instances details
Collectable c FilterType => IntoQueryFilter (Changed c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

newtype Added c Source #

Constructors

Added c 

Instances

Instances details
Collectable c FilterType => IntoQueryFilter (Added c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

newtype Check c Source #

Constructors

Check (c -> Bool) 

Instances

Instances details
Component c => IntoQueryFilter (Check c) Source # 
Instance details

Defined in Mischief.ECS.World.Query.QueryFilter

data CheckR e c Source #

Constructors

CheckR e (c -> Bool) 

type family InnerC a where ... Source #

Equations

InnerC (C (Rel a)) = a 
InnerC (C a) = a