cubix
Copyright(c) 2016-2020 James Koppel
LicenseBSD3
Safe HaskellNone
LanguageHaskell2010

Cubix.Language.Lua.Parametric.Common

Description

Language definition is auto-generated from that of language-lua, and modified to replace some language-specific nodes with generic nodes. See https://hackage.haskell.org/package/language-lua-0.11.0.1/docs/Language-Lua-Annotated-Syntax.html

Synopsis

Documentation

data LuaLocalVarInit (e :: Type -> Type) l where Source #

Constructors

LuaLocalVarInit :: forall (e :: Type -> Type). e [ExpL] -> LuaLocalVarInit e LocalVarInitL 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF LuaLocalVarInit Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. LuaLocalVarInit e l -> String Source #

ShowHF LuaLocalVarInit Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF LuaLocalVarInit Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => LuaLocalVarInit g i -> LuaLocalVarInit g j -> Bool Source #

HFoldable LuaLocalVarInit Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => LuaLocalVarInit (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> LuaLocalVarInit a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> LuaLocalVarInit a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> LuaLocalVarInit a :=> b Source #

hfoldr1 :: (a -> a -> a) -> LuaLocalVarInit (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> LuaLocalVarInit (K a) :=> a Source #

HFunctor LuaLocalVarInit Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> LuaLocalVarInit f :-> LuaLocalVarInit g Source #

HTraversable LuaLocalVarInit Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (LuaLocalVarInit a) (LuaLocalVarInit b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (LuaLocalVarInit a) (LuaLocalVarInit b) Source #

OrdHF LuaLocalVarInit Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => LuaLocalVarInit a i -> LuaLocalVarInit a j -> Ordering Source #

KDynCase LuaLocalVarInit LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. LuaLocalVarInit e b -> Maybe (b :~: LocalVarInitL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection LuaLocalVarInit Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data LuaLhs (e :: Type -> Type) l where Source #

Constructors

LuaLhs :: forall (e :: Type -> Type). e [VarL] -> LuaLhs e LhsL 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF LuaLhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. LuaLhs e l -> String Source #

ShowHF LuaLhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF LuaLhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => LuaLhs g i -> LuaLhs g j -> Bool Source #

HFoldable LuaLhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => LuaLhs (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> LuaLhs a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> LuaLhs a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> LuaLhs a :=> b Source #

hfoldr1 :: (a -> a -> a) -> LuaLhs (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> LuaLhs (K a) :=> a Source #

HFunctor LuaLhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> LuaLhs f :-> LuaLhs g Source #

HTraversable LuaLhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (LuaLhs a) (LuaLhs b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (LuaLhs a) (LuaLhs b) Source #

OrdHF LuaLhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => LuaLhs a i -> LuaLhs a j -> Ordering Source #

KDynCase LuaLhs LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. LuaLhs e b -> Maybe (b :~: LhsL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection LuaLhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data LuaRhs (e :: Type -> Type) l where Source #

Constructors

LuaRhs :: forall (e :: Type -> Type). e [ExpL] -> LuaRhs e RhsL 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF LuaRhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. LuaRhs e l -> String Source #

ShowHF LuaRhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF LuaRhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => LuaRhs g i -> LuaRhs g j -> Bool Source #

HFoldable LuaRhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => LuaRhs (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> LuaRhs a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> LuaRhs a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> LuaRhs a :=> b Source #

hfoldr1 :: (a -> a -> a) -> LuaRhs (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> LuaRhs (K a) :=> a Source #

HFunctor LuaRhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> LuaRhs f :-> LuaRhs g Source #

HTraversable LuaRhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (LuaRhs a) (LuaRhs b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (LuaRhs a) (LuaRhs b) Source #

OrdHF LuaRhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => LuaRhs a i -> LuaRhs a j -> Ordering Source #

KDynCase LuaRhs RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. LuaRhs e b -> Maybe (b :~: RhsL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection LuaRhs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data LuaBlockEnd (e :: Type -> Type) l where Source #

Constructors

LuaBlockEnd :: forall (e :: Type -> Type). e (Maybe [ExpL]) -> LuaBlockEnd e BlockEndL 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF LuaBlockEnd Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. LuaBlockEnd e l -> String Source #

ShowHF LuaBlockEnd Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF LuaBlockEnd Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => LuaBlockEnd g i -> LuaBlockEnd g j -> Bool Source #

HFoldable LuaBlockEnd Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => LuaBlockEnd (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> LuaBlockEnd a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> LuaBlockEnd a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> LuaBlockEnd a :=> b Source #

hfoldr1 :: (a -> a -> a) -> LuaBlockEnd (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> LuaBlockEnd (K a) :=> a Source #

HFunctor LuaBlockEnd Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> LuaBlockEnd f :-> LuaBlockEnd g Source #

HTraversable LuaBlockEnd Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (LuaBlockEnd a) (LuaBlockEnd b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (LuaBlockEnd a) (LuaBlockEnd b) Source #

OrdHF LuaBlockEnd Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => LuaBlockEnd a i -> LuaBlockEnd a j -> Ordering Source #

KDynCase LuaBlockEnd BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. LuaBlockEnd e b -> Maybe (b :~: BlockEndL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection LuaBlockEnd Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data LuaSpecialFunArg (e :: Type -> Type) l where Source #

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF LuaSpecialFunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. LuaSpecialFunArg e l -> String Source #

ShowHF LuaSpecialFunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF LuaSpecialFunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => LuaSpecialFunArg g i -> LuaSpecialFunArg g j -> Bool Source #

HFoldable LuaSpecialFunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => LuaSpecialFunArg (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> LuaSpecialFunArg a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> LuaSpecialFunArg a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> LuaSpecialFunArg a :=> b Source #

hfoldr1 :: (a -> a -> a) -> LuaSpecialFunArg (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> LuaSpecialFunArg (K a) :=> a Source #

HFunctor LuaSpecialFunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> LuaSpecialFunArg f :-> LuaSpecialFunArg g Source #

HTraversable LuaSpecialFunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (LuaSpecialFunArg a) (LuaSpecialFunArg b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (LuaSpecialFunArg a) (LuaSpecialFunArg b) Source #

OrdHF LuaSpecialFunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => LuaSpecialFunArg a i -> LuaSpecialFunArg a j -> Ordering Source #

KDynCase LuaSpecialFunArg FunctionArgumentsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. LuaSpecialFunArg e b -> Maybe (b :~: FunctionArgumentsL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection LuaSpecialFunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data IdentIsName (e :: Type -> Type) i Source #

Constructors

i ~ NameL => IdentIsName (e IdentL) 

Instances

Instances details
RemoveSortInjectionNode IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. IdentIsName (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource IdentIsName) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. IdentIsName e l -> String Source #

ShowHF IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => IdentIsName g i -> IdentIsName g j -> Bool Source #

HFoldable IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => IdentIsName (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> IdentIsName a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> IdentIsName a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> IdentIsName a :=> b Source #

hfoldr1 :: (a -> a -> a) -> IdentIsName (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> IdentIsName (K a) :=> a Source #

HFunctor IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> IdentIsName f :-> IdentIsName g Source #

HTraversable IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (IdentIsName a) (IdentIsName b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (IdentIsName a) (IdentIsName b) Source #

OrdHF IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => IdentIsName a i -> IdentIsName a j -> Ordering Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget IdentIsName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data AssignIsStat (e :: Type -> Type) i Source #

Constructors

i ~ StatL => AssignIsStat (e AssignL) 

Instances

Instances details
RemoveSortInjectionNode AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. AssignIsStat (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource AssignIsStat) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. AssignIsStat e l -> String Source #

ShowHF AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => AssignIsStat g i -> AssignIsStat g j -> Bool Source #

HFoldable AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => AssignIsStat (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> AssignIsStat a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> AssignIsStat a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> AssignIsStat a :=> b Source #

hfoldr1 :: (a -> a -> a) -> AssignIsStat (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> AssignIsStat (K a) :=> a Source #

HFunctor AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> AssignIsStat f :-> AssignIsStat g Source #

HTraversable AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (AssignIsStat a) (AssignIsStat b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (AssignIsStat a) (AssignIsStat b) Source #

OrdHF AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => AssignIsStat a i -> AssignIsStat a j -> Ordering Source #

KDynCase AssignIsStat StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. AssignIsStat e b -> Maybe (b :~: StatL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget AssignIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data BlockIsBlock (e :: Type -> Type) i Source #

Constructors

i ~ BlockL => BlockIsBlock (e BlockL) 

Instances

Instances details
RemoveSortInjectionNode BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. BlockIsBlock (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource BlockIsBlock) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. BlockIsBlock e l -> String Source #

ShowHF BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => BlockIsBlock g i -> BlockIsBlock g j -> Bool Source #

HFoldable BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => BlockIsBlock (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> BlockIsBlock a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> BlockIsBlock a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> BlockIsBlock a :=> b Source #

hfoldr1 :: (a -> a -> a) -> BlockIsBlock (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> BlockIsBlock (K a) :=> a Source #

HFunctor BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> BlockIsBlock f :-> BlockIsBlock g Source #

HTraversable BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (BlockIsBlock a) (BlockIsBlock b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (BlockIsBlock a) (BlockIsBlock b) Source #

OrdHF BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => BlockIsBlock a i -> BlockIsBlock a j -> Ordering Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget BlockIsBlock Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data StatIsBlockItem (e :: Type -> Type) i Source #

Constructors

i ~ BlockItemL => StatIsBlockItem (e StatL) 

Instances

Instances details
RemoveSortInjectionNode StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. StatIsBlockItem (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource StatIsBlockItem) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. StatIsBlockItem e l -> String Source #

ShowHF StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => StatIsBlockItem g i -> StatIsBlockItem g j -> Bool Source #

HFoldable StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => StatIsBlockItem (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> StatIsBlockItem a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> StatIsBlockItem a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> StatIsBlockItem a :=> b Source #

hfoldr1 :: (a -> a -> a) -> StatIsBlockItem (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> StatIsBlockItem (K a) :=> a Source #

HFunctor StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> StatIsBlockItem f :-> StatIsBlockItem g Source #

HTraversable StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (StatIsBlockItem a) (StatIsBlockItem b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (StatIsBlockItem a) (StatIsBlockItem b) Source #

OrdHF StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => StatIsBlockItem a i -> StatIsBlockItem a j -> Ordering Source #

KDynCase StatIsBlockItem BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. StatIsBlockItem e b -> Maybe (b :~: BlockItemL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget StatIsBlockItem Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data SingleLocalVarDeclIsStat (e :: Type -> Type) i Source #

Instances

Instances details
RemoveSortInjectionNode SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. SingleLocalVarDeclIsStat (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource SingleLocalVarDeclIsStat) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. SingleLocalVarDeclIsStat e l -> String Source #

ShowHF SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => SingleLocalVarDeclIsStat g i -> SingleLocalVarDeclIsStat g j -> Bool Source #

HFoldable SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => SingleLocalVarDeclIsStat (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> SingleLocalVarDeclIsStat a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> SingleLocalVarDeclIsStat a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> SingleLocalVarDeclIsStat a :=> b Source #

hfoldr1 :: (a -> a -> a) -> SingleLocalVarDeclIsStat (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> SingleLocalVarDeclIsStat (K a) :=> a Source #

HFunctor SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> SingleLocalVarDeclIsStat f :-> SingleLocalVarDeclIsStat g Source #

HTraversable SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (SingleLocalVarDeclIsStat a) (SingleLocalVarDeclIsStat b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (SingleLocalVarDeclIsStat a) (SingleLocalVarDeclIsStat b) Source #

OrdHF SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => SingleLocalVarDeclIsStat a i -> SingleLocalVarDeclIsStat a j -> Ordering Source #

KDynCase SingleLocalVarDeclIsStat StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. SingleLocalVarDeclIsStat e b -> Maybe (b :~: StatL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget SingleLocalVarDeclIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data FunctionCallIsFunCall (e :: Type -> Type) i Source #

Instances

Instances details
RemoveSortInjectionNode FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. FunctionCallIsFunCall (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource FunctionCallIsFunCall) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. FunctionCallIsFunCall e l -> String Source #

ShowHF FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => FunctionCallIsFunCall g i -> FunctionCallIsFunCall g j -> Bool Source #

HFoldable FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => FunctionCallIsFunCall (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> FunctionCallIsFunCall a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> FunctionCallIsFunCall a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> FunctionCallIsFunCall a :=> b Source #

hfoldr1 :: (a -> a -> a) -> FunctionCallIsFunCall (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> FunctionCallIsFunCall (K a) :=> a Source #

HFunctor FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> FunctionCallIsFunCall f :-> FunctionCallIsFunCall g Source #

HTraversable FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (FunctionCallIsFunCall a) (FunctionCallIsFunCall b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (FunctionCallIsFunCall a) (FunctionCallIsFunCall b) Source #

OrdHF FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => FunctionCallIsFunCall a i -> FunctionCallIsFunCall a j -> Ordering Source #

KDynCase FunctionCallIsFunCall FunCallL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. FunctionCallIsFunCall e b -> Maybe (b :~: FunCallL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget FunctionCallIsFunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data ExpIsPositionalArgExp (e :: Type -> Type) i Source #

Instances

Instances details
RemoveSortInjectionNode ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. ExpIsPositionalArgExp (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource ExpIsPositionalArgExp) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. ExpIsPositionalArgExp e l -> String Source #

ShowHF ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => ExpIsPositionalArgExp g i -> ExpIsPositionalArgExp g j -> Bool Source #

HFoldable ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => ExpIsPositionalArgExp (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> ExpIsPositionalArgExp a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> ExpIsPositionalArgExp a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> ExpIsPositionalArgExp a :=> b Source #

hfoldr1 :: (a -> a -> a) -> ExpIsPositionalArgExp (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> ExpIsPositionalArgExp (K a) :=> a Source #

HFunctor ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> ExpIsPositionalArgExp f :-> ExpIsPositionalArgExp g Source #

HTraversable ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (ExpIsPositionalArgExp a) (ExpIsPositionalArgExp b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (ExpIsPositionalArgExp a) (ExpIsPositionalArgExp b) Source #

OrdHF ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => ExpIsPositionalArgExp a i -> ExpIsPositionalArgExp a j -> Ordering Source #

KDynCase ExpIsPositionalArgExp PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. ExpIsPositionalArgExp e b -> Maybe (b :~: PositionalArgExpL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget ExpIsPositionalArgExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data PrefixExpIsFunctionExp (e :: Type -> Type) i Source #

Instances

Instances details
RemoveSortInjectionNode PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. PrefixExpIsFunctionExp (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource PrefixExpIsFunctionExp) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. PrefixExpIsFunctionExp e l -> String Source #

ShowHF PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => PrefixExpIsFunctionExp g i -> PrefixExpIsFunctionExp g j -> Bool Source #

HFoldable PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => PrefixExpIsFunctionExp (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> PrefixExpIsFunctionExp a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> PrefixExpIsFunctionExp a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> PrefixExpIsFunctionExp a :=> b Source #

hfoldr1 :: (a -> a -> a) -> PrefixExpIsFunctionExp (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> PrefixExpIsFunctionExp (K a) :=> a Source #

HFunctor PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> PrefixExpIsFunctionExp f :-> PrefixExpIsFunctionExp g Source #

HTraversable PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (PrefixExpIsFunctionExp a) (PrefixExpIsFunctionExp b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (PrefixExpIsFunctionExp a) (PrefixExpIsFunctionExp b) Source #

OrdHF PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => PrefixExpIsFunctionExp a i -> PrefixExpIsFunctionExp a j -> Ordering Source #

KDynCase PrefixExpIsFunctionExp FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. PrefixExpIsFunctionExp e b -> Maybe (b :~: FunctionExpL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget PrefixExpIsFunctionExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data PrefixExpIsReceiver (e :: Type -> Type) i Source #

Constructors

i ~ ReceiverL => PrefixExpIsReceiver (e PrefixExpL) 

Instances

Instances details
RemoveSortInjectionNode PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. PrefixExpIsReceiver (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource PrefixExpIsReceiver) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. PrefixExpIsReceiver e l -> String Source #

ShowHF PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => PrefixExpIsReceiver g i -> PrefixExpIsReceiver g j -> Bool Source #

HFoldable PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => PrefixExpIsReceiver (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> PrefixExpIsReceiver a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> PrefixExpIsReceiver a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> PrefixExpIsReceiver a :=> b Source #

hfoldr1 :: (a -> a -> a) -> PrefixExpIsReceiver (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> PrefixExpIsReceiver (K a) :=> a Source #

HFunctor PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> PrefixExpIsReceiver f :-> PrefixExpIsReceiver g Source #

HTraversable PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (PrefixExpIsReceiver a) (PrefixExpIsReceiver b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (PrefixExpIsReceiver a) (PrefixExpIsReceiver b) Source #

OrdHF PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => PrefixExpIsReceiver a i -> PrefixExpIsReceiver a j -> Ordering Source #

KDynCase PrefixExpIsReceiver ReceiverL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. PrefixExpIsReceiver e b -> Maybe (b :~: ReceiverL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget PrefixExpIsReceiver Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data LuaFunctionDefinedObj (e :: Type -> Type) l where Source #

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF LuaFunctionDefinedObj Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. LuaFunctionDefinedObj e l -> String Source #

ShowHF LuaFunctionDefinedObj Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF LuaFunctionDefinedObj Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => LuaFunctionDefinedObj g i -> LuaFunctionDefinedObj g j -> Bool Source #

HFoldable LuaFunctionDefinedObj Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => LuaFunctionDefinedObj (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> LuaFunctionDefinedObj a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> LuaFunctionDefinedObj a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> LuaFunctionDefinedObj a :=> b Source #

hfoldr1 :: (a -> a -> a) -> LuaFunctionDefinedObj (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> LuaFunctionDefinedObj (K a) :=> a Source #

HFunctor LuaFunctionDefinedObj Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> LuaFunctionDefinedObj f :-> LuaFunctionDefinedObj g Source #

HTraversable LuaFunctionDefinedObj Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (LuaFunctionDefinedObj a) (LuaFunctionDefinedObj b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (LuaFunctionDefinedObj a) (LuaFunctionDefinedObj b) Source #

OrdHF LuaFunctionDefinedObj Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => LuaFunctionDefinedObj a i -> LuaFunctionDefinedObj a j -> Ordering Source #

KDynCase LuaFunctionDefinedObj LuaFunctionDefinedObjL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection LuaFunctionDefinedObj Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data LuaFunctionAttrs (e :: Type -> Type) l where Source #

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF LuaFunctionAttrs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. LuaFunctionAttrs e l -> String Source #

ShowHF LuaFunctionAttrs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF LuaFunctionAttrs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => LuaFunctionAttrs g i -> LuaFunctionAttrs g j -> Bool Source #

HFoldable LuaFunctionAttrs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => LuaFunctionAttrs (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> LuaFunctionAttrs a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> LuaFunctionAttrs a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> LuaFunctionAttrs a :=> b Source #

hfoldr1 :: (a -> a -> a) -> LuaFunctionAttrs (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> LuaFunctionAttrs (K a) :=> a Source #

HFunctor LuaFunctionAttrs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> LuaFunctionAttrs f :-> LuaFunctionAttrs g Source #

HTraversable LuaFunctionAttrs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (LuaFunctionAttrs a) (LuaFunctionAttrs b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (LuaFunctionAttrs a) (LuaFunctionAttrs b) Source #

OrdHF LuaFunctionAttrs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => LuaFunctionAttrs a i -> LuaFunctionAttrs a j -> Ordering Source #

KDynCase LuaFunctionAttrs FunctionDefAttrsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. LuaFunctionAttrs e b -> Maybe (b :~: FunctionDefAttrsL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection LuaFunctionAttrs Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data LuaVarArgsParam (a :: Family) b where Source #

Constructors

LuaVarArgsParam :: forall (a :: Family). LuaVarArgsParam a FunctionParameterL 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF LuaVarArgsParam Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. LuaVarArgsParam e l -> String Source #

ShowHF LuaVarArgsParam Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF LuaVarArgsParam Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => LuaVarArgsParam g i -> LuaVarArgsParam g j -> Bool Source #

HFoldable LuaVarArgsParam Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => LuaVarArgsParam (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> LuaVarArgsParam a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> LuaVarArgsParam a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> LuaVarArgsParam a :=> b Source #

hfoldr1 :: (a -> a -> a) -> LuaVarArgsParam (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> LuaVarArgsParam (K a) :=> a Source #

HFunctor LuaVarArgsParam Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> LuaVarArgsParam f :-> LuaVarArgsParam g Source #

HTraversable LuaVarArgsParam Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (LuaVarArgsParam a) (LuaVarArgsParam b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (LuaVarArgsParam a) (LuaVarArgsParam b) Source #

OrdHF LuaVarArgsParam Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => LuaVarArgsParam a i -> LuaVarArgsParam a j -> Ordering Source #

KDynCase LuaVarArgsParam FunctionParameterL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. LuaVarArgsParam e b -> Maybe (b :~: FunctionParameterL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection LuaVarArgsParam Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data FunctionDefIsStat (e :: Type -> Type) i Source #

Constructors

i ~ StatL => FunctionDefIsStat (e FunctionDefL) 

Instances

Instances details
RemoveSortInjectionNode FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. FunctionDefIsStat (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource FunctionDefIsStat) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. FunctionDefIsStat e l -> String Source #

ShowHF FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => FunctionDefIsStat g i -> FunctionDefIsStat g j -> Bool Source #

HFoldable FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => FunctionDefIsStat (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> FunctionDefIsStat a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> FunctionDefIsStat a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> FunctionDefIsStat a :=> b Source #

hfoldr1 :: (a -> a -> a) -> FunctionDefIsStat (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> FunctionDefIsStat (K a) :=> a Source #

HFunctor FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> FunctionDefIsStat f :-> FunctionDefIsStat g Source #

HTraversable FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (FunctionDefIsStat a) (FunctionDefIsStat b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (FunctionDefIsStat a) (FunctionDefIsStat b) Source #

OrdHF FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => FunctionDefIsStat a i -> FunctionDefIsStat a j -> Ordering Source #

KDynCase FunctionDefIsStat StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. FunctionDefIsStat e b -> Maybe (b :~: StatL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget FunctionDefIsStat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data BlockIsFunctionBody (e :: Type -> Type) i Source #

Constructors

i ~ FunctionBodyL => BlockIsFunctionBody (e BlockL) 

Instances

Instances details
RemoveSortInjectionNode BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. BlockIsFunctionBody (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource BlockIsFunctionBody) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. BlockIsFunctionBody e l -> String Source #

ShowHF BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => BlockIsFunctionBody g i -> BlockIsFunctionBody g j -> Bool Source #

HFoldable BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => BlockIsFunctionBody (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> BlockIsFunctionBody a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> BlockIsFunctionBody a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> BlockIsFunctionBody a :=> b Source #

hfoldr1 :: (a -> a -> a) -> BlockIsFunctionBody (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> BlockIsFunctionBody (K a) :=> a Source #

HFunctor BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> BlockIsFunctionBody f :-> BlockIsFunctionBody g Source #

HTraversable BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (BlockIsFunctionBody a) (BlockIsFunctionBody b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (BlockIsFunctionBody a) (BlockIsFunctionBody b) Source #

OrdHF BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => BlockIsFunctionBody a i -> BlockIsFunctionBody a j -> Ordering Source #

KDynCase BlockIsFunctionBody FunctionBodyL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. BlockIsFunctionBody e b -> Maybe (b :~: FunctionBodyL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget BlockIsFunctionBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data ExpressionIsExp (e :: Type -> Type) i Source #

Constructors

i ~ ExpL => ExpressionIsExp (e ExpressionL) 

Instances

Instances details
RemoveSortInjectionNode ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. ExpressionIsExp (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource ExpressionIsExp) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. ExpressionIsExp e l -> String Source #

ShowHF ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => ExpressionIsExp g i -> ExpressionIsExp g j -> Bool Source #

HFoldable ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => ExpressionIsExp (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> ExpressionIsExp a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> ExpressionIsExp a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> ExpressionIsExp a :=> b Source #

hfoldr1 :: (a -> a -> a) -> ExpressionIsExp (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> ExpressionIsExp (K a) :=> a Source #

HFunctor ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> ExpressionIsExp f :-> ExpressionIsExp g Source #

HTraversable ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (ExpressionIsExp a) (ExpressionIsExp b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (ExpressionIsExp a) (ExpressionIsExp b) Source #

OrdHF ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => ExpressionIsExp a i -> ExpressionIsExp a j -> Ordering Source #

KDynCase ExpressionIsExp ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. ExpressionIsExp e b -> Maybe (b :~: ExpL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget ExpressionIsExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data ExpIsExpression (e :: Type -> Type) i Source #

Constructors

i ~ ExpressionL => ExpIsExpression (e ExpL) 

Instances

Instances details
RemoveSortInjectionNode ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

removeSortInjectionNode :: forall h (fs :: (Type -> Type) -> Type -> Type) (a :: Type -> Type) l. ExpIsExpression (Cxt h fs a) l -> Cxt h fs a (SortInjectionSource ExpIsExpression) Source #

CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

constrNameHF :: forall (e :: Family) l. ExpIsExpression e l -> String Source #

ShowHF ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

EqHF ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => ExpIsExpression g i -> ExpIsExpression g j -> Bool Source #

HFoldable ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfold :: Monoid m => ExpIsExpression (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> ExpIsExpression a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> ExpIsExpression a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> ExpIsExpression a :=> b Source #

hfoldr1 :: (a -> a -> a) -> ExpIsExpression (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> ExpIsExpression (K a) :=> a Source #

HFunctor ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> ExpIsExpression f :-> ExpIsExpression g Source #

HTraversable ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (ExpIsExpression a) (ExpIsExpression b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (ExpIsExpression a) (ExpIsExpression b) Source #

OrdHF ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => ExpIsExpression a i -> ExpIsExpression a j -> Ordering Source #

KDynCase ExpIsExpression ExpressionL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. ExpIsExpression e b -> Maybe (b :~: ExpressionL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionSource ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type SortInjectionTarget ExpIsExpression Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type MLuaCxt h (a :: Type -> Type) = CxtS h MLuaSig a Source #

type MLuaCxtA h (a :: Type -> Type) p = AnnCxtS p h MLuaSig a Source #

iLuaLocalVarInit :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaLocalVarInit :-<: fs, InjF fs LocalVarInitL j) => CxtS h fs a [ExpL] -> CxtS h fs a j Source #

iLuaLhs :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaLhs :-<: fs, InjF fs LhsL j) => CxtS h fs a [VarL] -> CxtS h fs a j Source #

iLuaRhs :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaRhs :-<: fs, InjF fs RhsL j) => CxtS h fs a [ExpL] -> CxtS h fs a j Source #

iLuaBlockEnd :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaBlockEnd :-<: fs, InjF fs BlockEndL j) => CxtS h fs a (Maybe [ExpL]) -> CxtS h fs a j Source #

iAssignIsStat :: forall h (fs :: Signature) (a :: Type -> Type) j. (AssignIsStat :-<: fs, InjF fs StatL j) => CxtS h fs a AssignL -> CxtS h fs a j Source #

iSingleLocalVarDeclIsStat :: forall h (fs :: Signature) (a :: Type -> Type) j. (SingleLocalVarDeclIsStat :-<: fs, InjF fs StatL j) => CxtS h fs a SingleLocalVarDeclL -> CxtS h fs a j Source #

iFunctionCallIsFunCall :: forall h (fs :: Signature) (a :: Type -> Type) j. (FunctionCallIsFunCall :-<: fs, InjF fs FunCallL j) => CxtS h fs a FunctionCallL -> CxtS h fs a j Source #

jLuaLocalVarInit :: forall {f :: Fragment} {h} {a :: Type -> Type}. LuaLocalVarInit :<: f => Cxt h f a [ExpL] -> Cxt h f a LocalVarInitL Source #

jLuaLhs :: forall {f :: Fragment} {h} {a :: Type -> Type}. LuaLhs :<: f => Cxt h f a [VarL] -> Cxt h f a LhsL Source #

jLuaRhs :: forall {f :: Fragment} {h} {a :: Type -> Type}. LuaRhs :<: f => Cxt h f a [ExpL] -> Cxt h f a RhsL Source #

jLuaBlockEnd :: forall {f :: Fragment} {h} {a :: Type -> Type}. LuaBlockEnd :<: f => Cxt h f a (Maybe [ExpL]) -> Cxt h f a BlockEndL Source #

jLuaTableArg :: forall {f :: Fragment} {h} {a :: Type -> Type}. LuaSpecialFunArg :<: f => Cxt h f a TableL -> Cxt h f a FunctionArgumentsL Source #

jLuaStringArg :: forall {f :: Fragment} {h} {a :: Type -> Type}. LuaSpecialFunArg :<: f => String -> Cxt h f a FunctionArgumentsL Source #

jLuaReceiverAndTableArg :: forall {f :: Fragment} {h} {a :: Type -> Type}. LuaSpecialFunArg :<: f => Cxt h f a PrefixExpL -> Cxt h f a TableL -> Cxt h f a FunctionArgumentsL Source #

pattern LuaLocalVarInit' :: forall h f a j. LuaLocalVarInit :<: f => Cxt h f a [ExpL] -> Cxt h f a LocalVarInitL Source #

pattern LuaLhs' :: forall h f a j. LuaLhs :<: f => Cxt h f a [VarL] -> Cxt h f a LhsL Source #

pattern LuaRhs' :: forall h f a j. LuaRhs :<: f => Cxt h f a [ExpL] -> Cxt h f a RhsL Source #

pattern LuaBlockEnd' :: forall h f a j. LuaBlockEnd :<: f => Cxt h f a (Maybe [ExpL]) -> Cxt h f a BlockEndL Source #

pattern LuaTableArg' :: forall h f a j. LuaSpecialFunArg :<: f => Cxt h f a TableL -> Cxt h f a FunctionArgumentsL Source #

pattern LuaStringArg' :: forall h f a j. LuaSpecialFunArg :<: f => String -> Cxt h f a FunctionArgumentsL Source #

pattern LuaReceiverAndTableArg' :: forall h f a j. LuaSpecialFunArg :<: f => Cxt h f a PrefixExpL -> Cxt h f a TableL -> Cxt h f a FunctionArgumentsL Source #

iLuaTableArg :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaSpecialFunArg :-<: fs, InjF fs FunctionArgumentsL j) => CxtS h fs a TableL -> CxtS h fs a j Source #

iLuaStringArg :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaSpecialFunArg :-<: fs, InjF fs FunctionArgumentsL j) => String -> CxtS h fs a j Source #

iLuaReceiverAndTableArg :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaSpecialFunArg :-<: fs, InjF fs FunctionArgumentsL j) => CxtS h fs a PrefixExpL -> CxtS h fs a TableL -> CxtS h fs a j Source #

iLuaReceiverAndStringArg :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaSpecialFunArg :-<: fs, InjF fs FunctionArgumentsL j) => CxtS h fs a PrefixExpL -> String -> CxtS h fs a j Source #

jIdentIsName :: forall {f :: Fragment} {h} {a :: Type -> Type}. IdentIsName :<: f => Cxt h f a IdentL -> Cxt h f a NameL Source #

jAssignIsStat :: forall {f :: Fragment} {h} {a :: Type -> Type}. AssignIsStat :<: f => Cxt h f a AssignL -> Cxt h f a StatL Source #

jBlockIsBlock :: forall {f :: Fragment} {h} {a :: Type -> Type}. BlockIsBlock :<: f => Cxt h f a BlockL -> Cxt h f a BlockL Source #

jStatIsBlockItem :: forall {f :: Fragment} {h} {a :: Type -> Type}. StatIsBlockItem :<: f => Cxt h f a StatL -> Cxt h f a BlockItemL Source #

jPrefixExpIsReceiver :: forall {f :: Fragment} {h} {a :: Type -> Type}. PrefixExpIsReceiver :<: f => Cxt h f a PrefixExpL -> Cxt h f a ReceiverL Source #

pattern IdentIsName' :: forall h f a j. IdentIsName :<: f => Cxt h f a IdentL -> Cxt h f a NameL Source #

pattern AssignIsStat' :: forall h f a j. AssignIsStat :<: f => Cxt h f a AssignL -> Cxt h f a StatL Source #

pattern BlockIsBlock' :: forall h f a j. BlockIsBlock :<: f => Cxt h f a BlockL -> Cxt h f a BlockL Source #

pattern StatIsBlockItem' :: forall h f a j. StatIsBlockItem :<: f => Cxt h f a StatL -> Cxt h f a BlockItemL Source #

pattern FunctionCallIsFunCall' :: forall h f a j. FunctionCallIsFunCall :<: f => Cxt h f a FunctionCallL -> Cxt h f a FunCallL Source #

pattern ExpIsPositionalArgExp' :: forall h f a j. ExpIsPositionalArgExp :<: f => Cxt h f a ExpL -> Cxt h f a PositionalArgExpL Source #

pattern PrefixExpIsReceiver' :: forall h f a j. PrefixExpIsReceiver :<: f => Cxt h f a PrefixExpL -> Cxt h f a ReceiverL Source #

iIdentIsName :: forall h (fs :: Signature) (a :: Type -> Type) j. (IdentIsName :-<: fs, InjF fs NameL j) => CxtS h fs a IdentL -> CxtS h fs a j Source #

iBlockIsBlock :: forall h (fs :: Signature) (a :: Type -> Type) j. (BlockIsBlock :-<: fs, InjF fs BlockL j) => CxtS h fs a BlockL -> CxtS h fs a j Source #

iStatIsBlockItem :: forall h (fs :: Signature) (a :: Type -> Type) j. (StatIsBlockItem :-<: fs, InjF fs BlockItemL j) => CxtS h fs a StatL -> CxtS h fs a j Source #

iExpIsPositionalArgExp :: forall h (fs :: Signature) (a :: Type -> Type) j. (ExpIsPositionalArgExp :-<: fs, InjF fs PositionalArgExpL j) => CxtS h fs a ExpL -> CxtS h fs a j Source #

iPrefixExpIsFunctionExp :: forall h (fs :: Signature) (a :: Type -> Type) j. (PrefixExpIsFunctionExp :-<: fs, InjF fs FunctionExpL j) => CxtS h fs a PrefixExpL -> CxtS h fs a j Source #

iPrefixExpIsReceiver :: forall h (fs :: Signature) (a :: Type -> Type) j. (PrefixExpIsReceiver :-<: fs, InjF fs ReceiverL j) => CxtS h fs a PrefixExpL -> CxtS h fs a j Source #

iLuaFunctionDefinedObj :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaFunctionDefinedObj :-<: fs, InjF fs LuaFunctionDefinedObjL j) => CxtS h fs a [IdentL] -> CxtS h fs a j Source #

iLuaFunctionAttrs :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaFunctionAttrs :-<: fs, InjF fs FunctionDefAttrsL j) => CxtS h fs a LuaFunctionDefinedObjL -> CxtS h fs a j Source #

pattern LuaVarArgsParam' :: forall h f a j. LuaVarArgsParam :<: f => Cxt h f a FunctionParameterL Source #

iLuaVarArgsParam :: forall h (fs :: Signature) (a :: Type -> Type) j. (LuaVarArgsParam :-<: fs, InjF fs FunctionParameterL j) => CxtS h fs a j Source #

jFunctionDefIsStat :: forall {f :: Fragment} {h} {a :: Type -> Type}. FunctionDefIsStat :<: f => Cxt h f a FunctionDefL -> Cxt h f a StatL Source #

jBlockIsFunctionBody :: forall {f :: Fragment} {h} {a :: Type -> Type}. BlockIsFunctionBody :<: f => Cxt h f a BlockL -> Cxt h f a FunctionBodyL Source #

pattern FunctionDefIsStat' :: forall h f a j. FunctionDefIsStat :<: f => Cxt h f a FunctionDefL -> Cxt h f a StatL Source #

pattern BlockIsFunctionBody' :: forall h f a j. BlockIsFunctionBody :<: f => Cxt h f a BlockL -> Cxt h f a FunctionBodyL Source #

iFunctionDefIsStat :: forall h (fs :: Signature) (a :: Type -> Type) j. (FunctionDefIsStat :-<: fs, InjF fs StatL j) => CxtS h fs a FunctionDefL -> CxtS h fs a j Source #

iBlockIsFunctionBody :: forall h (fs :: Signature) (a :: Type -> Type) j. (BlockIsFunctionBody :-<: fs, InjF fs FunctionBodyL j) => CxtS h fs a BlockL -> CxtS h fs a j Source #

jExpressionIsExp :: forall {f :: Fragment} {h} {a :: Type -> Type}. ExpressionIsExp :<: f => Cxt h f a ExpressionL -> Cxt h f a ExpL Source #

jExpIsExpression :: forall {f :: Fragment} {h} {a :: Type -> Type}. ExpIsExpression :<: f => Cxt h f a ExpL -> Cxt h f a ExpressionL Source #

pattern ExpressionIsExp' :: forall h f a j. ExpressionIsExp :<: f => Cxt h f a ExpressionL -> Cxt h f a ExpL Source #

pattern ExpIsExpression' :: forall h f a j. ExpIsExpression :<: f => Cxt h f a ExpL -> Cxt h f a ExpressionL Source #

iExpressionIsExp :: forall h (fs :: Signature) (a :: Type -> Type) j. (ExpressionIsExp :-<: fs, InjF fs ExpL j) => CxtS h fs a ExpressionL -> CxtS h fs a j Source #

iExpIsExpression :: forall h (fs :: Signature) (a :: Type -> Type) j. (ExpIsExpression :-<: fs, InjF fs ExpressionL j) => CxtS h fs a ExpL -> CxtS h fs a j Source #

data Exp (e :: Type -> Type) i Source #

Constructors

i ~ ExpL => Nil 
i ~ ExpL => Bool Bool 
i ~ ExpL => Number (e NumberTypeL) Text 
i ~ ExpL => String Text 
i ~ ExpL => Vararg 
i ~ ExpL => EFunDef (e FunDefL) 
i ~ ExpL => PrefixExp (e PrefixExpL) 
i ~ ExpL => TableConst (e TableL) 
i ~ ExpL => Binop (e BinopL) (e ExpL) (e ExpL) 
i ~ ExpL => Unop (e UnopL) (e ExpL) 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF Exp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. Exp e l -> String Source #

ShowHF Exp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF Exp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => Exp g i -> Exp g j -> Bool Source #

HFoldable Exp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => Exp (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> Exp a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> Exp a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> Exp a :=> b Source #

hfoldr1 :: (a -> a -> a) -> Exp (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> Exp (K a) :=> a Source #

HFunctor Exp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> Exp f :-> Exp g Source #

HTraversable Exp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (Exp a) (Exp b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (Exp a) (Exp b) Source #

OrdHF Exp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => Exp a i -> Exp a j -> Ordering Source #

KDynCase Exp ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Exp e b -> Maybe (b :~: ExpL) Source #

Binop :-<: gs => GetStrictness' gs Exp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

Methods

getStrictness' :: Exp (Term gs) l -> [Strictness] Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection Exp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data Binop (e :: Type -> Type) i Source #

Constructors

i ~ BinopL => Exp 
i ~ BinopL => Concat 
i ~ BinopL => LT 
i ~ BinopL => LTE 
i ~ BinopL => GT 
i ~ BinopL => GTE 
i ~ BinopL => EQ 
i ~ BinopL => NEQ 
i ~ BinopL => And 
i ~ BinopL => Or 
i ~ BinopL => ShiftL 
i ~ BinopL => ShiftR 
i ~ BinopL => BAnd 
i ~ BinopL => BOr 
i ~ BinopL => BXor 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF Binop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. Binop e l -> String Source #

ShowHF Binop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF Binop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => Binop g i -> Binop g j -> Bool Source #

HFoldable Binop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => Binop (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> Binop a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> Binop a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> Binop a :=> b Source #

hfoldr1 :: (a -> a -> a) -> Binop (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> Binop (K a) :=> a Source #

HFunctor Binop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> Binop f :-> Binop g Source #

HTraversable Binop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (Binop a) (Binop b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (Binop a) (Binop b) Source #

OrdHF Binop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => Binop a i -> Binop a j -> Ordering Source #

KDynCase Binop BinopL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Binop e b -> Maybe (b :~: BinopL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection Binop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data Stat (e :: Type -> Type) i Source #

Constructors

i ~ StatL => FunCall (e FunCallL) 
i ~ StatL => Label (e NameL) 
i ~ StatL => Break 
i ~ StatL => Goto (e NameL) 
i ~ StatL => Do (e BlockL) 
i ~ StatL => While (e ExpL) (e BlockL) 
i ~ StatL => Repeat (e BlockL) (e ExpL) 
i ~ StatL => If (e [(ExpL, BlockL)]) (e (Maybe BlockL)) 
i ~ StatL => ForRange (e NameL) (e ExpL) (e ExpL) (e (Maybe ExpL)) (e BlockL) 
i ~ StatL => ForIn (e [NameL]) (e [ExpL]) (e BlockL) 
i ~ StatL => FunAssign (e FunNameL) (e FunBodyL) 
i ~ StatL => LocalFunAssign (e NameL) (e FunBodyL) 
i ~ StatL => LocalAssign (e [NameL]) (e (Maybe [ExpL])) 
i ~ StatL => EmptyStat 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF Stat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. Stat e l -> String Source #

ShowHF Stat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF Stat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => Stat g i -> Stat g j -> Bool Source #

HFoldable Stat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => Stat (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> Stat a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> Stat a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> Stat a :=> b Source #

hfoldr1 :: (a -> a -> a) -> Stat (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> Stat (K a) :=> a Source #

HFunctor Stat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> Stat f :-> Stat g Source #

HTraversable Stat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (Stat a) (Stat b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (Stat a) (Stat b) Source #

OrdHF Stat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => Stat a i -> Stat a j -> Ordering Source #

KDynCase Stat StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Stat e b -> Maybe (b :~: StatL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection Stat Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data Table (e :: Type -> Type) i Source #

Constructors

i ~ TableL => Table (e [TableFieldL]) 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF Table Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. Table e l -> String Source #

ShowHF Table Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF Table Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => Table g i -> Table g j -> Bool Source #

HFoldable Table Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => Table (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> Table a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> Table a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> Table a :=> b Source #

hfoldr1 :: (a -> a -> a) -> Table (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> Table (K a) :=> a Source #

HFunctor Table Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> Table f :-> Table g Source #

HTraversable Table Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (Table a) (Table b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (Table a) (Table b) Source #

OrdHF Table Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => Table a i -> Table a j -> Ordering Source #

KDynCase Table TableL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Table e b -> Maybe (b :~: TableL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection Table Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data Var (e :: Type -> Type) i Source #

Constructors

i ~ VarL => VarName (e NameL) 
i ~ VarL => Select (e PrefixExpL) (e ExpL) 
i ~ VarL => SelectName (e PrefixExpL) (e NameL) 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF Var Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. Var e l -> String Source #

ShowHF Var Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF Var Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => Var g i -> Var g j -> Bool Source #

HFoldable Var Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => Var (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> Var a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> Var a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> Var a :=> b Source #

hfoldr1 :: (a -> a -> a) -> Var (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> Var (K a) :=> a Source #

HFunctor Var Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> Var f :-> Var g Source #

HTraversable Var Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (Var a) (Var b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (Var a) (Var b) Source #

OrdHF Var Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => Var a i -> Var a j -> Ordering Source #

KDynCase Var VarL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Var e b -> Maybe (b :~: VarL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection Var Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data ExpL Source #

Instances

Instances details
KDynCase ExpressionIsExp ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. ExpressionIsExp e b -> Maybe (b :~: ExpL) Source #

KDynCase Exp ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Exp e b -> Maybe (b :~: ExpL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

(ExpIsExpression :-<: fs, All HFunctor fs) => InjF fs ExpL ExpressionL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h fs a ExpL -> CxtS h fs a ExpressionL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum fs :&: p) a ExpressionL -> Maybe (Cxt h (Sum fs :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h fs a ExpressionL -> Maybe (CxtS h fs a ExpL) Source #

(ExpIsPositionalArgExp :-<: fs, All HFunctor fs) => InjF fs ExpL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h fs a ExpL -> CxtS h fs a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum fs :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum fs :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h fs a PositionalArgExpL -> Maybe (CxtS h fs a ExpL) Source #

(ExpressionIsExp :-<: fs, All HFunctor fs) => InjF fs ExpressionL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h fs a ExpressionL -> CxtS h fs a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum fs :&: p) a ExpL -> Maybe (Cxt h (Sum fs :&: p) a ExpressionL) Source #

projF :: forall h (a :: Type -> Type). CxtS h fs a ExpL -> Maybe (CxtS h fs a ExpressionL) Source #

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

type Targ ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ ExpL = Exp (Maybe SourceSpan)

data FunBodyL Source #

Instances

Instances details
KDynCase FunBody FunBodyL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. FunBody e b -> Maybe (b :~: FunBodyL) Source #

type Targ FunBodyL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ FunBodyL = FunBody (Maybe SourceSpan)

type family Targ i Source #

Instances

Instances details
type Targ BinopL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ BinopL = Binop (Maybe SourceSpan)
type Targ ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ ExpL = Exp (Maybe SourceSpan)
type Targ FunArgL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ FunArgL = FunArg (Maybe SourceSpan)
type Targ FunBodyL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ FunBodyL = FunBody (Maybe SourceSpan)
type Targ FunCallL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ FunCallL = FunCall (Maybe SourceSpan)
type Targ FunDefL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ FunDefL = FunDef (Maybe SourceSpan)
type Targ FunNameL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ FunNameL = FunName (Maybe SourceSpan)
type Targ NumberTypeL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ NumberTypeL = NumberType
type Targ PrefixExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ PrefixExpL = PrefixExp (Maybe SourceSpan)
type Targ StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ StatL = Stat (Maybe SourceSpan)
type Targ TableFieldL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ TableFieldL = TableField (Maybe SourceSpan)
type Targ TableL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ TableL = Table (Maybe SourceSpan)
type Targ UnopL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ UnopL = Unop (Maybe SourceSpan)
type Targ VarL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ VarL = Var (Maybe SourceSpan)
type Targ () Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ () = ()
type Targ (Maybe l) Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ (Maybe l) = Maybe (Targ l)
type Targ [l] Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ [l] = [Targ l]
type Targ (l, l') Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ (l, l') = (Targ l, Targ l')

data FunCall (e :: Type -> Type) i Source #

Constructors

i ~ FunCallL => NormalFunCall (e PrefixExpL) (e FunArgL) 
i ~ FunCallL => MethodCall (e PrefixExpL) (e NameL) (e FunArgL) 

Instances

Instances details
ConstrNameHF FunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. FunCall e l -> String Source #

ShowHF FunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF FunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => FunCall g i -> FunCall g j -> Bool Source #

HFoldable FunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => FunCall (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> FunCall a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> FunCall a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> FunCall a :=> b Source #

hfoldr1 :: (a -> a -> a) -> FunCall (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> FunCall (K a) :=> a Source #

HFunctor FunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> FunCall f :-> FunCall g Source #

HTraversable FunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (FunCall a) (FunCall b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (FunCall a) (FunCall b) Source #

OrdHF FunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => FunCall a i -> FunCall a j -> Ordering Source #

KDynCase FunCall FunCallL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. FunCall e b -> Maybe (b :~: FunCallL) Source #

type IsSortInjection FunCall Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

data FunBody (e :: Type -> Type) l where Source #

TAG_LUA_FUNBODY_EXCEPTION This replaces FunBody in the original AST

Constructors

FunBody :: forall (e :: Type -> Type). e [NameL] -> Bool -> e BlockL -> FunBody e FunBodyL 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF FunBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. FunBody e l -> String Source #

ShowHF FunBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF FunBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => FunBody g i -> FunBody g j -> Bool Source #

HFoldable FunBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => FunBody (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> FunBody a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> FunBody a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> FunBody a :=> b Source #

hfoldr1 :: (a -> a -> a) -> FunBody (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> FunBody (K a) :=> a Source #

HFunctor FunBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> FunBody f :-> FunBody g Source #

HTraversable FunBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (FunBody a) (FunBody b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (FunBody a) (FunBody b) Source #

OrdHF FunBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => FunBody a i -> FunBody a j -> Ordering Source #

KDynCase FunBody FunBodyL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. FunBody e b -> Maybe (b :~: FunBodyL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection FunBody Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data NumberType (e :: Type -> Type) i Source #

Constructors

i ~ NumberTypeL => IntNum 
i ~ NumberTypeL => FloatNum 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF NumberType Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. NumberType e l -> String Source #

ShowHF NumberType Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF NumberType Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => NumberType g i -> NumberType g j -> Bool Source #

HFoldable NumberType Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => NumberType (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> NumberType a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> NumberType a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> NumberType a :=> b Source #

hfoldr1 :: (a -> a -> a) -> NumberType (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> NumberType (K a) :=> a Source #

HFunctor NumberType Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> NumberType f :-> NumberType g Source #

HTraversable NumberType Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (NumberType a) (NumberType b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (NumberType a) (NumberType b) Source #

OrdHF NumberType Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => NumberType a i -> NumberType a j -> Ordering Source #

KDynCase NumberType NumberTypeL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. NumberType e b -> Maybe (b :~: NumberTypeL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection NumberType Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data PrefixExp (e :: Type -> Type) i Source #

Constructors

i ~ PrefixExpL => PEVar (e VarL) 
i ~ PrefixExpL => PEFunCall (e FunCallL) 
i ~ PrefixExpL => Paren (e ExpL) 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF PrefixExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. PrefixExp e l -> String Source #

ShowHF PrefixExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF PrefixExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => PrefixExp g i -> PrefixExp g j -> Bool Source #

HFoldable PrefixExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => PrefixExp (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> PrefixExp a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> PrefixExp a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> PrefixExp a :=> b Source #

hfoldr1 :: (a -> a -> a) -> PrefixExp (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> PrefixExp (K a) :=> a Source #

HFunctor PrefixExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> PrefixExp f :-> PrefixExp g Source #

HTraversable PrefixExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (PrefixExp a) (PrefixExp b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (PrefixExp a) (PrefixExp b) Source #

OrdHF PrefixExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => PrefixExp a i -> PrefixExp a j -> Ordering Source #

KDynCase PrefixExp PrefixExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. PrefixExp e b -> Maybe (b :~: PrefixExpL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection PrefixExp Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data Unop (e :: Type -> Type) i Source #

Constructors

i ~ UnopL => Neg 
i ~ UnopL => Len 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF Unop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. Unop e l -> String Source #

ShowHF Unop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF Unop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => Unop g i -> Unop g j -> Bool Source #

HFoldable Unop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => Unop (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> Unop a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> Unop a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> Unop a :=> b Source #

hfoldr1 :: (a -> a -> a) -> Unop (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> Unop (K a) :=> a Source #

HFunctor Unop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> Unop f :-> Unop g Source #

HTraversable Unop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (Unop a) (Unop b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (Unop a) (Unop b) Source #

OrdHF Unop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => Unop a i -> Unop a j -> Ordering Source #

KDynCase Unop UnopL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Unop e b -> Maybe (b :~: UnopL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection Unop Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data FunArg (e :: Type -> Type) i Source #

Constructors

i ~ FunArgL => Args (e [ExpL]) 
i ~ FunArgL => TableArg (e TableL) 
i ~ FunArgL => StringArg Text 

Instances

Instances details
ConstrNameHF FunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. FunArg e l -> String Source #

ShowHF FunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF FunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => FunArg g i -> FunArg g j -> Bool Source #

HFoldable FunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => FunArg (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> FunArg a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> FunArg a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> FunArg a :=> b Source #

hfoldr1 :: (a -> a -> a) -> FunArg (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> FunArg (K a) :=> a Source #

HFunctor FunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> FunArg f :-> FunArg g Source #

HTraversable FunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (FunArg a) (FunArg b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (FunArg a) (FunArg b) Source #

OrdHF FunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => FunArg a i -> FunArg a j -> Ordering Source #

KDynCase FunArg FunArgL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. FunArg e b -> Maybe (b :~: FunArgL) Source #

type IsSortInjection FunArg Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

data FunDef (e :: Type -> Type) i Source #

Constructors

i ~ FunDefL => FunDef (e FunBodyL) 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF FunDef Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. FunDef e l -> String Source #

ShowHF FunDef Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF FunDef Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => FunDef g i -> FunDef g j -> Bool Source #

HFoldable FunDef Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => FunDef (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> FunDef a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> FunDef a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> FunDef a :=> b Source #

hfoldr1 :: (a -> a -> a) -> FunDef (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> FunDef (K a) :=> a Source #

HFunctor FunDef Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> FunDef f :-> FunDef g Source #

HTraversable FunDef Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (FunDef a) (FunDef b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (FunDef a) (FunDef b) Source #

OrdHF FunDef Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => FunDef a i -> FunDef a j -> Ordering Source #

KDynCase FunDef FunDefL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. FunDef e b -> Maybe (b :~: FunDefL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection FunDef Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data FunName (e :: Type -> Type) i Source #

Constructors

i ~ FunNameL => FunName (e NameL) (e [NameL]) (e (Maybe NameL)) 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF FunName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. FunName e l -> String Source #

ShowHF FunName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF FunName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => FunName g i -> FunName g j -> Bool Source #

HFoldable FunName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => FunName (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> FunName a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> FunName a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> FunName a :=> b Source #

hfoldr1 :: (a -> a -> a) -> FunName (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> FunName (K a) :=> a Source #

HFunctor FunName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> FunName f :-> FunName g Source #

HTraversable FunName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (FunName a) (FunName b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (FunName a) (FunName b) Source #

OrdHF FunName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => FunName a i -> FunName a j -> Ordering Source #

KDynCase FunName FunNameL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. FunName e b -> Maybe (b :~: FunNameL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection FunName Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

data TableField (e :: Type -> Type) i Source #

Constructors

i ~ TableFieldL => ExpField (e ExpL) (e ExpL) 
i ~ TableFieldL => NamedField (e NameL) (e ExpL) 
i ~ TableFieldL => Field (e ExpL) 

Instances

Instances details
CfgInitState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

ConstrNameHF TableField Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

constrNameHF :: forall (e :: Family) l. TableField e l -> String Source #

ShowHF TableField Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

EqHF TableField Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

eqHF :: forall (g :: Type -> Type) i j. KEq g => TableField g i -> TableField g j -> Bool Source #

HFoldable TableField Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfold :: Monoid m => TableField (K m) :=> m Source #

hfoldMap :: forall m (a :: Type -> Type). Monoid m => (a :=> m) -> TableField a :=> m Source #

hfoldr :: forall (a :: Type -> Type) b. (a :=> (b -> b)) -> b -> TableField a :=> b Source #

hfoldl :: forall b (a :: Type -> Type). (b -> a :=> b) -> b -> TableField a :=> b Source #

hfoldr1 :: (a -> a -> a) -> TableField (K a) :=> a Source #

hfoldl1 :: (a -> a -> a) -> TableField (K a) :=> a Source #

HFunctor TableField Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> TableField f :-> TableField g Source #

HTraversable TableField Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

hmapM :: forall (m :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Monad m => NatM m a b -> NatM m (TableField a) (TableField b) Source #

htraverse :: forall (f :: Type -> Type) (a :: Type -> Type) (b :: Type -> Type). Applicative f => NatM f a b -> NatM f (TableField a) (TableField b) Source #

OrdHF TableField Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

compareHF :: forall (a :: Type -> Type) i j. KOrd a => TableField a i -> TableField a j -> Ordering Source #

KDynCase TableField TableFieldL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. TableField e b -> Maybe (b :~: TableFieldL) Source #

InjF MLuaSig ExpL LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig ExpL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a ExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a ExpL) Source #

InjF MLuaSig FunctionCallL RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionCallL -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a FunctionCallL) Source #

InjF MLuaSig AssignL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a AssignL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a AssignL) Source #

InjF MLuaSig IdentL ExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a ExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a ExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a ExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a FunctionExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a FunctionExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL PositionalArgExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a PositionalArgExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a PositionalArgExpL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a PositionalArgExpL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig IdentL VarDeclBinderL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a IdentL -> CxtS h MLuaSig a VarDeclBinderL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a VarDeclBinderL -> Maybe (Cxt h (Sum MLuaSig :&: p) a IdentL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a VarDeclBinderL -> Maybe (CxtS h MLuaSig a IdentL) Source #

InjF MLuaSig SingleLocalVarDeclL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a SingleLocalVarDeclL -> CxtS h MLuaSig a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockItemL -> Maybe (Cxt h (Sum MLuaSig :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockItemL -> Maybe (CxtS h MLuaSig a SingleLocalVarDeclL) Source #

InsertAt' MLuaSig BlockItemL ListF Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Semantics

InjF MLuaSig (Maybe [ExpL]) BlockEndL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a (Maybe [ExpL]) -> CxtS h MLuaSig a BlockEndL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a BlockEndL -> Maybe (Cxt h (Sum MLuaSig :&: p) a (Maybe [ExpL])) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a BlockEndL -> Maybe (CxtS h MLuaSig a (Maybe [ExpL])) Source #

InjF MLuaSig [ExpL] LocalVarInitL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a LocalVarInitL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LocalVarInitL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LocalVarInitL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [ExpL] RhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [ExpL] -> CxtS h MLuaSig a RhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a RhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [ExpL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a RhsL -> Maybe (CxtS h MLuaSig a [ExpL]) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type IsSortInjection TableField Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

type CfgState MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type ContainerFunctors MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type SuspendedComputationSorts MLuaSig Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Cfg

type RootSort MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

type InjectableSorts MLuaSig AssignL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

type InjectableSorts MLuaSig SingleLocalVarDeclL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

jBool :: forall {f :: Fragment} {h} {a :: Type -> Type}. Exp :<: f => Bool -> Cxt h f a ExpL Source #

jParen :: forall {f :: Fragment} {h} {a :: Type -> Type}. PrefixExp :<: f => Cxt h f a ExpL -> Cxt h f a PrefixExpL Source #

jAnd :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jOr :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jWhile :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a ExpL -> Cxt h f a BlockL -> Cxt h f a StatL Source #

jBreak :: forall h (f :: Fragment) (a :: Type -> Type). Stat :<: f => Cxt h f a StatL Source #

pattern Bool' :: forall h f a j. Exp :<: f => Bool -> Cxt h f a ExpL Source #

pattern Paren' :: forall h f a j. PrefixExp :<: f => Cxt h f a ExpL -> Cxt h f a PrefixExpL Source #

pattern And' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern Or' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern While' :: forall h f a j. Stat :<: f => Cxt h f a ExpL -> Cxt h f a BlockL -> Cxt h f a StatL Source #

pattern Break' :: forall h f a j. Stat :<: f => Cxt h f a StatL Source #

iBool :: forall h (fs :: Signature) (a :: Type -> Type) j. (Exp :-<: fs, InjF fs ExpL j) => Bool -> CxtS h fs a j Source #

iParen :: forall h (fs :: Signature) (a :: Type -> Type) j. (PrefixExp :-<: fs, InjF fs PrefixExpL j) => CxtS h fs a ExpL -> CxtS h fs a j Source #

iAnd :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iOr :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iWhile :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a ExpL -> CxtS h fs a BlockL -> CxtS h fs a j Source #

iBreak :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a j Source #

data BinopL Source #

Instances

Instances details
KDynCase Binop BinopL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Binop e b -> Maybe (b :~: BinopL) Source #

type Targ BinopL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ BinopL = Binop (Maybe SourceSpan)

data StatL Source #

Instances

Instances details
KDynCase AssignIsStat StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. AssignIsStat e b -> Maybe (b :~: StatL) Source #

KDynCase FunctionDefIsStat StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. FunctionDefIsStat e b -> Maybe (b :~: StatL) Source #

KDynCase SingleLocalVarDeclIsStat StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. SingleLocalVarDeclIsStat e b -> Maybe (b :~: StatL) Source #

KDynCase Stat StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Stat e b -> Maybe (b :~: StatL) Source #

(StatIsBlockItem :-<: fs, All HFunctor fs) => InjF fs StatL BlockItemL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h fs a StatL -> CxtS h fs a BlockItemL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum fs :&: p) a BlockItemL -> Maybe (Cxt h (Sum fs :&: p) a StatL) Source #

projF :: forall h (a :: Type -> Type). CxtS h fs a BlockItemL -> Maybe (CxtS h fs a StatL) Source #

(FunctionDefIsStat :-<: fs, All HFunctor fs) => InjF fs FunctionDefL StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h fs a FunctionDefL -> CxtS h fs a StatL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum fs :&: p) a StatL -> Maybe (Cxt h (Sum fs :&: p) a FunctionDefL) Source #

projF :: forall h (a :: Type -> Type). CxtS h fs a StatL -> Maybe (CxtS h fs a FunctionDefL) Source #

(AssignIsStat :-<: fs, All HFunctor fs) => InjF fs AssignL StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h fs a AssignL -> CxtS h fs a StatL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum fs :&: p) a StatL -> Maybe (Cxt h (Sum fs :&: p) a AssignL) Source #

projF :: forall h (a :: Type -> Type). CxtS h fs a StatL -> Maybe (CxtS h fs a AssignL) Source #

(SingleLocalVarDeclIsStat :-<: fs, All HFunctor fs) => InjF fs SingleLocalVarDeclL StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h fs a SingleLocalVarDeclL -> CxtS h fs a StatL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum fs :&: p) a StatL -> Maybe (Cxt h (Sum fs :&: p) a SingleLocalVarDeclL) Source #

projF :: forall h (a :: Type -> Type). CxtS h fs a StatL -> Maybe (CxtS h fs a SingleLocalVarDeclL) Source #

type Targ StatL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ StatL = Stat (Maybe SourceSpan)

data NumberTypeL Source #

Instances

Instances details
KDynCase NumberType NumberTypeL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. NumberType e b -> Maybe (b :~: NumberTypeL) Source #

type Targ NumberTypeL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ NumberTypeL = NumberType

data FunDefL Source #

Instances

Instances details
KDynCase FunDef FunDefL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. FunDef e b -> Maybe (b :~: FunDefL) Source #

type Targ FunDefL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ FunDefL = FunDef (Maybe SourceSpan)

data PrefixExpL Source #

Instances

Instances details
KDynCase PrefixExp PrefixExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. PrefixExp e b -> Maybe (b :~: PrefixExpL) Source #

(PrefixExpIsFunctionExp :-<: fs, All HFunctor fs) => InjF fs PrefixExpL FunctionExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h fs a PrefixExpL -> CxtS h fs a FunctionExpL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum fs :&: p) a FunctionExpL -> Maybe (Cxt h (Sum fs :&: p) a PrefixExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h fs a FunctionExpL -> Maybe (CxtS h fs a PrefixExpL) Source #

(PrefixExpIsReceiver :-<: fs, All HFunctor fs) => InjF fs PrefixExpL ReceiverL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h fs a PrefixExpL -> CxtS h fs a ReceiverL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum fs :&: p) a ReceiverL -> Maybe (Cxt h (Sum fs :&: p) a PrefixExpL) Source #

projF :: forall h (a :: Type -> Type). CxtS h fs a ReceiverL -> Maybe (CxtS h fs a PrefixExpL) Source #

type Targ PrefixExpL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ PrefixExpL = PrefixExp (Maybe SourceSpan)

data TableL Source #

Instances

Instances details
KDynCase Table TableL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Table e b -> Maybe (b :~: TableL) Source #

type Targ TableL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ TableL = Table (Maybe SourceSpan)

data UnopL Source #

Instances

Instances details
KDynCase Unop UnopL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Unop e b -> Maybe (b :~: UnopL) Source #

type Targ UnopL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ UnopL = Unop (Maybe SourceSpan)

data FunArgL Source #

Instances

Instances details
KDynCase FunArg FunArgL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. FunArg e b -> Maybe (b :~: FunArgL) Source #

type Targ FunArgL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ FunArgL = FunArg (Maybe SourceSpan)

data FunCallL Source #

Instances

Instances details
KDynCase FunctionCallIsFunCall FunCallL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

kdyncase :: forall (e :: Family) b. FunctionCallIsFunCall e b -> Maybe (b :~: FunCallL) Source #

KDynCase FunCall FunCallL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. FunCall e b -> Maybe (b :~: FunCallL) Source #

(FunctionCallIsFunCall :-<: fs, All HFunctor fs) => InjF fs FunctionCallL FunCallL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h fs a FunctionCallL -> CxtS h fs a FunCallL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum fs :&: p) a FunCallL -> Maybe (Cxt h (Sum fs :&: p) a FunctionCallL) Source #

projF :: forall h (a :: Type -> Type). CxtS h fs a FunCallL -> Maybe (CxtS h fs a FunctionCallL) Source #

type Targ FunCallL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ FunCallL = FunCall (Maybe SourceSpan)

data FunNameL Source #

Instances

Instances details
KDynCase FunName FunNameL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. FunName e b -> Maybe (b :~: FunNameL) Source #

type Targ FunNameL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ FunNameL = FunName (Maybe SourceSpan)

data VarL Source #

Instances

Instances details
KDynCase Var VarL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. Var e b -> Maybe (b :~: VarL) Source #

InjF MLuaSig [VarL] LhsL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Common.Types

Methods

injF :: forall h (a :: Type -> Type). CxtS h MLuaSig a [VarL] -> CxtS h MLuaSig a LhsL Source #

projF' :: forall h p (a :: Type -> Type). Cxt h (Sum MLuaSig :&: p) a LhsL -> Maybe (Cxt h (Sum MLuaSig :&: p) a [VarL]) Source #

projF :: forall h (a :: Type -> Type). CxtS h MLuaSig a LhsL -> Maybe (CxtS h MLuaSig a [VarL]) Source #

type Targ VarL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ VarL = Var (Maybe SourceSpan)

data TableFieldL Source #

Instances

Instances details
KDynCase TableField TableFieldL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Types

Methods

kdyncase :: forall (e :: Family) b. TableField e b -> Maybe (b :~: TableFieldL) Source #

type Targ TableFieldL Source # 
Instance details

Defined in Cubix.Language.Lua.Parametric.Full.Trans

type Targ TableFieldL = TableField (Maybe SourceSpan)

jExp :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jConcat :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jLT :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jLTE :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jGT :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jGTE :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jEQ :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jNEQ :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jShiftL :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jShiftR :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jBAnd :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jBOr :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jBXor :: forall h (f :: Fragment) (a :: Type -> Type). Binop :<: f => Cxt h f a BinopL Source #

jNil :: forall h (f :: Fragment) (a :: Type -> Type). Exp :<: f => Cxt h f a ExpL Source #

jNumber :: forall {f :: Fragment} {h} {a :: Type -> Type}. Exp :<: f => Cxt h f a NumberTypeL -> Text -> Cxt h f a ExpL Source #

jString :: forall {f :: Fragment} {h} {a :: Type -> Type}. Exp :<: f => Text -> Cxt h f a ExpL Source #

jVararg :: forall h (f :: Fragment) (a :: Type -> Type). Exp :<: f => Cxt h f a ExpL Source #

jEFunDef :: forall {f :: Fragment} {h} {a :: Type -> Type}. Exp :<: f => Cxt h f a FunDefL -> Cxt h f a ExpL Source #

jPrefixExp :: forall {f :: Fragment} {h} {a :: Type -> Type}. Exp :<: f => Cxt h f a PrefixExpL -> Cxt h f a ExpL Source #

jTableConst :: forall {f :: Fragment} {h} {a :: Type -> Type}. Exp :<: f => Cxt h f a TableL -> Cxt h f a ExpL Source #

jBinop :: forall {f :: Fragment} {h} {a :: Type -> Type}. Exp :<: f => Cxt h f a BinopL -> Cxt h f a ExpL -> Cxt h f a ExpL -> Cxt h f a ExpL Source #

jUnop :: forall {f :: Fragment} {h} {a :: Type -> Type}. Exp :<: f => Cxt h f a UnopL -> Cxt h f a ExpL -> Cxt h f a ExpL Source #

jArgs :: forall {f :: Fragment} {h} {a :: Type -> Type}. FunArg :<: f => Cxt h f a [ExpL] -> Cxt h f a FunArgL Source #

jTableArg :: forall {f :: Fragment} {h} {a :: Type -> Type}. FunArg :<: f => Cxt h f a TableL -> Cxt h f a FunArgL Source #

jStringArg :: forall {f :: Fragment} {h} {a :: Type -> Type}. FunArg :<: f => Text -> Cxt h f a FunArgL Source #

jNormalFunCall :: forall {f :: Fragment} {h} {a :: Type -> Type}. FunCall :<: f => Cxt h f a PrefixExpL -> Cxt h f a FunArgL -> Cxt h f a FunCallL Source #

jMethodCall :: forall {f :: Fragment} {h} {a :: Type -> Type}. FunCall :<: f => Cxt h f a PrefixExpL -> Cxt h f a NameL -> Cxt h f a FunArgL -> Cxt h f a FunCallL Source #

jFunDef :: forall {f :: Fragment} {h} {a :: Type -> Type}. FunDef :<: f => Cxt h f a FunBodyL -> Cxt h f a FunDefL Source #

jFunName :: forall {f :: Fragment} {h} {a :: Type -> Type}. FunName :<: f => Cxt h f a NameL -> Cxt h f a [NameL] -> Cxt h f a (Maybe NameL) -> Cxt h f a FunNameL Source #

jName :: forall {f :: Fragment} {h} {a :: Type -> Type}. Name :<: f => Text -> Cxt h f a NameL Source #

jPEVar :: forall {f :: Fragment} {h} {a :: Type -> Type}. PrefixExp :<: f => Cxt h f a VarL -> Cxt h f a PrefixExpL Source #

jPEFunCall :: forall {f :: Fragment} {h} {a :: Type -> Type}. PrefixExp :<: f => Cxt h f a FunCallL -> Cxt h f a PrefixExpL Source #

jFunCall :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a FunCallL -> Cxt h f a StatL Source #

jLabel :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a NameL -> Cxt h f a StatL Source #

jGoto :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a NameL -> Cxt h f a StatL Source #

jDo :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a BlockL -> Cxt h f a StatL Source #

jRepeat :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a BlockL -> Cxt h f a ExpL -> Cxt h f a StatL Source #

jIf :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a [(ExpL, BlockL)] -> Cxt h f a (Maybe BlockL) -> Cxt h f a StatL Source #

jForRange :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a NameL -> Cxt h f a ExpL -> Cxt h f a ExpL -> Cxt h f a (Maybe ExpL) -> Cxt h f a BlockL -> Cxt h f a StatL Source #

jForIn :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a [NameL] -> Cxt h f a [ExpL] -> Cxt h f a BlockL -> Cxt h f a StatL Source #

jFunAssign :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a FunNameL -> Cxt h f a FunBodyL -> Cxt h f a StatL Source #

jLocalFunAssign :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a NameL -> Cxt h f a FunBodyL -> Cxt h f a StatL Source #

jLocalAssign :: forall {f :: Fragment} {h} {a :: Type -> Type}. Stat :<: f => Cxt h f a [NameL] -> Cxt h f a (Maybe [ExpL]) -> Cxt h f a StatL Source #

jEmptyStat :: forall h (f :: Fragment) (a :: Type -> Type). Stat :<: f => Cxt h f a StatL Source #

jTable :: forall {f :: Fragment} {h} {a :: Type -> Type}. Table :<: f => Cxt h f a [TableFieldL] -> Cxt h f a TableL Source #

jExpField :: forall {f :: Fragment} {h} {a :: Type -> Type}. TableField :<: f => Cxt h f a ExpL -> Cxt h f a ExpL -> Cxt h f a TableFieldL Source #

jNamedField :: forall {f :: Fragment} {h} {a :: Type -> Type}. TableField :<: f => Cxt h f a NameL -> Cxt h f a ExpL -> Cxt h f a TableFieldL Source #

jField :: forall {f :: Fragment} {h} {a :: Type -> Type}. TableField :<: f => Cxt h f a ExpL -> Cxt h f a TableFieldL Source #

jNeg :: forall h (f :: Fragment) (a :: Type -> Type). Unop :<: f => Cxt h f a UnopL Source #

jLen :: forall h (f :: Fragment) (a :: Type -> Type). Unop :<: f => Cxt h f a UnopL Source #

jVarName :: forall {f :: Fragment} {h} {a :: Type -> Type}. Var :<: f => Cxt h f a NameL -> Cxt h f a VarL Source #

jSelect :: forall {f :: Fragment} {h} {a :: Type -> Type}. Var :<: f => Cxt h f a PrefixExpL -> Cxt h f a ExpL -> Cxt h f a VarL Source #

jSelectName :: forall {f :: Fragment} {h} {a :: Type -> Type}. Var :<: f => Cxt h f a PrefixExpL -> Cxt h f a NameL -> Cxt h f a VarL Source #

jIntNum :: forall h (f :: Fragment) (a :: Type -> Type). NumberType :<: f => Cxt h f a NumberTypeL Source #

jFloatNum :: forall h (f :: Fragment) (a :: Type -> Type). NumberType :<: f => Cxt h f a NumberTypeL Source #

pattern Exp' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern Concat' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern LT' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern LTE' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern GT' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern GTE' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern EQ' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern NEQ' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern ShiftL' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern ShiftR' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern BAnd' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern BOr' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern BXor' :: forall h f a j. Binop :<: f => Cxt h f a BinopL Source #

pattern Nil' :: forall h f a j. Exp :<: f => Cxt h f a ExpL Source #

pattern Number' :: forall h f a j. Exp :<: f => Cxt h f a NumberTypeL -> Text -> Cxt h f a ExpL Source #

pattern String' :: forall h f a j. Exp :<: f => Text -> Cxt h f a ExpL Source #

pattern Vararg' :: forall h f a j. Exp :<: f => Cxt h f a ExpL Source #

pattern EFunDef' :: forall h f a j. Exp :<: f => Cxt h f a FunDefL -> Cxt h f a ExpL Source #

pattern PrefixExp' :: forall h f a j. Exp :<: f => Cxt h f a PrefixExpL -> Cxt h f a ExpL Source #

pattern TableConst' :: forall h f a j. Exp :<: f => Cxt h f a TableL -> Cxt h f a ExpL Source #

pattern Binop' :: forall h f a j. Exp :<: f => Cxt h f a BinopL -> Cxt h f a ExpL -> Cxt h f a ExpL -> Cxt h f a ExpL Source #

pattern Unop' :: forall h f a j. Exp :<: f => Cxt h f a UnopL -> Cxt h f a ExpL -> Cxt h f a ExpL Source #

pattern Args' :: forall h f a j. FunArg :<: f => Cxt h f a [ExpL] -> Cxt h f a FunArgL Source #

pattern TableArg' :: forall h f a j. FunArg :<: f => Cxt h f a TableL -> Cxt h f a FunArgL Source #

pattern StringArg' :: forall h f a j. FunArg :<: f => Text -> Cxt h f a FunArgL Source #

pattern NormalFunCall' :: forall h f a j. FunCall :<: f => Cxt h f a PrefixExpL -> Cxt h f a FunArgL -> Cxt h f a FunCallL Source #

pattern MethodCall' :: forall h f a j. FunCall :<: f => Cxt h f a PrefixExpL -> Cxt h f a NameL -> Cxt h f a FunArgL -> Cxt h f a FunCallL Source #

pattern FunDef' :: forall h f a j. FunDef :<: f => Cxt h f a FunBodyL -> Cxt h f a FunDefL Source #

pattern FunName' :: forall h f a j. FunName :<: f => Cxt h f a NameL -> Cxt h f a [NameL] -> Cxt h f a (Maybe NameL) -> Cxt h f a FunNameL Source #

pattern Name' :: forall h f a j. Name :<: f => Text -> Cxt h f a NameL Source #

pattern PEVar' :: forall h f a j. PrefixExp :<: f => Cxt h f a VarL -> Cxt h f a PrefixExpL Source #

pattern PEFunCall' :: forall h f a j. PrefixExp :<: f => Cxt h f a FunCallL -> Cxt h f a PrefixExpL Source #

pattern FunCall' :: forall h f a j. Stat :<: f => Cxt h f a FunCallL -> Cxt h f a StatL Source #

pattern Label' :: forall h f a j. Stat :<: f => Cxt h f a NameL -> Cxt h f a StatL Source #

pattern Goto' :: forall h f a j. Stat :<: f => Cxt h f a NameL -> Cxt h f a StatL Source #

pattern Do' :: forall h f a j. Stat :<: f => Cxt h f a BlockL -> Cxt h f a StatL Source #

pattern Repeat' :: forall h f a j. Stat :<: f => Cxt h f a BlockL -> Cxt h f a ExpL -> Cxt h f a StatL Source #

pattern If' :: forall h f a j. Stat :<: f => Cxt h f a [(ExpL, BlockL)] -> Cxt h f a (Maybe BlockL) -> Cxt h f a StatL Source #

pattern ForRange' :: forall h f a j. Stat :<: f => Cxt h f a NameL -> Cxt h f a ExpL -> Cxt h f a ExpL -> Cxt h f a (Maybe ExpL) -> Cxt h f a BlockL -> Cxt h f a StatL Source #

pattern ForIn' :: forall h f a j. Stat :<: f => Cxt h f a [NameL] -> Cxt h f a [ExpL] -> Cxt h f a BlockL -> Cxt h f a StatL Source #

pattern FunAssign' :: forall h f a j. Stat :<: f => Cxt h f a FunNameL -> Cxt h f a FunBodyL -> Cxt h f a StatL Source #

pattern LocalFunAssign' :: forall h f a j. Stat :<: f => Cxt h f a NameL -> Cxt h f a FunBodyL -> Cxt h f a StatL Source #

pattern LocalAssign' :: forall h f a j. Stat :<: f => Cxt h f a [NameL] -> Cxt h f a (Maybe [ExpL]) -> Cxt h f a StatL Source #

pattern EmptyStat' :: forall h f a j. Stat :<: f => Cxt h f a StatL Source #

pattern Table' :: forall h f a j. Table :<: f => Cxt h f a [TableFieldL] -> Cxt h f a TableL Source #

pattern ExpField' :: forall h f a j. TableField :<: f => Cxt h f a ExpL -> Cxt h f a ExpL -> Cxt h f a TableFieldL Source #

pattern NamedField' :: forall h f a j. TableField :<: f => Cxt h f a NameL -> Cxt h f a ExpL -> Cxt h f a TableFieldL Source #

pattern Field' :: forall h f a j. TableField :<: f => Cxt h f a ExpL -> Cxt h f a TableFieldL Source #

pattern Neg' :: forall h f a j. Unop :<: f => Cxt h f a UnopL Source #

pattern Len' :: forall h f a j. Unop :<: f => Cxt h f a UnopL Source #

pattern VarName' :: forall h f a j. Var :<: f => Cxt h f a NameL -> Cxt h f a VarL Source #

pattern Select' :: forall h f a j. Var :<: f => Cxt h f a PrefixExpL -> Cxt h f a ExpL -> Cxt h f a VarL Source #

pattern SelectName' :: forall h f a j. Var :<: f => Cxt h f a PrefixExpL -> Cxt h f a NameL -> Cxt h f a VarL Source #

pattern IntNum' :: forall h f a j. NumberType :<: f => Cxt h f a NumberTypeL Source #

pattern FloatNum' :: forall h f a j. NumberType :<: f => Cxt h f a NumberTypeL Source #

iExp :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iConcat :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iLT :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iLTE :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iGT :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iGTE :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iEQ :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iNEQ :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iShiftL :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iShiftR :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iBAnd :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iBOr :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iBXor :: forall h (fs :: Signature) (a :: Type -> Type) j. (Binop :-<: fs, InjF fs BinopL j) => CxtS h fs a j Source #

iNil :: forall h (fs :: Signature) (a :: Type -> Type) j. (Exp :-<: fs, InjF fs ExpL j) => CxtS h fs a j Source #

iNumber :: forall h (fs :: Signature) (a :: Type -> Type) j. (Exp :-<: fs, InjF fs ExpL j) => CxtS h fs a NumberTypeL -> Text -> CxtS h fs a j Source #

iString :: forall h (fs :: Signature) (a :: Type -> Type) j. (Exp :-<: fs, InjF fs ExpL j) => Text -> CxtS h fs a j Source #

iVararg :: forall h (fs :: Signature) (a :: Type -> Type) j. (Exp :-<: fs, InjF fs ExpL j) => CxtS h fs a j Source #

iEFunDef :: forall h (fs :: Signature) (a :: Type -> Type) j. (Exp :-<: fs, InjF fs ExpL j) => CxtS h fs a FunDefL -> CxtS h fs a j Source #

iPrefixExp :: forall h (fs :: Signature) (a :: Type -> Type) j. (Exp :-<: fs, InjF fs ExpL j) => CxtS h fs a PrefixExpL -> CxtS h fs a j Source #

iTableConst :: forall h (fs :: Signature) (a :: Type -> Type) j. (Exp :-<: fs, InjF fs ExpL j) => CxtS h fs a TableL -> CxtS h fs a j Source #

iBinop :: forall h (fs :: Signature) (a :: Type -> Type) j. (Exp :-<: fs, InjF fs ExpL j) => CxtS h fs a BinopL -> CxtS h fs a ExpL -> CxtS h fs a ExpL -> CxtS h fs a j Source #

iUnop :: forall h (fs :: Signature) (a :: Type -> Type) j. (Exp :-<: fs, InjF fs ExpL j) => CxtS h fs a UnopL -> CxtS h fs a ExpL -> CxtS h fs a j Source #

iArgs :: forall h (fs :: Signature) (a :: Type -> Type) j. (FunArg :-<: fs, InjF fs FunArgL j) => CxtS h fs a [ExpL] -> CxtS h fs a j Source #

iTableArg :: forall h (fs :: Signature) (a :: Type -> Type) j. (FunArg :-<: fs, InjF fs FunArgL j) => CxtS h fs a TableL -> CxtS h fs a j Source #

iStringArg :: forall h (fs :: Signature) (a :: Type -> Type) j. (FunArg :-<: fs, InjF fs FunArgL j) => Text -> CxtS h fs a j Source #

iNormalFunCall :: forall h (fs :: Signature) (a :: Type -> Type) j. (FunCall :-<: fs, InjF fs FunCallL j) => CxtS h fs a PrefixExpL -> CxtS h fs a FunArgL -> CxtS h fs a j Source #

iMethodCall :: forall h (fs :: Signature) (a :: Type -> Type) j. (FunCall :-<: fs, InjF fs FunCallL j) => CxtS h fs a PrefixExpL -> CxtS h fs a NameL -> CxtS h fs a FunArgL -> CxtS h fs a j Source #

iFunDef :: forall h (fs :: Signature) (a :: Type -> Type) j. (FunDef :-<: fs, InjF fs FunDefL j) => CxtS h fs a FunBodyL -> CxtS h fs a j Source #

iFunName :: forall h (fs :: Signature) (a :: Type -> Type) j. (FunName :-<: fs, InjF fs FunNameL j) => CxtS h fs a NameL -> CxtS h fs a [NameL] -> CxtS h fs a (Maybe NameL) -> CxtS h fs a j Source #

iPEVar :: forall h (fs :: Signature) (a :: Type -> Type) j. (PrefixExp :-<: fs, InjF fs PrefixExpL j) => CxtS h fs a VarL -> CxtS h fs a j Source #

iPEFunCall :: forall h (fs :: Signature) (a :: Type -> Type) j. (PrefixExp :-<: fs, InjF fs PrefixExpL j) => CxtS h fs a FunCallL -> CxtS h fs a j Source #

iFunCall :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a FunCallL -> CxtS h fs a j Source #

iLabel :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a NameL -> CxtS h fs a j Source #

iGoto :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a NameL -> CxtS h fs a j Source #

iDo :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a BlockL -> CxtS h fs a j Source #

iRepeat :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a BlockL -> CxtS h fs a ExpL -> CxtS h fs a j Source #

iIf :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a [(ExpL, BlockL)] -> CxtS h fs a (Maybe BlockL) -> CxtS h fs a j Source #

iForRange :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a NameL -> CxtS h fs a ExpL -> CxtS h fs a ExpL -> CxtS h fs a (Maybe ExpL) -> CxtS h fs a BlockL -> CxtS h fs a j Source #

iForIn :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a [NameL] -> CxtS h fs a [ExpL] -> CxtS h fs a BlockL -> CxtS h fs a j Source #

iFunAssign :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a FunNameL -> CxtS h fs a FunBodyL -> CxtS h fs a j Source #

iLocalFunAssign :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a NameL -> CxtS h fs a FunBodyL -> CxtS h fs a j Source #

iLocalAssign :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a [NameL] -> CxtS h fs a (Maybe [ExpL]) -> CxtS h fs a j Source #

iEmptyStat :: forall h (fs :: Signature) (a :: Type -> Type) j. (Stat :-<: fs, InjF fs StatL j) => CxtS h fs a j Source #

iTable :: forall h (fs :: Signature) (a :: Type -> Type) j. (Table :-<: fs, InjF fs TableL j) => CxtS h fs a [TableFieldL] -> CxtS h fs a j Source #

iExpField :: forall h (fs :: Signature) (a :: Type -> Type) j. (TableField :-<: fs, InjF fs TableFieldL j) => CxtS h fs a ExpL -> CxtS h fs a ExpL -> CxtS h fs a j Source #

iNamedField :: forall h (fs :: Signature) (a :: Type -> Type) j. (TableField :-<: fs, InjF fs TableFieldL j) => CxtS h fs a NameL -> CxtS h fs a ExpL -> CxtS h fs a j Source #

iField :: forall h (fs :: Signature) (a :: Type -> Type) j. (TableField :-<: fs, InjF fs TableFieldL j) => CxtS h fs a ExpL -> CxtS h fs a j Source #

iNeg :: forall h (fs :: Signature) (a :: Type -> Type) j. (Unop :-<: fs, InjF fs UnopL j) => CxtS h fs a j Source #

iLen :: forall h (fs :: Signature) (a :: Type -> Type) j. (Unop :-<: fs, InjF fs UnopL j) => CxtS h fs a j Source #

iVarName :: forall h (fs :: Signature) (a :: Type -> Type) j. (Var :-<: fs, InjF fs VarL j) => CxtS h fs a NameL -> CxtS h fs a j Source #

iSelect :: forall h (fs :: Signature) (a :: Type -> Type) j. (Var :-<: fs, InjF fs VarL j) => CxtS h fs a PrefixExpL -> CxtS h fs a ExpL -> CxtS h fs a j Source #

iSelectName :: forall h (fs :: Signature) (a :: Type -> Type) j. (Var :-<: fs, InjF fs VarL j) => CxtS h fs a PrefixExpL -> CxtS h fs a NameL -> CxtS h fs a j Source #

iIntNum :: forall h (fs :: Signature) (a :: Type -> Type) j. (NumberType :-<: fs, InjF fs NumberTypeL j) => CxtS h fs a j Source #

iFloatNum :: forall h (fs :: Signature) (a :: Type -> Type) j. (NumberType :-<: fs, InjF fs NumberTypeL j) => CxtS h fs a j Source #

jFunBody :: forall {f :: Fragment} {h} {a :: Type -> Type}. FunBody :<: f => Cxt h f a [NameL] -> Bool -> Cxt h f a BlockL -> Cxt h f a FunBodyL Source #

pattern FunBody' :: forall h f a j. FunBody :<: f => Cxt h f a [NameL] -> Bool -> Cxt h f a BlockL -> Cxt h f a FunBodyL Source #

iFunBody :: forall h (fs :: Signature) (a :: Type -> Type) j. (FunBody :-<: fs, InjF fs FunBodyL j) => CxtS h fs a [NameL] -> Bool -> CxtS h fs a BlockL -> CxtS h fs a j Source #

type LBlock = Block Source #

type LBlockL = BlockL Source #