[silver:compiler:extension:implicit_monads]
Contents of [silver:compiler:extension:implicit_monads]
:
Defined in this grammar:
concrete production attributeDclInh_Restricted
(top::AGDcl ::= 'restricted' 'inherited' 'attribute' a::Name tl::BracketedOptTypeExprs '::' te::TypeExpr ';'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/AttributeDefs.sv line 4.
(Undocumented.)
concrete production attributeDclSyn_Restricted
(top::AGDcl ::= 'restricted' 'synthesized' 'attribute' a::Name tl::BracketedOptTypeExprs '::' te::TypeExpr ';'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/AttributeDefs.sv line 35.
(Undocumented.)
concrete production attributeDclInh_Implicit
(top::AGDcl ::= 'implicit' 'inherited' 'attribute' a::Name tl::BracketedOptTypeExprs '::' te::TypeExpr ';'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/AttributeDefs.sv line 68.
(Undocumented.)
concrete production attributeDclSyn_Implicit
(top::AGDcl ::= 'implicit' 'synthesized' 'attribute' a::Name tl::BracketedOptTypeExprs '::' te::TypeExpr ';'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/AttributeDefs.sv line 101.
(Undocumented.)
concrete production attributeDclInh_Unrestricted
(top::AGDcl ::= 'unrestricted' 'inherited' 'attribute' a::Name tl::BracketedOptTypeExprs '::' te::TypeExpr ';'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/AttributeDefs.sv line 136.
(Undocumented.)
concrete production attributeDclSyn_Unrestricted
(top::AGDcl ::= 'unrestricted' 'synthesized' 'attribute' a::Name tl::BracketedOptTypeExprs '::' te::TypeExpr ';'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/AttributeDefs.sv line 145.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 1.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 8.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 9.
(Undocumented.)
fun monadicallyUsedExpr
(Boolean ::= elst::[Expr] env::Env sub::Substitution f::BlockContext gn::String cg::EnvTree<Decorated RootSpec> c::Decorated CmdArgs fe::FlowEnv em::Type iR::Boolean
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 142.
(Undocumented.)
function monadicMatchTypesNames
(([(Type,(Expr,String))],[Expr]) ::= elst::[Decorated Expr with MonadInhs] tylst::[Type] names::[String] env::Env sub::Substitution em::Type index::Integer
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 160.
(Undocumented.)
function monadCompileCaseExpr
(Expr ::= es::[Expr] ml::[AbstractMatchRule] failExpr::Expr retType::Type env::Env
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 223.
(Undocumented.)
function monadCompilePatternGroups
(Expr ::= matchEs::[Expr] ruleGroups::[[AbstractMatchRule]] finalFail::Expr retType::Type env::Env
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 275.
(Undocumented.)
function monadAllConCaseTransform
(PrimPattern ::= currExpr::Expr restExprs::[Expr] failCase::Expr retType::Type mrs::[AbstractMatchRule] env::Env
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 334.
(Undocumented.)
concrete production mcaseExpr_c
(top::Expr ::= 'case_any' es::Exprs 'of' vbar::Opt_Vbar_t ml::MRuleList 'end'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 369.
(Undocumented.)
function mcaseBindsApps
(Expr ::= exprs::[Expr] names::[String] base::Expr env::Env sub::Substitution f::BlockContext gn::String cg::EnvTree<Decorated RootSpec> c::Decorated CmdArgs fe::FlowEnv em::Type iR::Boolean
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 473.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 509.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 538.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 539.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 540.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 541.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 542.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 543.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 544.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Case.sv line 545.
(Undocumented.)
abstract production restrictedSynDcl
(top::AttributeDclInfo ::= fn::String bound::[TyVar] ty::Type
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/DclInfo.sv line 4.
(Undocumented.)
abstract production restrictedInhDcl
(top::AttributeDclInfo ::= fn::String bound::[TyVar] ty::Type
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/DclInfo.sv line 25.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/DclInfo.sv line 48.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/DclInfo.sv line 69.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/DclInfo.sv line 94.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/DclInfo.sv line 98.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/DclInfo.sv line 104.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/DclInfo.sv line 108.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 5.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 9.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 15.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 28.
(Undocumented.)
aspect default production top::Expr ::=
{#aspect_default_production_silver:compiler:definition:core:Expr}
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 33.
(Undocumented.)
function buildMonadApplicationLambda
(Expr ::= realtys::[Type] monadTysLocs::[Pair<Type Integer>] monadAnns::[(Type,QName,Boolean)] expectedMonad::Type funType::Type bindFun::Boolean wrapReturn::Boolean
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 359.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 380.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 392.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 400.
(Undocumented.)
function buildMonadApplicationBody
(Expr ::= monadTysLocs::[Pair<Type Integer>] funargs::AppExprs annargs::AnnoAppExprs monadType::Type funTy::Type bindFun::Boolean wrapReturn::Boolean
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 409.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 1499.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 1743.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 1745.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 1747.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 1752.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 1756.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 1757.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Expr.sv line 1758.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Let.sv line 74.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Let.sv line 75.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Let.sv line 77.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/PrimitiveMatch.sv line 12.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/PrimitiveMatch.sv line 13.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 1.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 4.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 5.
(Undocumented.)
concrete production emptyAttributeDef
(top::ProductionStmt ::= 'implicit' dl::DefLHS '.' attr::QNameAttrOccur '=' ';'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 12.
(Undocumented.)
concrete production implicitAttributeDef
(top::ProductionStmt ::= 'implicit' dl::DefLHS '.' attr::QNameAttrOccur '=' e::Expr ';'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 51.
(Undocumented.)
concrete production restrictedAttributeDef
(top::ProductionStmt ::= 'restricted' dl::DefLHS '.' attr::QNameAttrOccur '=' e::Expr ';'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 90.
(Undocumented.)
concrete production unrestrictedAttributeDef
(top::ProductionStmt ::= 'unrestricted' dl::DefLHS '.' attr::QNameAttrOccur '=' e::Expr ';'
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 130.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 173.
(Undocumented.)
abstract production restrictedSynAttributeDef
(top::ProductionStmt ::= @dl::DefLHS @attr::QNameAttrOccur e::Expr
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 184.
(Undocumented.)
abstract production restrictedInhAttributeDef
(top::ProductionStmt ::= @dl::DefLHS @attr::QNameAttrOccur e::Expr
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 212.
(Undocumented.)
abstract production implicitSynAttributeDef
(top::ProductionStmt ::= @dl::DefLHS @attr::QNameAttrOccur e::Expr
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 243.
(Undocumented.)
abstract production implicitInhAttributeDef
(top::ProductionStmt ::= @dl::DefLHS @attr::QNameAttrOccur e::Expr
)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/ProductionBody.sv line 284.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 22.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 24.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 26.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 29.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 34.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 37.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 43.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 49.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 56.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 65.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 80.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 88.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 97.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 112.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 120.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 132.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 133.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 136.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 148.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 149.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 161.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 166.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 176.
(Undocumented.)
Contained in grammar [silver:compiler:extension:implicit_monads]
. Defined at silver/compiler/extension/implicit_monads/Util.sv line 185.
(Undocumented.)