WebDSL-Prefetch.sdf3 pdmosses/webdsl-statix/webdslstatix/syntax/WebDSL-Prefetch.sdf3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 module WebDSL-Prefetch imports WebDSL-Action WebDSL-Core WebDSL-Lexical WebDSL-UI context-free sorts PrefetchChildren PrefetchNode PrefetchTemplateArgsOpt PrefetchNodeMod PrefetchCondition PrefetchCondVal PrefetchCond PrefetchWhereOpt PrefetchWhereMod OptSimpleSort PrefetchChildrenOpt OptPrefetchOwnerCast SortOrThis TemplateArgOrThis context-free syntax TemplateElement.PrefetchFor = < prefetch-for <Id> <PrefetchTemplateArgsOpt> <PrefetchWhereOpt> <PrefetchChildren> > Statement.PrefetchForStmt = < prefetch-for <Id> <PrefetchTemplateArgsOpt> <PrefetchWhereOpt> <PrefetchChildren> > PrefetchChildren.PrefetchChildren = <{ <PrefetchNode*> }> PrefetchChildrenOpt.PrefetchChildrenOptNone = <> PrefetchChildrenOpt = PrefetchChildren PrefetchNode.PrefetchNode = <<OptPrefetchOwnerCast> <Id> <PrefetchNodeMod*> <PrefetchTemplateArgsOpt> <PrefetchCondition> <PrefetchWhereOpt> <PrefetchChildrenOpt>> OptPrefetchOwnerCast.OptPrefetchOwnerCastNone = <> OptPrefetchOwnerCast.PrefetchOwnerCast = <<SimpleSortLex> .> PrefetchNodeMod.NoEmptyBatch = <no-empty-batch> PrefetchNodeMod.FetchEarly = <fetch-early> PrefetchTemplateArgsOpt.PrefetchTemplateArgsOptNone = <> PrefetchTemplateArgsOpt.PrefetchTemplateArgs = <templates [ <{TemplateArgOrThis ","}+> ]> TemplateArgOrThis.TemplateArgOrThis = <<Id> ( <{SortOrThis ","}*> )> SortOrThis.Sort = Sort SortOrThis.TArgThis = <this> SortOrThis.PrefetchThisCast = <this as <Sort>> context-free syntax PrefetchCondition.PrefetchConditionNone = <> PrefetchCondition.PrefetchCondition = <if ( <PrefetchCond> )> PrefetchWhereOpt.PrefetchWhereOptNone = <> PrefetchWhereOpt.PrefetchWhere = <where <PrefetchWhereMod*> ( <PrefetchCond> )> PrefetchWhereMod.Hint = <hint> PrefetchCond.PrefetchEq = <<PrefetchCondVal> == <PrefetchCondVal>> {left} PrefetchCond.PrefetchNotEq = <<PrefetchCondVal> != <PrefetchCondVal>> {left} PrefetchCond.PrefetchLargerThan = <<PrefetchCondVal> \> <PrefetchCondVal>> {left} PrefetchCond.PrefetchLargerThanOrEqual = <<PrefetchCondVal> \>= <PrefetchCondVal>> {left} PrefetchCond.PrefetchSmallerThan = <<PrefetchCondVal> \< <PrefetchCondVal>> {left} PrefetchCond.PrefetchSmallerThanOrEqual = <<PrefetchCondVal> \<= <PrefetchCondVal>> {left} PrefetchCond.PrefetchAnd = <<PrefetchCond> && <PrefetchCond>> {left} PrefetchCond.PrefetchOr = <<PrefetchCond> || <PrefetchCond>> {left} PrefetchCond.PrefetchNot = <! <PrefetchCond>> PrefetchCond = PrefetchCondVal PrefetchCond = <( <PrefetchCond> )> {bracket} PrefetchCondVal.PrefetchTrue = <true> PrefetchCondVal.PrefetchFalse = <false> PrefetchCondVal.PrefetchNull = <null> PrefetchCondVal.PrefetchConst = ConstValue PrefetchCondVal.PrefetchCondVar = VarId PrefetchCondVal.RelativeFieldAccess = <<OptSimpleSort> . <PropertyId>> {left} PrefetchCondVal.PrefetchMul = <<PrefetchCondVal> * <PrefetchCondVal>> {left} PrefetchCondVal.PrefetchDiv = <<PrefetchCondVal> / <PrefetchCondVal>> {left} PrefetchCondVal.PrefetchMod = <<PrefetchCondVal> % <PrefetchCondVal>> {left} PrefetchCondVal.PrefetchAdd = <<PrefetchCondVal> + <PrefetchCondVal>> {left} PrefetchCondVal.PrefetchSub = <<PrefetchCondVal> - <PrefetchCondVal>> {left} OptSimpleSort.OptSimpleSortNone = <> OptSimpleSort.OptSimpleSortSome = SimpleSortLex context-free priorities {left : PrefetchCondVal.RelativeFieldAccess } > { PrefetchCond.PrefetchNot } > {left : PrefetchCondVal.PrefetchMul PrefetchCondVal.PrefetchDiv PrefetchCondVal.PrefetchMod } > {left: PrefetchCondVal.PrefetchAdd PrefetchCondVal.PrefetchSub } > {left : PrefetchCond.PrefetchEq PrefetchCond.PrefetchNotEq PrefetchCond.PrefetchLargerThan PrefetchCond.PrefetchLargerThanOrEqual PrefetchCond.PrefetchSmallerThan PrefetchCond.PrefetchSmallerThanOrEqual } > {left : PrefetchCond.PrefetchAnd } > {left : PrefetchCond.PrefetchOr } ×