diff --git a/docs/release-notes/.FSharp.Compiler.Service/11.0.0.md b/docs/release-notes/.FSharp.Compiler.Service/11.0.0.md index 7cc15f46c9e..03b197f995c 100644 --- a/docs/release-notes/.FSharp.Compiler.Service/11.0.0.md +++ b/docs/release-notes/.FSharp.Compiler.Service/11.0.0.md @@ -26,5 +26,9 @@ * Parallel compilation features: ref resolution, graph based checking, ILXGen and optimization enabled by default ([PR #18998](https://github.com/dotnet/fsharp/pull/18998)) * Make graph based type checking and parallel optimizations deterministic ([PR #19028](https://github.com/dotnet/fsharp/pull/19028)) - ### Breaking Changes + +* `SynExpr.LetOrUse` holds `SynLetOrUse`. ([PR #19090](https://github.com/dotnet/fsharp/pull/19090)) +* `SynExprLetOrUseTrivia` is now `SynLetOrUseTrivia`. ([PR #19090](https://github.com/dotnet/fsharp/pull/19090)) +* `SynMemberDefn.LetBindings` has trivia. ([PR #19090](https://github.com/dotnet/fsharp/pull/19090)) +* `SynModuleDecl.Let` has trivia. ([PR #19090](https://github.com/dotnet/fsharp/pull/19090)) diff --git a/src/Compiler/Checking/CheckDeclarations.fs b/src/Compiler/Checking/CheckDeclarations.fs index e230cd48280..ce981291c48 100644 --- a/src/Compiler/Checking/CheckDeclarations.fs +++ b/src/Compiler/Checking/CheckDeclarations.fs @@ -1108,7 +1108,7 @@ module MutRecBindingChecking = let innerState = (incrCtorInfoOpt, envForTycon, tpenv, recBindIdx, uncheckedBindsRev) [Phase2AInherit (ty, arg, baseValOpt, m); Phase2AIncrClassCtorJustAfterSuperInit], innerState - | Some (SynMemberDefn.LetBindings (letBinds, isStatic, isRec, m)), _ -> + | Some (SynMemberDefn.LetBindings (bindings = letBinds; isStatic = isStatic; isRecursive = isRec; range = m)), _ -> match tcref.TypeOrMeasureKind, isStatic with | TyparKind.Measure, false -> errorR(Error(FSComp.SR.tcMeasureDeclarationsRequireStaticMembers(), m)) | _ -> () @@ -4412,7 +4412,7 @@ module TcDeclarations = let attribs = mkAttributeList attribs mWholeAutoProp let binding = mkSynBinding (xmlDoc, headPat) (None, false, isMutable, mLetPortion, DebugPointAtBinding.NoneAtInvisible, retInfo, synExpr, synExpr.Range, [], attribs, None, SynBindingTrivia.Zero) - [(SynMemberDefn.LetBindings ([binding], isStatic, false, mWholeAutoProp))] + [(SynMemberDefn.LetBindings ([binding], isStatic, false, mWholeAutoProp, SynMemberDefnLetBindingsTrivia.Zero))] | SynMemberDefn.Interface (members=Some membs) -> membs |> List.collect preAutoProps | SynMemberDefn.LetBindings _ @@ -5113,7 +5113,7 @@ let ElimSynModuleDeclExpr bind = match bind with | SynModuleDecl.Expr (expr, m) -> let bind2 = SynBinding (None, SynBindingKind.StandaloneExpression, false, false, [], PreXmlDoc.Empty, SynInfo.emptySynValData, SynPat.Wild m, None, expr, m, DebugPointAtBinding.NoneAtDo, SynBindingTrivia.Zero) - SynModuleDecl.Let(false, [bind2], m) + SynModuleDecl.Let(false, [bind2], m, SynModuleDeclLetTrivia.Zero) | _ -> bind let TcMutRecDefnsEscapeCheck (binds: MutRecShapes<_, _, _>) env = @@ -5187,7 +5187,7 @@ let TcModuleOrNamespaceElementsMutRec (cenv: cenv) parent typeNames m envInitial let decls = typeDefs |> List.map MutRecShape.Tycon decls, (false, false, attrs) - | SynModuleDecl.Let (letrec, binds, m) -> + | SynModuleDecl.Let (isRecursive = letrec; bindings = binds; range = m) -> let binds = if isNamespace then CheckLetOrDoInNamespace binds m; [] @@ -5292,7 +5292,7 @@ let rec TcModuleOrNamespaceElementNonMutRec (cenv: cenv) parent typeNames scopem | _ -> [ TMDefOpens openDecls ] return (defns, [], []), env, env - | SynModuleDecl.Let (letrec, binds, m) -> + | SynModuleDecl.Let (isRecursive = letrec; bindings = binds; range = m) -> match parent with | ParentNone -> diff --git a/src/Compiler/Checking/CheckRecordSyntaxHelpers.fs b/src/Compiler/Checking/CheckRecordSyntaxHelpers.fs index aa2e3546ba0..7df9f642c12 100644 --- a/src/Compiler/Checking/CheckRecordSyntaxHelpers.fs +++ b/src/Compiler/Checking/CheckRecordSyntaxHelpers.fs @@ -193,13 +193,11 @@ let BindOriginalRecdExpr (withExpr: SynExpr * BlockSeparator) mkRecdExpr = None, SynBindingTrivia.Zero) - SynExpr.LetOrUse( - isRecursive = false, - isUse = false, - isFromSource = false, // compiler generated during desugaring - isBang = false, - bindings = [ binding ], - body = mkRecdExpr (Some withExpr), - range = mOrigExprSynth, - trivia = SynExprLetOrUseTrivia.Zero - ) + SynExpr.LetOrUse + { + IsRecursive = false + Bindings = [ binding ] + Body = mkRecdExpr (Some withExpr) + Range = mOrigExprSynth + Trivia = SynLetOrUseTrivia.Zero + } diff --git a/src/Compiler/Checking/Expressions/CheckComputationExpressions.fs b/src/Compiler/Checking/Expressions/CheckComputationExpressions.fs index 607a87ab08b..0fdab8579e3 100644 --- a/src/Compiler/Checking/Expressions/CheckComputationExpressions.fs +++ b/src/Compiler/Checking/Expressions/CheckComputationExpressions.fs @@ -862,34 +862,28 @@ let private mkTypedHeadPat (SynBinding(headPat = headPattern; returnInfo = retur [] let (|ExprAsUseBang|_|) expr = match expr with - | SynExpr.LetOrUse( - isUse = true - isFromSource = isFromSource - isBang = true - bindings = bindings - body = innerComp - trivia = { LetOrUseKeyword = mBind }) -> + | SynExpr.LetOrUse({ + Bindings = bindings + Body = innerComp + } as letOrUse) when letOrUse.IsUse && letOrUse.IsBang -> match bindings with - | SynBinding(debugPoint = spBind; expr = rhsExpr) as binding :: andBangs -> + | SynBinding(debugPoint = spBind; expr = rhsExpr; trivia = { LeadingKeyword = leadingKeyword }) as binding :: andBangs -> let pat = mkTypedHeadPat binding - ValueSome(spBind, isFromSource, pat, rhsExpr, andBangs, innerComp, mBind) + ValueSome(spBind, letOrUse.IsFromSource, pat, rhsExpr, andBangs, innerComp, leadingKeyword.Range) | _ -> ValueNone | _ -> ValueNone [] let (|ExprAsLetBang|_|) expr = match expr with - | SynExpr.LetOrUse( - isUse = false - isFromSource = isFromSource - isBang = true - bindings = bindings - body = innerComp - trivia = { LetOrUseKeyword = mBind }) -> + | SynExpr.LetOrUse({ + Bindings = bindings + Body = innerComp + } as letOrUse) when not letOrUse.IsUse && letOrUse.IsBang -> match bindings with - | SynBinding(debugPoint = spBind; expr = letRhsExpr) as binding :: andBangBindings -> + | SynBinding(debugPoint = spBind; expr = letRhsExpr; trivia = { LeadingKeyword = leadingKeyword }) as binding :: andBangBindings -> let letPat = mkTypedHeadPat binding - ValueSome(spBind, isFromSource, letPat, letRhsExpr, andBangBindings, innerComp, mBind) + ValueSome(spBind, letOrUse.IsFromSource, letPat, letRhsExpr, andBangBindings, innerComp, leadingKeyword.Range) | _ -> ValueNone | _ -> ValueNone @@ -1400,7 +1394,9 @@ let rec TryTranslateComputationExpression [], [], None, - SynBindingTrivia.Zero) + { SynBindingTrivia.Zero with + LeadingKeyword = SynLeadingKeyword.Let patCond.Range.StartRange + }) let setCondExpr = SynExpr.Set(SynExpr.Ident idCond, SynExpr.Ident idFirst, mGuard) @@ -1418,20 +1414,21 @@ let rec TryTranslateComputationExpression expr = guardExpr, range = guardExpr.Range, debugPoint = DebugPointAtBinding.NoneAtSticky, - trivia = SynBindingTrivia.Zero + trivia = + { SynBindingTrivia.Zero with + LeadingKeyword = SynLeadingKeyword.LetBang patFirst.Range.StartRange + } ) let bindCondExpr = - SynExpr.LetOrUse( - isRecursive = false, - isUse = false, - isFromSource = true, // compiler generated during desugaring - isBang = true, - bindings = [ binding ], - body = setCondExpr, - range = mGuard, - trivia = SynExprLetOrUseTrivia.Zero - ) + SynExpr.LetOrUse + { + IsRecursive = false + Bindings = [ binding ] + Body = setCondExpr + Range = mGuard + Trivia = SynLetOrUseTrivia.Zero + } let whileExpr = SynExpr.While( @@ -1448,16 +1445,14 @@ let rec TryTranslateComputationExpression mOrig ) - SynExpr.LetOrUse( - isRecursive = false, - isUse = false, - isFromSource = false, // compiler generated during desugaring - isBang = false, - bindings = [ condBinding ], - body = whileExpr, - range = mGuard, - trivia = SynExprLetOrUseTrivia.Zero - ) + SynExpr.LetOrUse + { + IsRecursive = false + Bindings = [ condBinding ] + Body = whileExpr + Range = mGuard + Trivia = SynLetOrUseTrivia.Zero + } let binding = SynBinding( @@ -1473,19 +1468,20 @@ let rec TryTranslateComputationExpression expr = guardExpr, range = guardExpr.Range, debugPoint = DebugPointAtBinding.NoneAtSticky, - trivia = SynBindingTrivia.Zero + trivia = + { SynBindingTrivia.Zero with + LeadingKeyword = SynLeadingKeyword.LetBang patFirst.Range.StartRange + } ) - SynExpr.LetOrUse( - isRecursive = false, - isUse = false, - isFromSource = true, // compiler generated during desugaring - isBang = true, - bindings = [ binding ], - body = body, - range = mGuard, - trivia = SynExprLetOrUseTrivia.Zero - ) + SynExpr.LetOrUse + { + IsRecursive = false + Bindings = [ binding ] + Body = body + Range = mGuard + Trivia = SynLetOrUseTrivia.Zero + } TryTranslateComputationExpression ceenv CompExprTranslationPass.Initial q varSpace rewrittenWhileExpr translatedCtxt @@ -1687,7 +1683,10 @@ let rec TryTranslateComputationExpression expr = rhsExpr, range = rhsExpr.Range, debugPoint = sp, - trivia = SynBindingTrivia.Zero + trivia = + { SynBindingTrivia.Zero with + LeadingKeyword = SynLeadingKeyword.LetBang rhsExpr.Range.StartRange + } ) Some( @@ -1696,16 +1695,14 @@ let rec TryTranslateComputationExpression CompExprTranslationPass.Initial q varSpace - (SynExpr.LetOrUse( - isRecursive = false, - isUse = false, - isFromSource = true, // compiler generated during desugaring - isBang = true, - bindings = [ binding ], - body = innerComp2, - range = m, - trivia = SynExprLetOrUseTrivia.Zero - )) + (SynExpr.LetOrUse + { + IsRecursive = false + Bindings = [ binding ] + Body = innerComp2 + Range = m + Trivia = SynLetOrUseTrivia.Zero + }) translatedCtxt ) @@ -1773,20 +1770,16 @@ let rec TryTranslateComputationExpression ) // 'let binds in expr' - | SynExpr.LetOrUse( - isRecursive = isRec - isUse = false - isFromSource = isFromSource - isBang = false - bindings = binds - body = innerComp - range = m - trivia = trivia) -> + | SynExpr.LetOrUse({ + Bindings = binds + Body = innerComp + Range = m + } as letOrUse) when not letOrUse.IsUse && not letOrUse.IsBang -> // For 'query' check immediately if ceenv.isQuery then match (List.map (BindingNormalization.NormalizeBinding ValOrMemberBinding cenv ceenv.env) binds) with - | [ NormalizedBinding(_, SynBindingKind.Normal, false, false, _, _, _, _, _, _, _, _) ] when not isRec -> () + | [ NormalizedBinding(_, SynBindingKind.Normal, false, false, _, _, _, _, _, _, _, _) ] when not letOrUse.IsRecursive -> () | normalizedBindings -> let failAt m = error (Error(FSComp.SR.tcNonSimpleLetBindingInQuery (), m)) @@ -1815,29 +1808,30 @@ let rec TryTranslateComputationExpression Some( TranslateComputationExpression ceenv CompExprTranslationPass.Initial q varSpace innerComp (fun holeFill -> translatedCtxt ( - SynExpr.LetOrUse( - isRecursive = isRec, - isUse = false, - isFromSource = isFromSource, - isBang = false, - bindings = binds, - body = holeFill, - range = m, - trivia = trivia - ) + SynExpr.LetOrUse + { + IsRecursive = letOrUse.IsRecursive + Bindings = binds + Body = holeFill + Range = m + Trivia = SynLetOrUseTrivia.Zero + } )) ) // 'use x = expr in expr' - | SynExpr.LetOrUse( - isUse = true - isBang = false - bindings = [ SynBinding(kind = SynBindingKind.Normal; headPat = pat; expr = rhsExpr; debugPoint = spBind) ] - body = innerComp - trivia = { LetOrUseKeyword = mBind }) -> + | SynExpr.LetOrUse({ + Bindings = [ SynBinding( + kind = SynBindingKind.Normal + headPat = pat + expr = rhsExpr + debugPoint = spBind + trivia = { LeadingKeyword = leadingKeyword }) ] + Body = innerComp + } as letOrUse) when letOrUse.IsUse && not letOrUse.IsBang -> if ceenv.isQuery then - error (Error(FSComp.SR.tcUseMayNotBeUsedInQueries (), mBind)) + error (Error(FSComp.SR.tcUseMayNotBeUsedInQueries (), leadingKeyword.Range)) let innerCompRange = innerComp.Range @@ -1859,10 +1853,10 @@ let rec TryTranslateComputationExpression innerCompRange ) - requireBuilderMethod "Using" ceenv mBind mBind + requireBuilderMethod "Using" ceenv leadingKeyword.Range leadingKeyword.Range Some( - translatedCtxt (mkSynCall "Using" mBind [ rhsExpr; consumeExpr ] ceenv.builderValName) + translatedCtxt (mkSynCall "Using" leadingKeyword.Range [ rhsExpr; consumeExpr ] ceenv.builderValName) |> addBindDebugPoint spBind ) @@ -2469,19 +2463,20 @@ and ConsumeCustomOpClauses expr = dataCompAfterOp, range = dataCompAfterOp.Range, debugPoint = DebugPointAtBinding.NoneAtLet, - trivia = SynBindingTrivia.Zero + trivia = + { SynBindingTrivia.Zero with + LeadingKeyword = SynLeadingKeyword.LetBang intoPat.Range.StartRange + } ) - SynExpr.LetOrUse( - isRecursive = false, - isUse = false, - isFromSource = false, // compiler generated during desugaring - isBang = true, - bindings = [ binding ], - body = contExpr, - range = intoPat.Range, - trivia = SynExprLetOrUseTrivia.Zero - ) + SynExpr.LetOrUse + { + IsRecursive = false + Bindings = [ binding ] + Body = contExpr + Range = intoPat.Range + Trivia = SynLetOrUseTrivia.Zero + } else SynExpr.ForEach( DebugPointAtFor.No, @@ -2526,19 +2521,20 @@ and ConsumeCustomOpClauses expr = dataCompPrior, range = dataCompPrior.Range, debugPoint = DebugPointAtBinding.NoneAtLet, - trivia = SynBindingTrivia.Zero + trivia = + { SynBindingTrivia.Zero with + LeadingKeyword = SynLeadingKeyword.LetBang varSpacePat.Range.StartRange + } ) - SynExpr.LetOrUse( - isRecursive = false, - isUse = false, - isFromSource = false, // compiler generated during desugaring - isBang = true, - bindings = [ binding ], - body = compClausesExpr, - range = compClausesExpr.Range, - trivia = SynExprLetOrUseTrivia.Zero - ) + SynExpr.LetOrUse + { + IsRecursive = false + Bindings = [ binding ] + Body = compClausesExpr + Range = compClausesExpr.Range + Trivia = SynLetOrUseTrivia.Zero + } else SynExpr.ForEach( DebugPointAtFor.No, @@ -2668,30 +2664,24 @@ and convertSimpleReturnToExpr (ceenv: ComputationExpressionContext<'a>) comp var | Some elseExprOpt -> Some(SynExpr.IfThenElse(guardExpr, thenExpr, elseExprOpt, spIfToThen, isRecovery, mIfToEndOfElseBranch, trivia), None) - | SynExpr.LetOrUse( - isRecursive = isRec - isUse = false - isFromSource = isFromSource - isBang = false - bindings = binds - body = innerComp - range = m - trivia = trivia) -> + | SynExpr.LetOrUse({ + Bindings = binds + Body = innerComp + Range = m + } as letOrUse) when not letOrUse.IsUse && not letOrUse.IsBang -> match convertSimpleReturnToExpr ceenv comp varSpace innerComp with | None -> None | Some(_, Some _) -> None | Some(innerExpr, None) -> Some( - SynExpr.LetOrUse( - isRecursive = isRec, - isUse = false, - isFromSource = isFromSource, - isBang = false, - bindings = binds, - body = innerExpr, - range = m, - trivia = trivia - ), + SynExpr.LetOrUse + { + IsRecursive = letOrUse.IsRecursive + Bindings = binds + Body = innerExpr + Range = m + Trivia = SynLetOrUseTrivia.Zero + }, None ) @@ -2734,8 +2724,8 @@ and isSimpleExpr ceenv comp = && (match elseCompOpt with | None -> true | Some c -> isSimpleExpr ceenv c) - | SynExpr.LetOrUse(isBang = false; body = innerComp) -> isSimpleExpr ceenv innerComp - | SynExpr.LetOrUse(isBang = true) -> false + | SynExpr.LetOrUse({ Body = innerComp } as letOrUse) when not letOrUse.IsBang -> isSimpleExpr ceenv innerComp + | SynExpr.LetOrUse(letOrUse) when letOrUse.IsBang -> false | SynExpr.Match(clauses = clauses) -> clauses |> List.forall (fun (SynMatchClause(resultExpr = innerComp)) -> isSimpleExpr ceenv innerComp) @@ -2806,19 +2796,20 @@ and TranslateComputationExpression (ceenv: ComputationExpressionContext<'a>) fir expr = rhsExpr, range = rhsExpr.Range, debugPoint = DebugPointAtBinding.NoneAtDo, - trivia = SynBindingTrivia.Zero + trivia = + { SynBindingTrivia.Zero with + LeadingKeyword = SynLeadingKeyword.LetBang rhsExpr.Range.StartRange + } ) - SynExpr.LetOrUse( - isRecursive = false, - isUse = false, - isFromSource = false, // compiler generated during desugaring - isBang = true, - bindings = [ binding ], - body = bodyExpr, - range = m, - trivia = SynExprLetOrUseTrivia.Zero - ) + SynExpr.LetOrUse + { + IsRecursive = false + Bindings = [ binding ] + Body = bodyExpr + Range = m + Trivia = SynLetOrUseTrivia.Zero + } TranslateComputationExpression ceenv CompExprTranslationPass.Initial q varSpace letBangBind translatedCtxt diff --git a/src/Compiler/Checking/Expressions/CheckExpressions.fs b/src/Compiler/Checking/Expressions/CheckExpressions.fs index 527a09cf1d0..33c45e1829d 100644 --- a/src/Compiler/Checking/Expressions/CheckExpressions.fs +++ b/src/Compiler/Checking/Expressions/CheckExpressions.fs @@ -6073,8 +6073,9 @@ and TcExprUndelayed (cenv: cenv) (overallTy: OverallTy) env tpenv (synExpr: SynE | SynExpr.DoBang (trivia = { DoBangKeyword = m }) | SynExpr.MatchBang (trivia = { MatchBangKeyword = m }) - | SynExpr.WhileBang (range = m) - | SynExpr.LetOrUse (isBang = true; trivia = { LetOrUseKeyword = m }) -> + | SynExpr.WhileBang (range = m) -> + error(Error(FSComp.SR.tcConstructRequiresComputationExpression(), m)) + | SynExpr.LetOrUse(({ Range = m}) as letOrUse) when letOrUse.IsBang -> error(Error(FSComp.SR.tcConstructRequiresComputationExpression(), m)) | SynExpr.IndexFromEnd (rightExpr, m) -> @@ -9207,7 +9208,6 @@ and TcImplicitOpItemThen (cenv: cenv) overallTy env id sln tpenv mItem delayed = | SynExpr.YieldOrReturn _ | SynExpr.YieldOrReturnFrom _ | SynExpr.MatchBang _ - | SynExpr.LetOrUse (isBang = true) | SynExpr.DoBang _ | SynExpr.WhileBang _ | SynExpr.TraitCall _ @@ -10622,12 +10622,12 @@ and TcLinearExprs bodyChecker cenv env overallTy tpenv isCompExpr synExpr cont = TcLinearExprs bodyChecker cenv env2 overallTy tpenv isCompExpr expr2 (fun (expr2R, tpenv) -> cont (Expr.Sequential (expr1R, expr2R, NormalSeq, m), tpenv)) - | SynExpr.LetOrUse (isRecursive = isRec; isUse= isUse; bindings = binds; body = body; range = m) when not (isUse && isCompExpr) -> + | SynExpr.LetOrUse ({ IsRecursive = isRec; Bindings = binds; Body = body; Range = m } as letOrUse) when not (letOrUse.IsUse && isCompExpr) -> if isRec then // TcLinearExprs processes at most one recursive binding, this is not tailcalling CheckRecursiveBindingIds binds let binds = List.map (fun x -> RecDefnBindingInfo(ExprContainerInfo, NoNewSlots, ExpressionBinding, x)) binds - if isUse then errorR(Error(FSComp.SR.tcBindingCannotBeUseAndRec(), m)) + if letOrUse.IsUse then errorR(Error(FSComp.SR.tcBindingCannotBeUseAndRec(), m)) let binds, envinner, tpenv = TcLetrecBindings ErrorOnOverrides cenv env tpenv (binds, m, m) let envinner = { envinner with eIsControlFlow = true } let bodyExpr, tpenv = bodyChecker overallTy envinner tpenv body @@ -10635,7 +10635,7 @@ and TcLinearExprs bodyChecker cenv env overallTy tpenv isCompExpr synExpr cont = cont (bodyExpr, tpenv) else // TcLinearExprs processes multiple 'let' bindings in a tail recursive way - let mkf, envinner, tpenv = TcLetBinding cenv isUse env ExprContainerInfo ExpressionBinding tpenv (binds, m, body.Range) + let mkf, envinner, tpenv = TcLetBinding cenv letOrUse.IsUse env ExprContainerInfo ExpressionBinding tpenv (binds, m, body.Range) let envinner = ShrinkContext envinner m body.Range let envinner = { envinner with eIsControlFlow = true } // tailcall diff --git a/src/Compiler/Checking/Expressions/CheckExpressionsOps.fs b/src/Compiler/Checking/Expressions/CheckExpressionsOps.fs index 6c12485c4ed..feb281c3429 100644 --- a/src/Compiler/Checking/Expressions/CheckExpressionsOps.fs +++ b/src/Compiler/Checking/Expressions/CheckExpressionsOps.fs @@ -197,8 +197,8 @@ let YieldFree (cenv: TcFileState) expr = | SynExpr.MatchBang(clauses = clauses) -> clauses |> List.forall (fun (SynMatchClause(resultExpr = res)) -> YieldFree res) | SynExpr.For(doBody = body) - | SynExpr.TryFinally(tryExpr = body) - | SynExpr.LetOrUse(body = body) + | SynExpr.TryFinally(tryExpr = body) -> YieldFree body + | SynExpr.LetOrUse({ Body = body }) | SynExpr.While(doExpr = body) | SynExpr.WhileBang(doExpr = body) | SynExpr.ForEach(bodyExpr = body) -> YieldFree body @@ -223,13 +223,12 @@ let YieldFree (cenv: TcFileState) expr = | SynExpr.MatchBang(clauses = clauses) -> clauses |> List.forall (fun (SynMatchClause(resultExpr = res)) -> YieldFree res) | SynExpr.For(doBody = body) - | SynExpr.TryFinally(tryExpr = body) - | SynExpr.LetOrUse(body = body) + | SynExpr.TryFinally(tryExpr = body) -> YieldFree body + | SynExpr.LetOrUse({ Body = body } as letOrUse) when not letOrUse.IsBang -> YieldFree body | SynExpr.While(doExpr = body) | SynExpr.WhileBang(doExpr = body) | SynExpr.ForEach(bodyExpr = body) -> YieldFree body - - | SynExpr.LetOrUse(isBang = true) + | SynExpr.LetOrUse letOrUse when letOrUse.IsBang -> false | SynExpr.YieldOrReturnFrom _ | SynExpr.YieldOrReturn _ | SynExpr.ImplicitZero _ diff --git a/src/Compiler/Checking/Expressions/CheckSequenceExpressions.fs b/src/Compiler/Checking/Expressions/CheckSequenceExpressions.fs index 0a12e48b306..6daf17e98b7 100644 --- a/src/Compiler/Checking/Expressions/CheckSequenceExpressions.fs +++ b/src/Compiler/Checking/Expressions/CheckSequenceExpressions.fs @@ -216,7 +216,7 @@ let TcSequenceExpression (cenv: TcFileState) env tpenv comp (overallTy: OverallT Some(mkCond spIfToThen mIfToEndOfElseBranch genOuterTy guardExpr' thenExpr elseExpr, tpenv) // 'let x = expr in expr' - | SynExpr.LetOrUse(isUse = false) -> + | SynExpr.LetOrUse letOrUse when not letOrUse.IsUse -> TcLinearExprs (fun overallTy envinner tpenv e -> tcSequenceExprBody envinner overallTy.Commit tpenv e) cenv @@ -229,12 +229,15 @@ let TcSequenceExpression (cenv: TcFileState) env tpenv comp (overallTy: OverallT |> Some // 'use x = expr in expr' - | SynExpr.LetOrUse( - isUse = true - bindings = [ SynBinding(kind = SynBindingKind.Normal; headPat = pat; expr = rhsExpr) ] - body = innerComp - range = wholeExprMark - trivia = { LetOrUseKeyword = mBind }) -> + | SynExpr.LetOrUse({ + Bindings = [ SynBinding( + kind = SynBindingKind.Normal + headPat = pat + expr = rhsExpr + trivia = { LeadingKeyword = leadingKeyword }) ] + Body = innerComp + Range = wholeExprMark + } as letOrUse) when letOrUse.IsUse -> let bindPatTy = NewInferenceType g let inputExprTy = NewInferenceType g @@ -257,12 +260,12 @@ let TcSequenceExpression (cenv: TcFileState) env tpenv comp (overallTy: OverallT let matchv, matchExpr = compileSeqExprMatchClauses cenv envinner inputExprMark (pat', vspecs) innerExpr (Some inputExpr) bindPatTy genOuterTy - let consumeExpr = mkLambda mBind matchv (matchExpr, genOuterTy) + let consumeExpr = mkLambda leadingKeyword.Range matchv (matchExpr, genOuterTy) - // The 'mBind' is attached to the lambda + // The 'leadingKeyword.Range' is attached to the lambda Some(mkSeqUsing cenv env wholeExprMark bindPatTy genOuterTy inputExpr consumeExpr, tpenv) - | SynExpr.LetOrUse(isBang = true; range = m) -> error (Error(FSComp.SR.tcUseForInSequenceExpression (), m)) + | SynExpr.LetOrUse letOrUse when letOrUse.IsBang -> error (Error(FSComp.SR.tcUseForInSequenceExpression (), letOrUse.Range)) | SynExpr.Match(spMatch, expr, clauses, _m, _trivia) -> let inputExpr, inputTy, tpenv = TcExprOfUnknownType cenv env tpenv expr diff --git a/src/Compiler/Driver/GraphChecking/FileContentMapping.fs b/src/Compiler/Driver/GraphChecking/FileContentMapping.fs index efa1b935fc8..12881a8dbe2 100644 --- a/src/Compiler/Driver/GraphChecking/FileContentMapping.fs +++ b/src/Compiler/Driver/GraphChecking/FileContentMapping.fs @@ -437,7 +437,7 @@ let visitSynExpr (e: SynExpr) : FileContentEntry list = visit funcExpr (fun funcNodes -> visit argExpr (fun argNodes -> funcNodes @ argNodes |> continuation)) | SynExpr.TypeApp(expr = expr; typeArgs = typeArgs) -> visit expr (fun exprNodes -> exprNodes @ List.collect visitSynType typeArgs |> continuation) - | SynExpr.LetOrUse(bindings = bindings; body = body) -> + | SynExpr.LetOrUse({ Bindings = bindings; Body = body }) -> visit body (fun nodes -> List.collect visitBinding bindings @ nodes |> continuation) | SynExpr.TryWith(tryExpr = tryExpr; withCases = withCases) -> visit tryExpr (fun nodes -> nodes @ List.collect visitSynMatchClause withCases |> continuation) diff --git a/src/Compiler/Interactive/fsi.fs b/src/Compiler/Interactive/fsi.fs index a52b5a70d42..ca96324426a 100644 --- a/src/Compiler/Interactive/fsi.fs +++ b/src/Compiler/Interactive/fsi.fs @@ -2587,7 +2587,7 @@ type internal FsiDynamicCompiler ) let bindingA = mkBind (mkSynPatVar None itID) expr - let defA = SynModuleDecl.Let(false, [ bindingA ], m) + let defA = SynModuleDecl.Let(false, [ bindingA ], m, SynModuleDeclLetTrivia.Zero) [ defA ] // Construct an invisible call to Debugger.Break(), in the specified range diff --git a/src/Compiler/Service/FSharpParseFileResults.fs b/src/Compiler/Service/FSharpParseFileResults.fs index 07eb010a767..434974de754 100644 --- a/src/Compiler/Service/FSharpParseFileResults.fs +++ b/src/Compiler/Service/FSharpParseFileResults.fs @@ -102,7 +102,7 @@ type FSharpParseFileResults(diagnostics: FSharpDiagnostic[], input: ParsedInput, else walkBinding expr2 workingRange - | SynExpr.LetOrUse(bindings = bindings; body = bodyExpr) -> + | SynExpr.LetOrUse({ Bindings = bindings; Body = bodyExpr }) -> let potentialNestedRange = bindings |> List.tryFind (fun binding -> rangeContainsPos binding.RangeOfBindingWithRhs pos) @@ -696,7 +696,7 @@ type FSharpParseFileResults(diagnostics: FSharpDiagnostic[], input: ParsedInput, yield! walkExprOpt true whenExpr yield! walkExpr true tgtExpr - | SynExpr.LetOrUse(bindings = binds; body = bodyExpr) -> + | SynExpr.LetOrUse({ Bindings = binds; Body = bodyExpr }) -> yield! walkBinds binds yield! walkExpr true bodyExpr @@ -791,7 +791,7 @@ type FSharpParseFileResults(diagnostics: FSharpDiagnostic[], input: ParsedInput, else [ match memb with - | SynMemberDefn.LetBindings(binds, _, _, _) -> yield! walkBinds binds + | SynMemberDefn.LetBindings(bindings = binds) -> yield! walkBinds binds | SynMemberDefn.AutoProperty(synExpr = synExpr) -> yield! walkExpr true synExpr | SynMemberDefn.ImplicitCtor(range = m) -> yield! checkRange m | SynMemberDefn.Member(bind, _) -> yield! walkBind bind @@ -821,7 +821,7 @@ type FSharpParseFileResults(diagnostics: FSharpDiagnostic[], input: ParsedInput, let rec walkDecl decl = [ match decl with - | SynModuleDecl.Let(_, binds, m) when isMatchRange m -> yield! walkBinds binds + | SynModuleDecl.Let(bindings = binds; range = m) when isMatchRange m -> yield! walkBinds binds | SynModuleDecl.Expr(expr, m) when isMatchRange m -> yield! walkExpr true expr | SynModuleDecl.ModuleAbbrev _ -> () | SynModuleDecl.NestedModule(decls = decls; range = m) when isMatchRange m -> diff --git a/src/Compiler/Service/ServiceInterfaceStubGenerator.fs b/src/Compiler/Service/ServiceInterfaceStubGenerator.fs index c53ab5d7583..2687b4e0f54 100644 --- a/src/Compiler/Service/ServiceInterfaceStubGenerator.fs +++ b/src/Compiler/Service/ServiceInterfaceStubGenerator.fs @@ -779,7 +779,7 @@ module InterfaceStubGenerator = else match decl with | SynModuleDecl.Exception(SynExceptionDefn(_, _, synMembers, _), _) -> List.tryPick walkSynMemberDefn synMembers - | SynModuleDecl.Let(_isRecursive, bindings, _range) -> List.tryPick walkBinding bindings + | SynModuleDecl.Let(bindings = bindings) -> List.tryPick walkBinding bindings | SynModuleDecl.ModuleAbbrev(_lhs, _rhs, _range) -> None | SynModuleDecl.NamespaceFragment(fragment) -> walkSynModuleOrNamespace fragment | SynModuleDecl.NestedModule(decls = modules) -> List.tryPick walkSynModuleDecl modules @@ -826,7 +826,7 @@ module InterfaceStubGenerator = | Some getBinding, Some setBinding -> walkBinding getBinding |> Option.orElseWith (fun () -> walkBinding setBinding) | SynMemberDefn.NestedType(typeDef, _access, _range) -> walkSynTypeDefn typeDef | SynMemberDefn.ValField _ -> None - | SynMemberDefn.LetBindings(bindings, _isStatic, _isRec, _range) -> List.tryPick walkBinding bindings + | SynMemberDefn.LetBindings(bindings = bindings) -> List.tryPick walkBinding bindings | SynMemberDefn.Open _ | SynMemberDefn.ImplicitCtor _ | SynMemberDefn.Inherit _ -> None @@ -909,8 +909,10 @@ module InterfaceStubGenerator = | SynExpr.TypeApp(synExpr, _, _synTypeList, _commas, _, _, _range) -> walkExpr synExpr - | SynExpr.LetOrUse(bindings = synBindingList; body = synExpr) -> - Option.orElse (List.tryPick walkBinding synBindingList) (walkExpr synExpr) + | SynExpr.LetOrUse({ + Bindings = synBindingList + Body = synExpr + }) -> Option.orElse (List.tryPick walkBinding synBindingList) (walkExpr synExpr) | SynExpr.TryWith(tryExpr = synExpr) -> walkExpr synExpr diff --git a/src/Compiler/Service/ServiceNavigation.fs b/src/Compiler/Service/ServiceNavigation.fs index 25708f87f5b..5c15f756133 100755 --- a/src/Compiler/Service/ServiceNavigation.fs +++ b/src/Compiler/Service/ServiceNavigation.fs @@ -324,7 +324,7 @@ module NavigationImpl = |> List.map (fun md -> md.Range, (match md with - | SynMemberDefn.LetBindings(binds, _, _, _) -> List.collect (processBinding false enclosingEntityKind false) binds + | SynMemberDefn.LetBindings(bindings = binds) -> List.collect (processBinding false enclosingEntityKind false) binds | SynMemberDefn.GetSetMember(Some bind, None, _, _) | SynMemberDefn.GetSetMember(None, Some bind, _, _) | SynMemberDefn.Member(bind, _) -> processBinding true enclosingEntityKind false bind @@ -366,7 +366,7 @@ module NavigationImpl = [ for decl in decls do match decl with - | SynModuleDecl.Let(_, binds, _) -> + | SynModuleDecl.Let(bindings = binds) -> for bind in binds do yield! processBinding false NavigationEntityKind.Module false bind | _ -> () @@ -955,7 +955,7 @@ module NavigateTo = for m in synMembers do walkSynMemberDefn m container - | SynModuleDecl.Let(_, bindings, _) -> + | SynModuleDecl.Let(bindings = bindings) -> for binding in bindings do addBinding binding None container | SynModuleDecl.ModuleAbbrev(lhs, _, _) -> addModuleAbbreviation lhs false container @@ -1023,7 +1023,7 @@ module NavigateTo = Option.iter (fun b -> addBinding b None container) setBinding | SynMemberDefn.NestedType(typeDef, _, _) -> walkSynTypeDefn typeDef container | SynMemberDefn.ValField(fieldInfo = field) -> addField field false container - | SynMemberDefn.LetBindings(bindings, _, _, _) -> + | SynMemberDefn.LetBindings(bindings = bindings) -> bindings |> List.iter (fun binding -> addBinding binding (Some NavigableItemKind.Field) container) | SynMemberDefn.Open _ diff --git a/src/Compiler/Service/ServiceParseTreeWalk.fs b/src/Compiler/Service/ServiceParseTreeWalk.fs index a3af1b3ba08..51e2b8ac43b 100644 --- a/src/Compiler/Service/ServiceParseTreeWalk.fs +++ b/src/Compiler/Service/ServiceParseTreeWalk.fs @@ -342,7 +342,7 @@ module SyntaxTraversal = |> List.map (fun x -> dive x x.Range (traverseSynModuleDecl path)) |> List.append (attributeApplicationDives path attributes) |> pick decl - | SynModuleDecl.Let(isRecursive, synBindingList, range) -> + | SynModuleDecl.Let(isRecursive = isRecursive; bindings = synBindingList; range = range) -> match visitor.VisitLetOrUse(path, isRecursive, traverseSynBinding path, synBindingList, range) with | Some x -> Some x | None -> @@ -679,7 +679,12 @@ module SyntaxTraversal = ] |> pick expr - | SynExpr.LetOrUse(isRecursive = isRecursive; bindings = synBindingList; body = synExpr; range = range) -> + | SynExpr.LetOrUse({ + IsRecursive = isRecursive + Bindings = synBindingList + Body = synExpr + Range = range + }) -> match visitor.VisitLetOrUse(path, isRecursive, traverseSynBinding path, synBindingList, range) with | None -> [ @@ -957,7 +962,7 @@ module SyntaxTraversal = match traverseSynExpr path synExpr with | None -> attributeApplicationDives path attributes |> pick attributes | x -> x - | SynMemberDefn.LetBindings(synBindingList, isRecursive, _, range) -> + | SynMemberDefn.LetBindings(bindings = synBindingList; isRecursive = isRecursive; range = range) -> match visitor.VisitLetOrUse(path, isRecursive, traverseSynBinding path, synBindingList, range) with | None -> synBindingList diff --git a/src/Compiler/Service/ServiceParsedInputOps.fs b/src/Compiler/Service/ServiceParsedInputOps.fs index 3065bc7f179..ed1a4da5bf5 100644 --- a/src/Compiler/Service/ServiceParsedInputOps.fs +++ b/src/Compiler/Service/ServiceParsedInputOps.fs @@ -834,7 +834,7 @@ module ParsedInput = walkExprWithKind (Some EntityKind.Type) e |> Option.orElseWith (fun () -> List.tryPick walkType tys) - | SynExpr.LetOrUse(bindings = bindings; body = e) -> + | SynExpr.LetOrUse({ Bindings = bindings; Body = e }) -> List.tryPick walkBinding bindings |> Option.orElseWith (fun () -> walkExprWithKind parentKind e) @@ -906,7 +906,7 @@ module ParsedInput = | SynMemberDefn.ImplicitInherit(t, e, _, _, _) -> walkType t |> Option.orElseWith (fun () -> walkExpr e) - | SynMemberDefn.LetBindings(bindings, _, _, _) -> List.tryPick walkBinding bindings + | SynMemberDefn.LetBindings(bindings = bindings) -> List.tryPick walkBinding bindings | SynMemberDefn.Interface(interfaceType = t; members = members) -> walkType t @@ -990,7 +990,7 @@ module ParsedInput = | SynModuleDecl.Open _ -> None - | SynModuleDecl.Let(_, bindings, _) -> List.tryPick walkBinding bindings + | SynModuleDecl.Let(bindings = bindings) -> List.tryPick walkBinding bindings | SynModuleDecl.Expr(expr, _) -> walkExpr expr @@ -2127,7 +2127,7 @@ module ParsedInput = List.iter walkType tys walkExpr e - | SynExpr.LetOrUse(bindings = bindings; body = e) -> + | SynExpr.LetOrUse({ Bindings = bindings; Body = e }) -> List.iter walkBinding bindings walkExpr e @@ -2252,7 +2252,7 @@ module ParsedInput = | SynMemberDefn.ImplicitInherit(t, e, _, _, _) -> walkType t walkExpr e - | SynMemberDefn.LetBindings(bindings, _, _, _) -> List.iter walkBinding bindings + | SynMemberDefn.LetBindings(bindings = bindings) -> List.iter walkBinding bindings | SynMemberDefn.Interface(interfaceType = t; members = members) -> walkType t members |> Option.iter (List.iter walkMember) @@ -2331,7 +2331,7 @@ module ParsedInput = | SynModuleDecl.NestedModule(moduleInfo = info; decls = modules) -> walkComponentInfo false info List.iter walkSynModuleDecl modules - | SynModuleDecl.Let(_, bindings, _) -> List.iter walkBinding bindings + | SynModuleDecl.Let(bindings = bindings) -> List.iter walkBinding bindings | SynModuleDecl.Expr(expr, _) -> walkExpr expr | SynModuleDecl.Types(types, _) -> List.iter walkTypeDefn types | SynModuleDecl.Attributes(Attributes attrs, _) -> List.iter walkAttribute attrs diff --git a/src/Compiler/Service/ServiceStructure.fs b/src/Compiler/Service/ServiceStructure.fs index c507e82b00b..055cb9f273b 100644 --- a/src/Compiler/Service/ServiceStructure.fs +++ b/src/Compiler/Service/ServiceStructure.fs @@ -263,7 +263,7 @@ module Structure = rcheck Scope.For Collapse.Below r r parseExpr e - | SynExpr.LetOrUse(bindings = bindings; body = body) -> + | SynExpr.LetOrUse({ Bindings = bindings; Body = body }) -> parseBindings bindings parseExpr body @@ -571,7 +571,7 @@ module Structure = |> Option.map (fun b -> SynMemberDefn.Member(b, m)) |> Option.iter (parseSynMemberDefn objectModelRange) - | SynMemberDefn.LetBindings(bindings, _, _, _) -> parseBindings bindings + | SynMemberDefn.LetBindings(bindings = bindings) -> parseBindings bindings | SynMemberDefn.Interface(interfaceType = tp; members = iMembers; range = r) -> rcheck Scope.Interface Collapse.Below d.Range (Range.endToEnd tp.Range d.Range) @@ -772,7 +772,7 @@ module Structure = let rec parseDeclaration (decl: SynModuleDecl) = match decl with - | SynModuleDecl.Let(_, bindings, r) -> + | SynModuleDecl.Let(bindings = bindings; range = r) -> for binding in bindings do let collapse = Range.endToEnd binding.RangeOfBindingWithoutRhs r rcheck Scope.LetOrUse Collapse.Below r collapse diff --git a/src/Compiler/Service/ServiceXmlDocParser.fs b/src/Compiler/Service/ServiceXmlDocParser.fs index f320606cb33..a57f1485617 100644 --- a/src/Compiler/Service/ServiceXmlDocParser.fs +++ b/src/Compiler/Service/ServiceXmlDocParser.fs @@ -82,7 +82,7 @@ module XmlDocParsing = | SynModuleDecl.NestedModule(decls = decls) -> for decl in decls do yield! getXmlDocablesSynModuleDecl decl - | SynModuleDecl.Let(_, synBindingList, range) -> + | SynModuleDecl.Let(bindings = synBindingList; range = range) -> let anyXmlDoc = synBindingList |> List.exists (fun (SynBinding(xmlDoc = preXmlDoc)) -> not (isEmptyXmlDoc preXmlDoc)) diff --git a/src/Compiler/Service/SynExpr.fs b/src/Compiler/Service/SynExpr.fs index 9fd1b3a888a..4a020cd3835 100644 --- a/src/Compiler/Service/SynExpr.fs +++ b/src/Compiler/Service/SynExpr.fs @@ -420,7 +420,7 @@ module SynExpr = | SynExpr.DotNamedIndexedPropertySet(rhsExpr = expr) | SynExpr.DotIndexedSet(valueExpr = expr) | SynExpr.LongIdentSet(expr = expr) - | SynExpr.LetOrUse(body = expr) + | SynExpr.LetOrUse({ Body = expr }) | SynExpr.Lambda(body = expr) | SynExpr.Match(clauses = Last(SynMatchClause(resultExpr = expr))) | SynExpr.MatchLambda(matchClauses = Last(SynMatchClause(resultExpr = expr))) @@ -1135,7 +1135,7 @@ module SynExpr = | SynExpr.ForEach(bodyExpr = Is inner), SynExpr.Typed _ | SynExpr.Match _, SynExpr.Typed _ | SynExpr.Do _, SynExpr.Typed _ - | SynExpr.LetOrUse(body = Is inner), SynExpr.Typed _ + | SynExpr.LetOrUse({ Body = Is inner }), SynExpr.Typed _ | SynExpr.TryWith _, SynExpr.Typed _ | SynExpr.TryFinally _, SynExpr.Typed _ -> false | _, SynExpr.Typed _ -> true @@ -1164,7 +1164,8 @@ module SynExpr = ambiguous || dangling inner - | OuterBinaryExpr inner (_, Right), (SynExpr.Sequential _ | SynExpr.LetOrUse(trivia = { InKeyword = None })) -> true + | OuterBinaryExpr inner (_, Right), (SynExpr.Sequential _) -> true + | OuterBinaryExpr inner (_, Right), (SynExpr.LetOrUse({ Trivia = { InKeyword = None } })) -> true | OuterBinaryExpr inner (_, Right), inner -> dangling inner // new T(expr) diff --git a/src/Compiler/Service/SynPat.fs b/src/Compiler/Service/SynPat.fs index 459f1586da4..a94b617aed9 100644 --- a/src/Compiler/Service/SynPat.fs +++ b/src/Compiler/Service/SynPat.fs @@ -72,6 +72,11 @@ module SynPat = | SynPat.QuoteExpr _ -> ValueSome Atomic | _ -> ValueNone + let (|LetOrUseBang|_|) = + function + | SynExpr.LetOrUse letOrUse when letOrUse.IsBang -> ValueSome() + | _ -> ValueNone + let shouldBeParenthesizedInContext path pat : bool = match pat, path with // Parens are needed in: @@ -92,17 +97,17 @@ module SynPat = // set (x: …, y: …) = … | SynPat.Typed _, SyntaxNode.SynPat(Rightmost(SynPat.Paren(Is pat, _))) :: SyntaxNode.SynMatchClause _ :: _ | Rightmost(SynPat.Typed _), SyntaxNode.SynMatchClause _ :: _ - | SynPat.Typed _, SyntaxNode.SynExpr(SynExpr.LetOrUse(isBang = true)) :: _ - | SynPat.Typed _, SyntaxNode.SynPat(SynPat.Tuple(isStruct = false)) :: SyntaxNode.SynExpr(SynExpr.LetOrUse(isBang = true)) :: _ - | SynPat.Tuple(isStruct = false; elementPats = AnyTyped), SyntaxNode.SynExpr(SynExpr.LetOrUse(isBang = true)) :: _ + | SynPat.Typed _, SyntaxNode.SynExpr(LetOrUseBang) :: _ + | SynPat.Typed _, SyntaxNode.SynPat(SynPat.Tuple(isStruct = false)) :: SyntaxNode.SynExpr(LetOrUseBang) :: _ + | SynPat.Tuple(isStruct = false; elementPats = AnyTyped), SyntaxNode.SynExpr(LetOrUseBang) :: _ | SynPat.Typed _, SyntaxNode.SynPat(SynPat.Tuple(isStruct = false)) :: SyntaxNode.SynBinding _ :: _ | SynPat.Tuple(isStruct = false; elementPats = AnyTyped), SyntaxNode.SynBinding _ :: _ // let! (_ : obj) = … - | SynPat.Typed _, SyntaxNode.SynBinding _ :: SyntaxNode.SynExpr(SynExpr.LetOrUse(isBang = true)) :: _ -> true + | SynPat.Typed _, SyntaxNode.SynBinding _ :: SyntaxNode.SynExpr(LetOrUseBang) :: _ -> true // let! (A _) = … - | SynPat.LongIdent _, SyntaxNode.SynBinding _ :: SyntaxNode.SynExpr(SynExpr.LetOrUse(isBang = true)) :: _ -> false + | SynPat.LongIdent _, SyntaxNode.SynBinding _ :: SyntaxNode.SynExpr(LetOrUseBang) :: _ -> false | SynPat.LongIdent(argPats = SynArgPats.Pats(_ :: _)), SyntaxNode.SynBinding _ :: _ | SynPat.LongIdent(argPats = SynArgPats.Pats(_ :: _)), SyntaxNode.SynExpr(SynExpr.Lambda _) :: _ | SynPat.Tuple(isStruct = false), SyntaxNode.SynExpr(SynExpr.Lambda(parsedData = Some _)) :: _ @@ -149,7 +154,7 @@ module SynPat = | SyntaxNode.SynPat _ :: path -> wouldMoveRhsOffsides (n + 1) pat path | SyntaxNode.SynExpr(SynExpr.Lambda(body = rhs)) :: _ - | SyntaxNode.SynExpr(SynExpr.LetOrUse(body = rhs)) :: _ + | SyntaxNode.SynExpr(SynExpr.LetOrUse({ Body = rhs })) :: _ | SyntaxNode.SynBinding(SynBinding(expr = rhs)) :: _ | SyntaxNode.SynMatchClause(SynMatchClause(resultExpr = rhs)) :: _ -> let rhsRange = rhs.Range @@ -248,7 +253,7 @@ module SynPat = // fun (x) -> … | _, SyntaxNode.SynBinding _ :: _ | _, SyntaxNode.SynExpr(SynExpr.ForEach _) :: _ - | _, SyntaxNode.SynExpr(SynExpr.LetOrUse(isBang = true)) :: _ + | _, SyntaxNode.SynExpr(LetOrUseBang) :: _ | _, SyntaxNode.SynMatchClause _ :: _ | Atomic, SyntaxNode.SynExpr(SynExpr.Lambda(parsedData = Some _)) :: _ -> false diff --git a/src/Compiler/SyntaxTree/ParseHelpers.fs b/src/Compiler/SyntaxTree/ParseHelpers.fs index 9df29ddbf79..db946e539cb 100644 --- a/src/Compiler/SyntaxTree/ParseHelpers.fs +++ b/src/Compiler/SyntaxTree/ParseHelpers.fs @@ -824,7 +824,7 @@ let checkEndOfFileError t = type BindingSet = BindingSetPreAttrs of range * bool * bool * (SynAttributes -> SynAccess option -> SynAttributes * SynBinding list) * range let mkClassMemberLocalBindings - (isStatic, initialRangeOpt, attrs, vis, BindingSetPreAttrs(_, isRec, isUse, declsPreAttrs, bindingSetRange)) + (isStatic, initialRangeOpt, attrs, vis, BindingSetPreAttrs(_, isRec, isUse, declsPreAttrs, bindingSetRange), mIn) = let ignoredFreeAttrs, decls = declsPreAttrs attrs vis @@ -834,6 +834,10 @@ let mkClassMemberLocalBindings | Some m -> unionRanges m bindingSetRange // decls could have a leading attribute |> fun m -> (m, decls) ||> unionRangeWithListBy (fun (SynBinding(range = m)) -> m) + |> fun m -> + match mIn with + | None -> m + | Some mIn -> unionRanges m mIn if not (isNil ignoredFreeAttrs) then warning (Error(FSComp.SR.parsAttributesIgnored (), mWhole)) @@ -865,18 +869,16 @@ let mkClassMemberLocalBindings SynBinding(a0, k, il, im, a, x, v, h, ri, e, m, dp, trivia) :: rest | None, decls -> decls - SynMemberDefn.LetBindings(decls, isStatic, isRec, mWhole) + SynMemberDefn.LetBindings(decls, isStatic, isRec, mWhole, { InKeyword = mIn }) /// Creates a SynExprAndBang node for and! bindings in computation expressions -let mkAndBang - (mKeyword: range, pat: SynPat, returnInfo: SynBindingReturnInfo option, rhs: SynExpr, mWhole: range, mEquals: range, mIn: range option) - = +let mkAndBang (mKeyword: range, pat: SynPat, returnInfo: SynBindingReturnInfo option, rhs: SynExpr, mWhole: range, mEquals: range) = let spBind = DebugPointAtBinding.Yes(unionRanges mKeyword rhs.Range) let trivia: SynBindingTrivia = { - LeadingKeyword = SynLeadingKeyword.And mKeyword - InlineKeyword = mIn + LeadingKeyword = SynLeadingKeyword.AndBang mKeyword + InlineKeyword = None EqualsRange = Some mEquals } @@ -896,16 +898,21 @@ let mkAndBang trivia = trivia ) -let mkDefnBindings (mWhole, BindingSetPreAttrs(_, isRec, isUse, declsPreAttrs, _bindingSetRange), attrs, vis, attrsm) = +let mkDefnBindings (mWhole, BindingSetPreAttrs(_, isRec, isUse, declsPreAttrs, _bindingSetRange), attrs, vis, attrsm, mIn) = if isUse then warning (Error(FSComp.SR.parsUseBindingsIllegalInModules (), mWhole)) let freeAttrs, decls = declsPreAttrs attrs vis // decls might have an extended range due to leading attributes let mWhole = - (mWhole, decls) ||> unionRangeWithListBy (fun (SynBinding(range = m)) -> m) + (mWhole, decls) + ||> unionRangeWithListBy (fun (SynBinding(range = m)) -> m) + |> fun m -> + match mIn with + | None -> m + | Some mIn -> unionRanges m mIn - let letDecls = [ SynModuleDecl.Let(isRec, decls, mWhole) ] + let letDecls = [ SynModuleDecl.Let(isRec, decls, mWhole, { InKeyword = mIn }) ] let attrDecls = if not (isNil freeAttrs) then @@ -1067,108 +1074,67 @@ let leadingKeywordIsAbstract = | SynLeadingKeyword.StaticAbstractMember _ -> true | _ -> false -/// Unified helper for creating let/let!/use/use! expressions -/// Creates SynExpr.LetOrUse based on isBang parameter -/// Handles all four cases: 'let', 'let!', 'use', and 'use!' -let mkLetExpression +let mkLetExpression (mIn: range option, mWhole: range, body: SynExpr, bindingInfo: BindingSet) = + let (BindingSetPreAttrs(_, isRec, _isUse, declsPreAttrs, _)) = bindingInfo + let ignoredFreeAttrs, decls = declsPreAttrs [] None + + let mWhole = + match decls with + | SynBinding(xmlDoc = xmlDoc) :: _ -> unionRangeWithXmlDoc xmlDoc mWhole + | _ -> mWhole + + if not (isNil ignoredFreeAttrs) then + warning (Error(FSComp.SR.parsAttributesIgnored (), mWhole)) + + SynExpr.LetOrUse( + { + IsRecursive = isRec + Bindings = decls + Body = body + Range = mWhole + Trivia = { InKeyword = mIn } + } + ) + +let mkLetBangExpression ( - isBang: bool, mIn: range option, mWhole: range, body: SynExpr, - bindingInfo: BindingSet option, - bangInfo: (SynPat * SynBindingReturnInfo option * SynExpr * SynBinding list * range * range option * bool) option + bangInfo: (SynPat * SynBindingReturnInfo option * SynExpr * SynBinding list * SynLeadingKeyword * range option * bool) ) = - if isBang then - match bangInfo with - | Some(pat, returnInfo, rhs, andBangs, mKeyword, mEquals, isUse) -> - let spBind = DebugPointAtBinding.Yes(unionRanges mKeyword rhs.Range) - - let trivia: SynBindingTrivia = - { - LeadingKeyword = - if isUse then - SynLeadingKeyword.Use mKeyword - else - SynLeadingKeyword.Let mKeyword - InlineKeyword = mIn - EqualsRange = mEquals - } - - let binding = - SynBinding( - accessibility = None, - kind = SynBindingKind.Normal, - isInline = false, - isMutable = false, - attributes = [], - xmlDoc = PreXmlDoc.Empty, - valData = SynInfo.emptySynValData, - headPat = pat, - returnInfo = returnInfo, - expr = rhs, - range = unionRanges mKeyword rhs.Range, - debugPoint = spBind, - trivia = trivia - ) + let (pat, returnInfo, rhs, andBangs, leadingKeyword, mEquals, _isUse) = bangInfo + let spBind = DebugPointAtBinding.Yes(unionRanges leadingKeyword.Range rhs.Range) - SynExpr.LetOrUse( - isRecursive = false, - isUse = isUse, - isFromSource = true, - isBang = true, - bindings = binding :: andBangs, - body = body, - range = mWhole, - trivia = - { - LetOrUseKeyword = mKeyword - InKeyword = mIn - EqualsRange = mEquals - } - ) + let trivia: SynBindingTrivia = + { + LeadingKeyword = leadingKeyword + InlineKeyword = None + EqualsRange = mEquals + } - | None -> SynExpr.FromParseError(body, mWhole) - else - match bindingInfo with - | Some(BindingSetPreAttrs(_, isRec, isUse, declsPreAttrs, _)) -> - let ignoredFreeAttrs, decls = declsPreAttrs [] None - - let mWhole = - match decls with - | SynBinding(xmlDoc = xmlDoc) :: _ -> unionRangeWithXmlDoc xmlDoc mWhole - | _ -> mWhole - - if not (isNil ignoredFreeAttrs) then - warning (Error(FSComp.SR.parsAttributesIgnored (), mWhole)) - - let mIn' = - mIn - |> Option.bind (fun (mIn: range) -> if posEq mIn.Start body.Range.Start then None else Some mIn) - - let mLetOrUse = - match decls with - | SynBinding(trivia = trivia) :: _ -> trivia.LeadingKeyword.Range - | _ -> range0 - - let mEquals = - match decls with - | SynBinding(trivia = trivia) :: _ -> trivia.EqualsRange - | _ -> None - - SynExpr.LetOrUse( - isRecursive = isRec, - isUse = isUse, - isFromSource = true, - isBang = false, - bindings = decls, - body = body, - range = mWhole, - trivia = - { - LetOrUseKeyword = mLetOrUse - InKeyword = mIn' - EqualsRange = mEquals - } - ) - | None -> SynExpr.FromParseError(body, mWhole) + let binding = + SynBinding( + accessibility = None, + kind = SynBindingKind.Normal, + isInline = false, + isMutable = false, + attributes = [], + xmlDoc = PreXmlDoc.Empty, + valData = SynInfo.emptySynValData, + headPat = pat, + returnInfo = returnInfo, + expr = rhs, + range = unionRanges leadingKeyword.Range rhs.Range, + debugPoint = spBind, + trivia = trivia + ) + + SynExpr.LetOrUse + { + IsRecursive = false + Bindings = binding :: andBangs + Body = body + Range = mWhole + Trivia = { InKeyword = mIn } + } diff --git a/src/Compiler/SyntaxTree/ParseHelpers.fsi b/src/Compiler/SyntaxTree/ParseHelpers.fsi index c8c2ece5d44..637516d56ca 100644 --- a/src/Compiler/SyntaxTree/ParseHelpers.fsi +++ b/src/Compiler/SyntaxTree/ParseHelpers.fsi @@ -193,18 +193,26 @@ type BindingSet = range val mkClassMemberLocalBindings: - isStatic: bool * initialRangeOpt: range option * attrs: SynAttributes * vis: SynAccess option * BindingSet -> + isStatic: bool * + initialRangeOpt: range option * + attrs: SynAttributes * + vis: SynAccess option * + bindingSet: BindingSet * + mIn: range option -> SynMemberDefn /// Creates SynExpr.LetOrUse based on isBang parameter -/// Handles all four cases: 'let', 'let!', 'use', and 'use!' -val mkLetExpression: - isBang: bool * +/// Handles 'let' and 'use' +val mkLetExpression: mIn: range option * mWhole: range * body: SynExpr * bindingInfo: BindingSet -> SynExpr + +/// Helper for creating let!/use! expressions +/// Handles 'let!' and 'use!' +val mkLetBangExpression: mIn: range option * mWhole: range * body: SynExpr * - bindingInfo: BindingSet option * - bangInfo: (SynPat * SynBindingReturnInfo option * SynExpr * SynBinding list * range * range option * bool) option -> + bangInfo: + (SynPat * SynBindingReturnInfo option * SynExpr * SynBinding list * SynLeadingKeyword * range option * bool) -> SynExpr val mkAndBang: @@ -213,12 +221,12 @@ val mkAndBang: returnInfo: SynBindingReturnInfo option * rhs: SynExpr * mWhole: range * - mEquals: range * - mIn: range option -> + mEquals: range -> SynBinding val mkDefnBindings: - mWhole: range * BindingSet * attrs: SynAttributes * vis: SynAccess option * attrsm: range -> SynModuleDecl list + mWhole: range * BindingSet * attrs: SynAttributes * vis: SynAccess option * attrsm: range * mIn: range option -> + SynModuleDecl list val idOfPat: parseState: IParseState -> m: range -> p: SynPat -> Ident diff --git a/src/Compiler/SyntaxTree/SyntaxTree.fs b/src/Compiler/SyntaxTree/SyntaxTree.fs index 0e621c0be34..8d74c063a51 100644 --- a/src/Compiler/SyntaxTree/SyntaxTree.fs +++ b/src/Compiler/SyntaxTree/SyntaxTree.fs @@ -718,15 +718,7 @@ type SynExpr = | YieldOrReturnFrom of flags: (bool * bool) * expr: SynExpr * range: range * trivia: SynExprYieldOrReturnFromTrivia - | LetOrUse of - isRecursive: bool * - isUse: bool * - isFromSource: bool * - isBang: bool * - bindings: SynBinding list * - body: SynExpr * - range: range * - trivia: SynExprLetOrUseTrivia + | LetOrUse of SynLetOrUse | MatchBang of matchDebugPoint: DebugPointAtBinding * @@ -794,7 +786,7 @@ type SynExpr = | SynExpr.Assert(range = m) | SynExpr.App(range = m) | SynExpr.TypeApp(range = m) - | SynExpr.LetOrUse(range = m) + | SynExpr.LetOrUse({ Range = m }) | SynExpr.TryWith(range = m) | SynExpr.TryFinally(range = m) | SynExpr.Sequential(range = m) @@ -1123,6 +1115,57 @@ type SynBinding = member x.Trivia = let (SynBinding(trivia = trivia)) = x in trivia +/// Represents a 'let' or 'use' expression with its bindings and body +[] +type SynLetOrUse = + { + /// true for 'let rec' and 'use rec' bindings, false for 'let' and 'use' bindings + IsRecursive: bool + + /// The bindings in this let/use expression + Bindings: SynBinding list + + /// The body expression + Body: SynExpr + + /// The syntax range of this expression + Range: range + + /// Trivia for this expression + Trivia: SynLetOrUseTrivia + } + + /// true for 'use' and 'use!' bindings, false for 'let' and 'let!' bindings + member this.IsUse = + match this.Bindings with + | firstBinding :: _ -> + match firstBinding.Trivia.LeadingKeyword with + | SynLeadingKeyword.Use _ + | SynLeadingKeyword.UseBang _ + | SynLeadingKeyword.UseRec _ -> true + | _ -> false + | [] -> false + + /// true for 'let!' and 'use!' bindings, false for 'let' and 'use' bindings + member this.IsBang = + match this.Bindings with + | firstBinding :: _ -> + match firstBinding.Trivia.LeadingKeyword with + | SynLeadingKeyword.LetBang _ + | SynLeadingKeyword.UseBang _ + | SynLeadingKeyword.AndBang _ -> true + | _ -> false + | [] -> false + + /// true if the binding was explicitly written by the user in the source code, false if generated by the compiler + member this.IsFromSource = + match this.Bindings with + | firstBinding :: _ -> + match firstBinding.Trivia.LeadingKeyword with + | SynLeadingKeyword.Synthetic -> false + | _ -> true + | [] -> true + [] type SynBindingReturnInfo = | SynBindingReturnInfo of typeName: SynType * range: range * attributes: SynAttributes * trivia: SynBindingReturnInfoTrivia @@ -1509,7 +1552,7 @@ type SynMemberDefn = range: range * trivia: SynMemberDefnInheritTrivia - | LetBindings of bindings: SynBinding list * isStatic: bool * isRecursive: bool * range: range + | LetBindings of bindings: SynBinding list * isStatic: bool * isRecursive: bool * range: range * trivia: SynMemberDefnLetBindingsTrivia | AbstractSlot of slotSig: SynValSig * flags: SynMemberFlags * range: range * trivia: SynMemberDefnAbstractSlotTrivia @@ -1565,7 +1608,7 @@ type SynModuleDecl = range: range * trivia: SynModuleDeclNestedModuleTrivia - | Let of isRecursive: bool * bindings: SynBinding list * range: range + | Let of isRecursive: bool * bindings: SynBinding list * range: range * trivia: SynModuleDeclLetTrivia | Expr of expr: SynExpr * range: range diff --git a/src/Compiler/SyntaxTree/SyntaxTree.fsi b/src/Compiler/SyntaxTree/SyntaxTree.fsi index 16745c78736..ca80390b881 100644 --- a/src/Compiler/SyntaxTree/SyntaxTree.fsi +++ b/src/Compiler/SyntaxTree/SyntaxTree.fsi @@ -559,6 +559,35 @@ type SynType = member Range: range /// Represents a syntax tree for F# expressions +/// Represents a 'let' or 'use' expression with its bindings and body +[] +type SynLetOrUse = + { + /// true for 'let rec' and 'use rec' bindings, false for 'let' and 'use' bindings + IsRecursive: bool + + /// The bindings in this let/use expression + Bindings: SynBinding list + + /// The body expression + Body: SynExpr + + /// The syntax range of this expression + Range: range + + /// Trivia for this expression + Trivia: SynLetOrUseTrivia + } + + /// true for 'use' and 'use!' bindings, false for 'let' and 'let!' bindings + member IsUse: bool + + /// true for 'let!' and 'use!' bindings, false for 'let' and 'use' bindings + member IsBang: bool + + /// true if the binding was explicitly written by the user in the source code, false if generated by the compiler + member IsFromSource: bool + [] type SynExpr = @@ -881,19 +910,7 @@ type SynExpr = /// F# syntax: let! pat = expr in expr /// F# syntax: use! pat = expr in expr /// F# syntax: let! pat = expr and! ... and! ... and! pat = expr in expr - | LetOrUse of - // isRecursive: true for 'let rec' and 'use rec' bindings, false for 'let' and 'use' bindings - isRecursive: bool * - /// isUse: true for 'use' and 'use!' bindings, false for 'let' and 'let!' - isUse: bool * - // isFromSource: flag indicates whether a binding was explicitly written by the user in the source code versus generated by the compiler during transformations. - isFromSource: bool * - // isBang: true for 'let!' and 'use!' bindings, false for 'let' and 'use' bindings - isBang: bool * - bindings: SynBinding list * - body: SynExpr * - range: range * - trivia: SynExprLetOrUseTrivia + | LetOrUse of SynLetOrUse /// F# syntax: match! expr with pat1 -> expr | ... | patN -> exprN | MatchBang of @@ -1671,7 +1688,12 @@ type SynMemberDefn = trivia: SynMemberDefnInheritTrivia /// A 'let' definition within a class - | LetBindings of bindings: SynBinding list * isStatic: bool * isRecursive: bool * range: range + | LetBindings of + bindings: SynBinding list * + isStatic: bool * + isRecursive: bool * + range: range * + trivia: SynMemberDefnLetBindingsTrivia /// An abstract slot definition within a class or interface | AbstractSlot of @@ -1729,7 +1751,7 @@ type SynModuleDecl = trivia: SynModuleDeclNestedModuleTrivia /// A 'let' definition within a module - | Let of isRecursive: bool * bindings: SynBinding list * range: range + | Let of isRecursive: bool * bindings: SynBinding list * range: range * trivia: SynModuleDeclLetTrivia /// An 'expr' within a module. | Expr of expr: SynExpr * range: range diff --git a/src/Compiler/SyntaxTree/SyntaxTreeOps.fs b/src/Compiler/SyntaxTree/SyntaxTreeOps.fs index 29b3b6a1ff6..a5e1d79731e 100644 --- a/src/Compiler/SyntaxTree/SyntaxTreeOps.fs +++ b/src/Compiler/SyntaxTree/SyntaxTreeOps.fs @@ -955,7 +955,7 @@ let rec synExprContainsError inpExpr = | SynExpr.Match(expr = e; clauses = cl) | SynExpr.MatchBang(expr = e; clauses = cl) -> walkExpr e || walkMatchClauses cl - | SynExpr.LetOrUse(bindings = bs; body = e) -> walkBinds bs || walkExpr e + | SynExpr.LetOrUse({ Bindings = bs; Body = e }) -> walkBinds bs || walkExpr e | SynExpr.TryWith(tryExpr = e; withCases = cl) -> walkExpr e || walkMatchClauses cl diff --git a/src/Compiler/SyntaxTree/SyntaxTrivia.fs b/src/Compiler/SyntaxTree/SyntaxTrivia.fs index 6734010660c..0c325333212 100644 --- a/src/Compiler/SyntaxTree/SyntaxTrivia.fs +++ b/src/Compiler/SyntaxTree/SyntaxTrivia.fs @@ -90,19 +90,12 @@ type SynExprDotLambdaTrivia = } [] -type SynExprLetOrUseTrivia = +type SynLetOrUseTrivia = { - LetOrUseKeyword: range InKeyword: range option - EqualsRange: range option } - static member Zero: SynExprLetOrUseTrivia = - { - InKeyword = None - LetOrUseKeyword = range0 - EqualsRange = None - } + static member Zero: SynLetOrUseTrivia = { InKeyword = None } [] type SynExprMatchTrivia = @@ -220,9 +213,12 @@ type SynTypeDefnSigTrivia = [] type SynLeadingKeyword = | Let of letRange: range + | LetBang of letBangRange: range | LetRec of letRange: range * recRange: range | And of andRange: range + | AndBang of andBangRange: range | Use of useRange: range + | UseBang of useBangRange: range | UseRec of useRange: range * recRange: range | Extern of externRange: range | Member of memberRange: range @@ -250,8 +246,11 @@ type SynLeadingKeyword = member this.Range = match this with | Let m + | LetBang m | And m + | AndBang m | Use m + | UseBang m | Extern m | Member m | Override m @@ -318,6 +317,15 @@ type SynModuleSigDeclNestedModuleTrivia = EqualsRange = None } +[] +type SynModuleDeclLetTrivia = + { + // The syntax range of the `in` keyword. + InKeyword: range option + } + + static member Zero: SynModuleDeclLetTrivia = { InKeyword = None } + [] type SynModuleOrNamespaceLeadingKeyword = | Module of moduleRange: range @@ -397,6 +405,14 @@ type SynMemberDefnAutoPropertyTrivia = GetSetKeywords: GetSetKeywords option } +[] +type SynMemberDefnLetBindingsTrivia = + { + InKeyword: range option + } + + static member Zero: SynMemberDefnLetBindingsTrivia = { InKeyword = None } + [] type SynMemberDefnAbstractSlotTrivia = { diff --git a/src/Compiler/SyntaxTree/SyntaxTrivia.fsi b/src/Compiler/SyntaxTree/SyntaxTrivia.fsi index c690a6ac018..d61cbdae1d4 100644 --- a/src/Compiler/SyntaxTree/SyntaxTrivia.fsi +++ b/src/Compiler/SyntaxTree/SyntaxTrivia.fsi @@ -126,17 +126,13 @@ type SynExprDotLambdaTrivia = /// Represents additional information for SynExpr.LetOrUse [] -type SynExprLetOrUseTrivia = +type SynLetOrUseTrivia = { - /// The syntax range of the `let` or `use` keyword. - LetOrUseKeyword: range /// The syntax range of the `in` keyword. InKeyword: range option - - EqualsRange: range option } - static member Zero: SynExprLetOrUseTrivia + static member Zero: SynLetOrUseTrivia /// Represents additional information for SynExpr.Match [] @@ -306,9 +302,12 @@ type SynTypeDefnSigTrivia = [] type SynLeadingKeyword = | Let of letRange: range + | LetBang of letBangRange: range | LetRec of letRange: range * recRange: range | And of andRange: range + | AndBang of andBangRange: range | Use of useRange: range + | UseBang of useBangRange: range | UseRec of useRange: range * recRange: range | Extern of externRange: range | Member of memberRange: range @@ -377,6 +376,16 @@ type SynModuleSigDeclNestedModuleTrivia = static member Zero: SynModuleSigDeclNestedModuleTrivia +/// Represents additional information for SynModuleDecl.Let +[] +type SynModuleDeclLetTrivia = + { + /// The syntax range of the `in` keyword. + InKeyword: range option + } + + static member Zero: SynModuleDeclLetTrivia + /// Represents the leading keyword in a SynModuleOrNamespace or SynModuleOrNamespaceSig [] type SynModuleOrNamespaceLeadingKeyword = @@ -491,6 +500,13 @@ type SynMemberDefnAutoPropertyTrivia = GetSetKeywords: GetSetKeywords option } +/// Represents additional information for SynMemberDefn.LetBindings +[] +type SynMemberDefnLetBindingsTrivia = + { InKeyword: range option } + + static member Zero: SynMemberDefnLetBindingsTrivia + /// Represents additional information for SynMemberDefn.AbstractSlot [] type SynMemberDefnAbstractSlotTrivia = diff --git a/src/Compiler/pars.fsy b/src/Compiler/pars.fsy index 5abe2d82a07..3ade5e4e8c0 100644 --- a/src/Compiler/pars.fsy +++ b/src/Compiler/pars.fsy @@ -1308,20 +1308,20 @@ moduleDefn: { if Option.isSome $2 then errorR(Error(FSComp.SR.parsVisibilityDeclarationsShouldComePriorToIdentifier(), rhs parseState 2)) (getSynArgNameGenerator parseState.LexBuffer).Reset() let (BindingSetPreAttrs(_, _, _, _, mWhole)) = $3 - mkDefnBindings (mWhole, $3, $1, $2, mWhole) } + mkDefnBindings (mWhole, $3, $1, $2, mWhole, None) } /* 'let' or 'do' definitions in #light */ | opt_attributes opt_access hardwhiteLetBindings %prec decl_let - { let hwlb, m, _ = $3 + { let hwlb, m, mIn = $3 if Option.isSome $2 then errorR(Error(FSComp.SR.parsVisibilityDeclarationsShouldComePriorToIdentifier(), rhs parseState 2)) (getSynArgNameGenerator parseState.LexBuffer).Reset() - mkDefnBindings (m, hwlb, $1, $2, m) } + mkDefnBindings (m, hwlb, $1, $2, m, mIn) } /* 'do' definitions in non-#light*/ | opt_attributes opt_access doBinding %prec decl_let { if Option.isSome $2 then errorR(Error(FSComp.SR.parsVisibilityDeclarationsShouldComePriorToIdentifier(), rhs parseState 2)) let mWhole = rhs parseState 3 - mkDefnBindings (mWhole, $3, $1, $2, mWhole) } + mkDefnBindings (mWhole, $3, $1, $2, mWhole, None) } /* 'type' definitions */ | opt_attributes opt_access typeKeyword tyconDefn tyconDefnList @@ -2002,11 +2002,13 @@ abstractMemberFlags: classDefnMember: | opt_attributes opt_access classDefnBindings { if Option.isSome $2 then errorR(Error(FSComp.SR.parsVisibilityDeclarationsShouldComePriorToIdentifier(), rhs parseState 2)) - [mkClassMemberLocalBindings(false, None, $1, $2, $3)] } + let bindingSet, mIn = $3 + [mkClassMemberLocalBindings(false, None, $1, $2, bindingSet, mIn)] } | opt_attributes opt_access STATIC classDefnBindings { if Option.isSome $2 then errorR(Error(FSComp.SR.parsVisibilityDeclarationsShouldComePriorToIdentifier(), rhs parseState 2)) - [mkClassMemberLocalBindings(true, Some(rhs parseState 3), $1, $2, $4)] } + let bindingSet, mIn = $4 + [mkClassMemberLocalBindings(true, Some(rhs parseState 3), $1, $2, bindingSet, mIn)] } | opt_attributes opt_access memberFlags memberCore opt_ODECLEND { let rangeStart = rhs parseState 1 @@ -3147,17 +3149,17 @@ hardwhiteDoBinding: /* The bindings in a class type definition */ classDefnBindings: | defnBindings - { $1 } + { $1, None } | doBinding - { $1 } + { $1, None } | hardwhiteLetBindings - { let b, m, _ = $1 - b } + { let b, m, mIn = $1 + b, mIn } | hardwhiteDoBinding - { fst $1 } + { fst $1, None } /* The terminator for a 'let ....' binding in the #light syntax */ @@ -4120,7 +4122,7 @@ sequentialExpr: let usedKeyword = if isUse then "use" else "let" reportParseErrorAt mLetKwd (FSComp.SR.parsExpectedExpressionAfterLet(usedKeyword, usedKeyword)) let fauxRange = m.EndRange // zero width range at end of m - mkLetExpression(false, mIn, m, arbExpr ("seqExpr", fauxRange), Some bindingSet, None) } + mkLetExpression(mIn, m, arbExpr ("seqExpr", fauxRange), bindingSet) } /* Use this as the last terminal when performing error recovery */ /* The contract for using this is that (a) if EOF occurs then the */ @@ -4144,9 +4146,8 @@ moreBinders: let mKeyword = rhs parseState 1 let mEquals = rhs parseState 3 let m = unionRanges mKeyword $4.Range - let mIn = Some(rhs parseState 5) - mkAndBang(mKeyword, pat, returnInfo, $4, m, mEquals, mIn) :: $6 } + mkAndBang(mKeyword, pat, returnInfo, $4, m, mEquals) :: $6 } | OAND_BANG ceBindingCore EQUALS typedSequentialExprBlock hardwhiteDefnBindingsTerminator opt_OBLOCKSEP moreBinders %prec expr_let { // Offside-sensitive version of and! binding @@ -4156,13 +4157,13 @@ moreBinders: if isInline then errorR(Error(FSComp.SR.parsInvalidDeclarationSyntax(), rhs parseState 2)) if isMutable then errorR(Error(FSComp.SR.parsInvalidDeclarationSyntax(), rhs parseState 2)) - let report, mIn, _ = $5 + let report, _mIn, _ = $5 report "and!" (rhs parseState 1) // report unterminated error let mKeyword = rhs parseState 1 let mEquals = rhs parseState 3 let m = unionRanges mKeyword $4.Range - mkAndBang(mKeyword, pat, returnInfo, $4, m, mEquals, mIn) :: $7 } + mkAndBang(mKeyword, pat, returnInfo, $4, m, mEquals) :: $7 } | %prec prec_no_more_attr_bindings { [] } @@ -4172,13 +4173,13 @@ declExpr: { let mIn = rhs parseState 2 |> Some let mWhole = unionRanges (rhs2 parseState 1 2) $3.Range let bindingSet = $1 - mkLetExpression(false, mIn, mWhole, $3, Some bindingSet, None) } + mkLetExpression(mIn, mWhole, $3, bindingSet) } | defnBindings IN error %prec expr_let { let mIn = rhs parseState 2 |> Some let mWhole = rhs2 parseState 1 2 let bindingSet = $1 - mkLetExpression(false, mIn, mWhole, arbExpr ("declExpr1", (rhs parseState 3)), Some bindingSet, None) } + mkLetExpression(mIn, mWhole, arbExpr ("declExpr1", (rhs parseState 3)), bindingSet) } /* FSComp.SR.parsNoMatchingInForLet() -- leave this in for now - it's an unused error string */ @@ -4186,23 +4187,23 @@ declExpr: | hardwhiteLetBindings typedSequentialExprBlock %prec expr_let { let bindingSet, m, mIn = $1 let mWhole = unionRanges m $2.Range - mkLetExpression(false, mIn, mWhole, $2, Some bindingSet, None) } + mkLetExpression(mIn, mWhole, $2, bindingSet) } | hardwhiteLetBindings error %prec expr_let { let bindingSet, m, mIn = $1 reportParseErrorAt (match bindingSet with (BindingSetPreAttrs(m, _, _, _, _)) -> m) (FSComp.SR.parsErrorInReturnForLetIncorrectIndentation()) - mkLetExpression(false, mIn, m, arbExpr ("declExpr2", (rhs parseState 2)), Some bindingSet, None) } + mkLetExpression(mIn, m, arbExpr ("declExpr2", (rhs parseState 2)), bindingSet) } | hardwhiteLetBindings OBLOCKSEP typedSequentialExprBlock %prec expr_let { let bindingSet, m, mIn = $1 let mWhole = unionRanges m $3.Range - mkLetExpression(false, mIn, mWhole, $3, Some bindingSet, None) } + mkLetExpression(mIn, mWhole, $3, bindingSet) } | hardwhiteLetBindings OBLOCKSEP error %prec expr_let { let bindingSet, m, mIn = $1 //reportParseErrorAt (match bindingSet with (BindingSetPreAttrs(m, _, _, _, _)) -> m) (FSComp.SR.parsErrorInReturnForLetIncorrectIndentation()) let mWhole = unionRanges m (rhs parseState 3) - mkLetExpression(false, mIn, mWhole, arbExpr ("declExpr3", (rhs parseState 3)), Some bindingSet, None) } + mkLetExpression(mIn, mWhole, arbExpr ("declExpr3", (rhs parseState 3)), bindingSet) } | hardwhiteDoBinding %prec expr_let { let (BindingSetPreAttrs(_, _, _, _, m)), e = $1 @@ -4534,13 +4535,15 @@ declExpr: if isMutable then errorR(Error(FSComp.SR.parsInvalidDeclarationSyntax(), rhs parseState 2)) let mKeyword = rhs parseState 1 + let keyword = if $1 = "let" then SynLeadingKeyword.LetBang mKeyword else SynLeadingKeyword.UseBang mKeyword let mEquals = Some(rhs parseState 3) + let mIn = rhs parseState 5 let m = unionRanges mKeyword $8.Range // $1 contains the actual keyword ("let" or "use") let isUse = ($1 = "use") - - mkLetExpression(true, None, m, $8, None, Some(pat, returnInfo, $4, $7, mKeyword, mEquals, isUse)) } + + mkLetBangExpression(Some mIn, m, $8, (pat, returnInfo, $4, $7, keyword, mEquals, isUse)) } | OBINDER ceBindingCore EQUALS typedSequentialExprBlock hardwhiteDefnBindingsTerminator opt_OBLOCKSEP moreBinders typedSequentialExprBlock %prec expr_let { // Offside-sensitive version of let!/use! binding @@ -4553,12 +4556,13 @@ declExpr: let report, mIn, _ = $5 report (if $1 = "use" then "use!" else "let!") (rhs parseState 1) // report unterminated error let mKeyword = rhs parseState 1 + let keyword = if $1 = "let" then SynLeadingKeyword.LetBang mKeyword else SynLeadingKeyword.UseBang mKeyword let mEquals = Some(rhs parseState 3) let m = unionRanges mKeyword $8.Range let isUse = ($1 = "use") - mkLetExpression(true, None, m, $8, None, Some(pat, returnInfo, $4, $7, mKeyword, mEquals, isUse)) } + mkLetBangExpression(mIn, m, $8, (pat, returnInfo, $4, $7, keyword, mEquals, isUse)) } | OBINDER ceBindingCore EQUALS typedSequentialExprBlock hardwhiteDefnBindingsTerminator opt_OBLOCKSEP error %prec expr_let { // Error recovery for incomplete let!/use! bindings @@ -4570,14 +4574,16 @@ declExpr: if isMutable then errorR(Error(FSComp.SR.parsInvalidDeclarationSyntax(), rhs parseState 2)) let mKeyword = rhs parseState 1 + let keyword = if $1 = "let" then SynLeadingKeyword.LetBang mKeyword else SynLeadingKeyword.UseBang mKeyword let mEquals = Some(rhs parseState 3) let mAll = unionRanges mKeyword (rhs parseState 7) let m = $4.Range.EndRange // zero-width range + let _, mIn, _ = $5 let isUse = ($1 = "use") // Use ImplicitZero as the continuation expression for error recovery - mkLetExpression(true, None, mAll, SynExpr.ImplicitZero m, None, Some(pat, returnInfo, $4, [], mKeyword, mEquals, isUse)) } + mkLetBangExpression(mIn, mAll, SynExpr.ImplicitZero m, (pat, returnInfo, $4, [], keyword, mEquals, isUse)) } | DO_BANG typedSequentialExpr IN opt_OBLOCKSEP typedSequentialExprBlock %prec expr_let { let spBind = DebugPointAtBinding.NoneAtDo diff --git a/tests/FSharp.Compiler.Service.Tests/Common.fs b/tests/FSharp.Compiler.Service.Tests/Common.fs index e54541c0444..221ab93e9ea 100644 --- a/tests/FSharp.Compiler.Service.Tests/Common.fs +++ b/tests/FSharp.Compiler.Service.Tests/Common.fs @@ -240,7 +240,7 @@ let getSingleParenInnerExpr expr = let getLetDeclHeadPattern (moduleDecl: SynModuleDecl) = match moduleDecl with - | SynModuleDecl.Let(_, [SynBinding(headPat = pat)], _) -> pat + | SynModuleDecl.Let(bindings = [SynBinding(headPat = pat)]) -> pat | _ -> failwith "Unexpected tree" let parseSourceCodeAndGetModule (source: string) = diff --git a/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.SurfaceArea.netstandard20.bsl b/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.SurfaceArea.netstandard20.bsl index e2aaca46ac3..66b3c742491 100644 --- a/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.SurfaceArea.netstandard20.bsl +++ b/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.SurfaceArea.netstandard20.bsl @@ -7258,22 +7258,8 @@ FSharp.Compiler.Syntax.SynExpr+Lazy: FSharp.Compiler.Syntax.SynExpr expr FSharp.Compiler.Syntax.SynExpr+Lazy: FSharp.Compiler.Syntax.SynExpr get_expr() FSharp.Compiler.Syntax.SynExpr+Lazy: FSharp.Compiler.Text.Range get_range() FSharp.Compiler.Syntax.SynExpr+Lazy: FSharp.Compiler.Text.Range range -FSharp.Compiler.Syntax.SynExpr+LetOrUse: Boolean get_isBang() -FSharp.Compiler.Syntax.SynExpr+LetOrUse: Boolean get_isFromSource() -FSharp.Compiler.Syntax.SynExpr+LetOrUse: Boolean get_isRecursive() -FSharp.Compiler.Syntax.SynExpr+LetOrUse: Boolean get_isUse() -FSharp.Compiler.Syntax.SynExpr+LetOrUse: Boolean isBang -FSharp.Compiler.Syntax.SynExpr+LetOrUse: Boolean isFromSource -FSharp.Compiler.Syntax.SynExpr+LetOrUse: Boolean isRecursive -FSharp.Compiler.Syntax.SynExpr+LetOrUse: Boolean isUse -FSharp.Compiler.Syntax.SynExpr+LetOrUse: FSharp.Compiler.Syntax.SynExpr body -FSharp.Compiler.Syntax.SynExpr+LetOrUse: FSharp.Compiler.Syntax.SynExpr get_body() -FSharp.Compiler.Syntax.SynExpr+LetOrUse: FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia get_trivia() -FSharp.Compiler.Syntax.SynExpr+LetOrUse: FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia trivia -FSharp.Compiler.Syntax.SynExpr+LetOrUse: FSharp.Compiler.Text.Range get_range() -FSharp.Compiler.Syntax.SynExpr+LetOrUse: FSharp.Compiler.Text.Range range -FSharp.Compiler.Syntax.SynExpr+LetOrUse: Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding] bindings -FSharp.Compiler.Syntax.SynExpr+LetOrUse: Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding] get_bindings() +FSharp.Compiler.Syntax.SynExpr+LetOrUse: FSharp.Compiler.Syntax.SynLetOrUse Item +FSharp.Compiler.Syntax.SynExpr+LetOrUse: FSharp.Compiler.Syntax.SynLetOrUse get_Item() FSharp.Compiler.Syntax.SynExpr+LibraryOnlyILAssembly: FSharp.Compiler.Text.Range get_range() FSharp.Compiler.Syntax.SynExpr+LibraryOnlyILAssembly: FSharp.Compiler.Text.Range range FSharp.Compiler.Syntax.SynExpr+LibraryOnlyILAssembly: Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynExpr] args @@ -7795,7 +7781,7 @@ FSharp.Compiler.Syntax.SynExpr: FSharp.Compiler.Syntax.SynExpr NewInterpolatedSt FSharp.Compiler.Syntax.SynExpr: FSharp.Compiler.Syntax.SynExpr NewJoinIn(FSharp.Compiler.Syntax.SynExpr, FSharp.Compiler.Text.Range, FSharp.Compiler.Syntax.SynExpr, FSharp.Compiler.Text.Range) FSharp.Compiler.Syntax.SynExpr: FSharp.Compiler.Syntax.SynExpr NewLambda(Boolean, Boolean, FSharp.Compiler.Syntax.SynSimplePats, FSharp.Compiler.Syntax.SynExpr, Microsoft.FSharp.Core.FSharpOption`1[System.Tuple`2[Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynPat],FSharp.Compiler.Syntax.SynExpr]], FSharp.Compiler.Text.Range, FSharp.Compiler.SyntaxTrivia.SynExprLambdaTrivia) FSharp.Compiler.Syntax.SynExpr: FSharp.Compiler.Syntax.SynExpr NewLazy(FSharp.Compiler.Syntax.SynExpr, FSharp.Compiler.Text.Range) -FSharp.Compiler.Syntax.SynExpr: FSharp.Compiler.Syntax.SynExpr NewLetOrUse(Boolean, Boolean, Boolean, Boolean, Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding], FSharp.Compiler.Syntax.SynExpr, FSharp.Compiler.Text.Range, FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia) +FSharp.Compiler.Syntax.SynExpr: FSharp.Compiler.Syntax.SynExpr NewLetOrUse(FSharp.Compiler.Syntax.SynLetOrUse) FSharp.Compiler.Syntax.SynExpr: FSharp.Compiler.Syntax.SynExpr NewLibraryOnlyILAssembly(System.Object, Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynType], Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynExpr], Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynType], FSharp.Compiler.Text.Range) FSharp.Compiler.Syntax.SynExpr: FSharp.Compiler.Syntax.SynExpr NewLibraryOnlyStaticOptimization(Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynStaticOptimizationConstraint], FSharp.Compiler.Syntax.SynExpr, FSharp.Compiler.Syntax.SynExpr, FSharp.Compiler.Text.Range) FSharp.Compiler.Syntax.SynExpr: FSharp.Compiler.Syntax.SynExpr NewLibraryOnlyUnionCaseFieldGet(FSharp.Compiler.Syntax.SynExpr, Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.Ident], Int32, FSharp.Compiler.Text.Range) @@ -7992,6 +7978,24 @@ FSharp.Compiler.Syntax.SynInterpolatedStringPart: FSharp.Compiler.Syntax.SynInte FSharp.Compiler.Syntax.SynInterpolatedStringPart: Int32 Tag FSharp.Compiler.Syntax.SynInterpolatedStringPart: Int32 get_Tag() FSharp.Compiler.Syntax.SynInterpolatedStringPart: System.String ToString() +FSharp.Compiler.Syntax.SynLetOrUse: Boolean IsBang +FSharp.Compiler.Syntax.SynLetOrUse: Boolean IsFromSource +FSharp.Compiler.Syntax.SynLetOrUse: Boolean IsRecursive +FSharp.Compiler.Syntax.SynLetOrUse: Boolean IsUse +FSharp.Compiler.Syntax.SynLetOrUse: Boolean get_IsBang() +FSharp.Compiler.Syntax.SynLetOrUse: Boolean get_IsFromSource() +FSharp.Compiler.Syntax.SynLetOrUse: Boolean get_IsRecursive() +FSharp.Compiler.Syntax.SynLetOrUse: Boolean get_IsUse() +FSharp.Compiler.Syntax.SynLetOrUse: FSharp.Compiler.Syntax.SynExpr Body +FSharp.Compiler.Syntax.SynLetOrUse: FSharp.Compiler.Syntax.SynExpr get_Body() +FSharp.Compiler.Syntax.SynLetOrUse: FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia Trivia +FSharp.Compiler.Syntax.SynLetOrUse: FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia get_Trivia() +FSharp.Compiler.Syntax.SynLetOrUse: FSharp.Compiler.Text.Range Range +FSharp.Compiler.Syntax.SynLetOrUse: FSharp.Compiler.Text.Range get_Range() +FSharp.Compiler.Syntax.SynLetOrUse: Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding] Bindings +FSharp.Compiler.Syntax.SynLetOrUse: Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding] get_Bindings() +FSharp.Compiler.Syntax.SynLetOrUse: System.String ToString() +FSharp.Compiler.Syntax.SynLetOrUse: Void .ctor(Boolean, Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding], FSharp.Compiler.Syntax.SynExpr, FSharp.Compiler.Text.Range, FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia) FSharp.Compiler.Syntax.SynLongIdent: Boolean ThereIsAnExtraDotAtTheEnd FSharp.Compiler.Syntax.SynLongIdent: Boolean get_ThereIsAnExtraDotAtTheEnd() FSharp.Compiler.Syntax.SynLongIdent: FSharp.Compiler.Syntax.SynLongIdent NewSynLongIdent(Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.Ident], Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Text.Range], Microsoft.FSharp.Collections.FSharpList`1[Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.SyntaxTrivia.IdentTrivia]]) @@ -8219,6 +8223,8 @@ FSharp.Compiler.Syntax.SynMemberDefn+LetBindings: Boolean get_isRecursive() FSharp.Compiler.Syntax.SynMemberDefn+LetBindings: Boolean get_isStatic() FSharp.Compiler.Syntax.SynMemberDefn+LetBindings: Boolean isRecursive FSharp.Compiler.Syntax.SynMemberDefn+LetBindings: Boolean isStatic +FSharp.Compiler.Syntax.SynMemberDefn+LetBindings: FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia get_trivia() +FSharp.Compiler.Syntax.SynMemberDefn+LetBindings: FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia trivia FSharp.Compiler.Syntax.SynMemberDefn+LetBindings: FSharp.Compiler.Text.Range get_range() FSharp.Compiler.Syntax.SynMemberDefn+LetBindings: FSharp.Compiler.Text.Range range FSharp.Compiler.Syntax.SynMemberDefn+LetBindings: Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding] bindings @@ -8284,7 +8290,7 @@ FSharp.Compiler.Syntax.SynMemberDefn: FSharp.Compiler.Syntax.SynMemberDefn NewIm FSharp.Compiler.Syntax.SynMemberDefn: FSharp.Compiler.Syntax.SynMemberDefn NewImplicitInherit(FSharp.Compiler.Syntax.SynType, FSharp.Compiler.Syntax.SynExpr, Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Syntax.Ident], FSharp.Compiler.Text.Range, FSharp.Compiler.SyntaxTrivia.SynMemberDefnInheritTrivia) FSharp.Compiler.Syntax.SynMemberDefn: FSharp.Compiler.Syntax.SynMemberDefn NewInherit(Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Syntax.SynType], Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Syntax.Ident], FSharp.Compiler.Text.Range, FSharp.Compiler.SyntaxTrivia.SynMemberDefnInheritTrivia) FSharp.Compiler.Syntax.SynMemberDefn: FSharp.Compiler.Syntax.SynMemberDefn NewInterface(FSharp.Compiler.Syntax.SynType, Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range], Microsoft.FSharp.Core.FSharpOption`1[Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynMemberDefn]], FSharp.Compiler.Text.Range) -FSharp.Compiler.Syntax.SynMemberDefn: FSharp.Compiler.Syntax.SynMemberDefn NewLetBindings(Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding], Boolean, Boolean, FSharp.Compiler.Text.Range) +FSharp.Compiler.Syntax.SynMemberDefn: FSharp.Compiler.Syntax.SynMemberDefn NewLetBindings(Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding], Boolean, Boolean, FSharp.Compiler.Text.Range, FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia) FSharp.Compiler.Syntax.SynMemberDefn: FSharp.Compiler.Syntax.SynMemberDefn NewMember(FSharp.Compiler.Syntax.SynBinding, FSharp.Compiler.Text.Range) FSharp.Compiler.Syntax.SynMemberDefn: FSharp.Compiler.Syntax.SynMemberDefn NewNestedType(FSharp.Compiler.Syntax.SynTypeDefn, Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Syntax.SynAccess], FSharp.Compiler.Text.Range) FSharp.Compiler.Syntax.SynMemberDefn: FSharp.Compiler.Syntax.SynMemberDefn NewOpen(FSharp.Compiler.Syntax.SynOpenDeclTarget, FSharp.Compiler.Text.Range) @@ -8436,6 +8442,8 @@ FSharp.Compiler.Syntax.SynModuleDecl+HashDirective: FSharp.Compiler.Text.Range g FSharp.Compiler.Syntax.SynModuleDecl+HashDirective: FSharp.Compiler.Text.Range range FSharp.Compiler.Syntax.SynModuleDecl+Let: Boolean get_isRecursive() FSharp.Compiler.Syntax.SynModuleDecl+Let: Boolean isRecursive +FSharp.Compiler.Syntax.SynModuleDecl+Let: FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia get_trivia() +FSharp.Compiler.Syntax.SynModuleDecl+Let: FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia trivia FSharp.Compiler.Syntax.SynModuleDecl+Let: FSharp.Compiler.Text.Range get_range() FSharp.Compiler.Syntax.SynModuleDecl+Let: FSharp.Compiler.Text.Range range FSharp.Compiler.Syntax.SynModuleDecl+Let: Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding] bindings @@ -8502,7 +8510,7 @@ FSharp.Compiler.Syntax.SynModuleDecl: FSharp.Compiler.Syntax.SynModuleDecl NewAt FSharp.Compiler.Syntax.SynModuleDecl: FSharp.Compiler.Syntax.SynModuleDecl NewException(FSharp.Compiler.Syntax.SynExceptionDefn, FSharp.Compiler.Text.Range) FSharp.Compiler.Syntax.SynModuleDecl: FSharp.Compiler.Syntax.SynModuleDecl NewExpr(FSharp.Compiler.Syntax.SynExpr, FSharp.Compiler.Text.Range) FSharp.Compiler.Syntax.SynModuleDecl: FSharp.Compiler.Syntax.SynModuleDecl NewHashDirective(FSharp.Compiler.Syntax.ParsedHashDirective, FSharp.Compiler.Text.Range) -FSharp.Compiler.Syntax.SynModuleDecl: FSharp.Compiler.Syntax.SynModuleDecl NewLet(Boolean, Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding], FSharp.Compiler.Text.Range) +FSharp.Compiler.Syntax.SynModuleDecl: FSharp.Compiler.Syntax.SynModuleDecl NewLet(Boolean, Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynBinding], FSharp.Compiler.Text.Range, FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia) FSharp.Compiler.Syntax.SynModuleDecl: FSharp.Compiler.Syntax.SynModuleDecl NewModuleAbbrev(FSharp.Compiler.Syntax.Ident, Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.Ident], FSharp.Compiler.Text.Range) FSharp.Compiler.Syntax.SynModuleDecl: FSharp.Compiler.Syntax.SynModuleDecl NewNamespaceFragment(FSharp.Compiler.Syntax.SynModuleOrNamespace) FSharp.Compiler.Syntax.SynModuleDecl: FSharp.Compiler.Syntax.SynModuleDecl NewNestedModule(FSharp.Compiler.Syntax.SynComponentInfo, Boolean, Microsoft.FSharp.Collections.FSharpList`1[FSharp.Compiler.Syntax.SynModuleDecl], Boolean, FSharp.Compiler.Text.Range, FSharp.Compiler.SyntaxTrivia.SynModuleDeclNestedModuleTrivia) @@ -10341,16 +10349,6 @@ FSharp.Compiler.SyntaxTrivia.SynExprLambdaTrivia: Microsoft.FSharp.Core.FSharpOp FSharp.Compiler.SyntaxTrivia.SynExprLambdaTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] get_ArrowRange() FSharp.Compiler.SyntaxTrivia.SynExprLambdaTrivia: System.String ToString() FSharp.Compiler.SyntaxTrivia.SynExprLambdaTrivia: Void .ctor(Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range]) -FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia: FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia Zero -FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia: FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia get_Zero() -FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia: FSharp.Compiler.Text.Range LetOrUseKeyword -FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia: FSharp.Compiler.Text.Range get_LetOrUseKeyword() -FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] EqualsRange -FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] InKeyword -FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] get_EqualsRange() -FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] get_InKeyword() -FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia: System.String ToString() -FSharp.Compiler.SyntaxTrivia.SynExprLetOrUseTrivia: Void .ctor(FSharp.Compiler.Text.Range, Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range], Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range]) FSharp.Compiler.SyntaxTrivia.SynExprMatchBangTrivia: FSharp.Compiler.Text.Range MatchBangKeyword FSharp.Compiler.SyntaxTrivia.SynExprMatchBangTrivia: FSharp.Compiler.Text.Range WithKeyword FSharp.Compiler.SyntaxTrivia.SynExprMatchBangTrivia: FSharp.Compiler.Text.Range get_MatchBangKeyword() @@ -10413,6 +10411,8 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+AbstractMember: FSharp.Compiler.T FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+AbstractMember: FSharp.Compiler.Text.Range memberRange FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+And: FSharp.Compiler.Text.Range andRange FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+And: FSharp.Compiler.Text.Range get_andRange() +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+AndBang: FSharp.Compiler.Text.Range andBangRange +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+AndBang: FSharp.Compiler.Text.Range get_andBangRange() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Default: FSharp.Compiler.Text.Range defaultRange FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Default: FSharp.Compiler.Text.Range get_defaultRange() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+DefaultVal: FSharp.Compiler.Text.Range defaultRange @@ -10425,6 +10425,8 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Extern: FSharp.Compiler.Text.Rang FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Extern: FSharp.Compiler.Text.Range get_externRange() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Let: FSharp.Compiler.Text.Range get_letRange() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Let: FSharp.Compiler.Text.Range letRange +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+LetBang: FSharp.Compiler.Text.Range get_letBangRange() +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+LetBang: FSharp.Compiler.Text.Range letBangRange FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+LetRec: FSharp.Compiler.Text.Range get_letRange() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+LetRec: FSharp.Compiler.Text.Range get_recRange() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+LetRec: FSharp.Compiler.Text.Range letRange @@ -10486,11 +10488,13 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+StaticVal: FSharp.Compiler.Text.R FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 Abstract FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 AbstractMember FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 And +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 AndBang FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 Default FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 DefaultVal FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 Do FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 Extern FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 Let +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 LetBang FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 LetRec FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 Member FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 MemberVal @@ -10508,10 +10512,13 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 StaticMemberVal FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 StaticVal FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 Synthetic FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 Use +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 UseBang FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 UseRec FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags: Int32 Val FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Use: FSharp.Compiler.Text.Range get_useRange() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Use: FSharp.Compiler.Text.Range useRange +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+UseBang: FSharp.Compiler.Text.Range get_useBangRange() +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+UseBang: FSharp.Compiler.Text.Range useBangRange FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+UseRec: FSharp.Compiler.Text.Range get_recRange() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+UseRec: FSharp.Compiler.Text.Range get_useRange() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+UseRec: FSharp.Compiler.Text.Range recRange @@ -10521,11 +10528,13 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Val: FSharp.Compiler.Text.Range v FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsAbstract FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsAbstractMember FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsAnd +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsAndBang FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsDefault FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsDefaultVal FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsDo FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsExtern FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsLet +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsLetBang FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsLetRec FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsMember FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsMemberVal @@ -10543,16 +10552,19 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsStaticMemberVal FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsStaticVal FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsSynthetic FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsUse +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsUseBang FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsUseRec FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean IsVal FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsAbstract() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsAbstractMember() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsAnd() +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsAndBang() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsDefault() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsDefaultVal() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsDo() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsExtern() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsLet() +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsLetBang() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsLetRec() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsMember() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsMemberVal() @@ -10570,16 +10582,19 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsStaticMemberVal() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsStaticVal() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsSynthetic() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsUse() +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsUseBang() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsUseRec() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Boolean get_IsVal() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewAbstract(FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewAbstractMember(FSharp.Compiler.Text.Range, FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewAnd(FSharp.Compiler.Text.Range) +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewAndBang(FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewDefault(FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewDefaultVal(FSharp.Compiler.Text.Range, FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewDo(FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewExtern(FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewLet(FSharp.Compiler.Text.Range) +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewLetBang(FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewLetRec(FSharp.Compiler.Text.Range, FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewMember(FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewMemberVal(FSharp.Compiler.Text.Range, FSharp.Compiler.Text.Range) @@ -10596,6 +10611,7 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.Syn FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewStaticMemberVal(FSharp.Compiler.Text.Range, FSharp.Compiler.Text.Range, FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewStaticVal(FSharp.Compiler.Text.Range, FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewUse(FSharp.Compiler.Text.Range) +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewUseBang(FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewUseRec(FSharp.Compiler.Text.Range, FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword NewVal(FSharp.Compiler.Text.Range) FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword Synthetic @@ -10603,11 +10619,13 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.Syn FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Abstract FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+AbstractMember FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+And +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+AndBang FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Default FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+DefaultVal FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Do FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Extern FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Let +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+LetBang FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+LetRec FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Member FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+MemberVal @@ -10625,6 +10643,7 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.Syn FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+StaticVal FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Tags FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Use +FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+UseBang FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+UseRec FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword+Val FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.Text.Range Range @@ -10632,6 +10651,12 @@ FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: FSharp.Compiler.Text.Range get_R FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Int32 Tag FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: Int32 get_Tag() FSharp.Compiler.SyntaxTrivia.SynLeadingKeyword: System.String ToString() +FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia: FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia Zero +FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia: FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia get_Zero() +FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] InKeyword +FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] get_InKeyword() +FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia: System.String ToString() +FSharp.Compiler.SyntaxTrivia.SynLetOrUseTrivia: Void .ctor(Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range]) FSharp.Compiler.SyntaxTrivia.SynMatchClauseTrivia: FSharp.Compiler.SyntaxTrivia.SynMatchClauseTrivia Zero FSharp.Compiler.SyntaxTrivia.SynMatchClauseTrivia: FSharp.Compiler.SyntaxTrivia.SynMatchClauseTrivia get_Zero() FSharp.Compiler.SyntaxTrivia.SynMatchClauseTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] ArrowRange @@ -10670,6 +10695,12 @@ FSharp.Compiler.SyntaxTrivia.SynMemberDefnInheritTrivia: FSharp.Compiler.Text.Ra FSharp.Compiler.SyntaxTrivia.SynMemberDefnInheritTrivia: FSharp.Compiler.Text.Range get_InheritKeyword() FSharp.Compiler.SyntaxTrivia.SynMemberDefnInheritTrivia: System.String ToString() FSharp.Compiler.SyntaxTrivia.SynMemberDefnInheritTrivia: Void .ctor(FSharp.Compiler.Text.Range) +FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia: FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia Zero +FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia: FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia get_Zero() +FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] InKeyword +FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] get_InKeyword() +FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia: System.String ToString() +FSharp.Compiler.SyntaxTrivia.SynMemberDefnLetBindingsTrivia: Void .ctor(Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range]) FSharp.Compiler.SyntaxTrivia.SynMemberGetSetTrivia: FSharp.Compiler.Text.Range WithKeyword FSharp.Compiler.SyntaxTrivia.SynMemberGetSetTrivia: FSharp.Compiler.Text.Range get_WithKeyword() FSharp.Compiler.SyntaxTrivia.SynMemberGetSetTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] AndKeyword @@ -10688,6 +10719,12 @@ FSharp.Compiler.SyntaxTrivia.SynMemberSigMemberTrivia: Microsoft.FSharp.Core.FSh FSharp.Compiler.SyntaxTrivia.SynMemberSigMemberTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.SyntaxTrivia.GetSetKeywords] get_GetSetKeywords() FSharp.Compiler.SyntaxTrivia.SynMemberSigMemberTrivia: System.String ToString() FSharp.Compiler.SyntaxTrivia.SynMemberSigMemberTrivia: Void .ctor(Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.SyntaxTrivia.GetSetKeywords]) +FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia: FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia Zero +FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia: FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia get_Zero() +FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] InKeyword +FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] get_InKeyword() +FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia: System.String ToString() +FSharp.Compiler.SyntaxTrivia.SynModuleDeclLetTrivia: Void .ctor(Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range]) FSharp.Compiler.SyntaxTrivia.SynModuleDeclNestedModuleTrivia: FSharp.Compiler.SyntaxTrivia.SynModuleDeclNestedModuleTrivia Zero FSharp.Compiler.SyntaxTrivia.SynModuleDeclNestedModuleTrivia: FSharp.Compiler.SyntaxTrivia.SynModuleDeclNestedModuleTrivia get_Zero() FSharp.Compiler.SyntaxTrivia.SynModuleDeclNestedModuleTrivia: Microsoft.FSharp.Core.FSharpOption`1[FSharp.Compiler.Text.Range] EqualsRange diff --git a/tests/FSharp.Compiler.Service.Tests/ParsedInputModuleTests.fs b/tests/FSharp.Compiler.Service.Tests/ParsedInputModuleTests.fs index f8168ed68e6..2ff0eebe32b 100644 --- a/tests/FSharp.Compiler.Service.Tests/ParsedInputModuleTests.fs +++ b/tests/FSharp.Compiler.Service.Tests/ParsedInputModuleTests.fs @@ -75,8 +75,8 @@ let ``tryPick recursive let binding`` () = (pos0, parseTree) ||> ParsedInput.tryPick (fun _path node -> match node with - | SyntaxNode.SynExpr(SynExpr.LetOrUse(isRecursive = false)) -> failwith "isRecursive should be true" - | SyntaxNode.SynExpr(SynExpr.LetOrUse(isRecursive = true; bindings = bindings)) -> Some bindings + | SyntaxNode.SynExpr(SynExpr.LetOrUse({ IsRecursive = false })) -> failwith "isRecursive should be true" + | SyntaxNode.SynExpr(SynExpr.LetOrUse({ IsRecursive = true; Bindings = bindings })) -> Some bindings | _ -> None) match bindings with diff --git a/tests/FSharp.Compiler.Service.Tests/ParserTests.fs b/tests/FSharp.Compiler.Service.Tests/ParserTests.fs index bf36e2755ef..7e7339cdb5f 100644 --- a/tests/FSharp.Compiler.Service.Tests/ParserTests.fs +++ b/tests/FSharp.Compiler.Service.Tests/ParserTests.fs @@ -155,7 +155,7 @@ let f (x """ match getSingleDeclInModule parseResults with - | SynModuleDecl.Let (_, [ SynBinding (headPat = headPat) ], _) -> + | SynModuleDecl.Let (bindings = [ SynBinding (headPat = headPat) ] ; range = _) -> match headPat with | SynPat.LongIdent (argPats=SynArgPats.Pats [ SynPat.FromParseError (SynPat.Paren (SynPat.Named _, _), _) ]) -> () | _ -> failwith "Unexpected tree" @@ -168,7 +168,7 @@ let f (x, y """ match getSingleDeclInModule parseResults with - | SynModuleDecl.Let (_, [ SynBinding (headPat = headPat) ], _) -> + | SynModuleDecl.Let (bindings = [ SynBinding (headPat = headPat) ] ; range = _) -> match headPat with | SynPat.LongIdent (argPats=SynArgPats.Pats [ SynPat.FromParseError (SynPat.Paren (SynPat.Tuple _, _), _) ]) -> () | _ -> failwith "Unexpected tree" @@ -181,7 +181,7 @@ let f (x, """ match getSingleDeclInModule parseResults with - | SynModuleDecl.Let (_, [ SynBinding (headPat = SynPat.LongIdent (argPats = SynArgPats.Pats [ pat ])) ], _) -> + | SynModuleDecl.Let (bindings = [ SynBinding (headPat = SynPat.LongIdent (argPats = SynArgPats.Pats [ pat ])) ] ; range = _) -> match pat with | SynPat.FromParseError (SynPat.Paren (SynPat.Tuple(elementPats = [SynPat.Named _; SynPat.Wild _]), _), _) -> () | _ -> failwith "Unexpected tree" @@ -216,7 +216,7 @@ let ``Expr - Tuple 07`` () = let x = 1, """ match getSingleModuleMemberDecls parseResults with - | [ SynModuleDecl.Let(_, [ (SynBinding(expr = expr)) ], range) ] -> + | [ SynModuleDecl.Let(bindings = [ (SynBinding(expr = expr)) ] ; range = range) ] -> shouldEqual expr.Range.StartLine expr.Range.EndLine shouldEqual range.StartLine range.EndLine | _ -> failwith "Unexpected tree" diff --git a/tests/FSharp.Compiler.Service.Tests/ServiceUntypedParseTests.fs b/tests/FSharp.Compiler.Service.Tests/ServiceUntypedParseTests.fs index c6711965e72..9ee31b25b63 100644 --- a/tests/FSharp.Compiler.Service.Tests/ServiceUntypedParseTests.fs +++ b/tests/FSharp.Compiler.Service.Tests/ServiceUntypedParseTests.fs @@ -146,7 +146,7 @@ let foo8 = () let (SynModuleOrNamespace (decls = decls)) = parseSourceCodeAndGetModule source decls |> List.map (fun decl -> match decl with - | SynModuleDecl.Let (_, [SynBinding (attributes = attributeLists)], _) -> + | SynModuleDecl.Let (bindings = [SynBinding (attributes = attributeLists)]) -> attributeLists |> List.map (fun list -> list.Attributes.Length, getRangeCoords list.Range) | _ -> failwith "Could not get binding") |> shouldEqual diff --git a/tests/FSharp.Compiler.Service.Tests/Symbols.fs b/tests/FSharp.Compiler.Service.Tests/Symbols.fs index 220bfc62fde..0fbd8ec84ac 100644 --- a/tests/FSharp.Compiler.Service.Tests/Symbols.fs +++ b/tests/FSharp.Compiler.Service.Tests/Symbols.fs @@ -67,7 +67,7 @@ extern int private c() |> List.zip decls |> List.iter (fun (actual, expected) -> match actual with - | SynModuleDecl.Let (_, [SynBinding (accessibility = access)], _) -> Option.map string access |> shouldEqual expected + | SynModuleDecl.Let (bindings = [SynBinding (accessibility = access)]) -> Option.map string access |> shouldEqual expected | decl -> failwithf "unexpected decl: %O" decl) [ "a", (true, false, false, false) @@ -91,7 +91,7 @@ extern int AccessibleChildren()""" match parseResults with | ParsedInput.ImplFile (ParsedImplFileInput (contents = [ SynModuleOrNamespace.SynModuleOrNamespace(decls = [ - SynModuleDecl.Let(false, [ SynBinding(range = mb) ] , ml) + SynModuleDecl.Let(isRecursive = false ; bindings = [ SynBinding(range = mb) ] ; range = ml) ]) ])) -> assertRange (2, 0) (3, 31) ml assertRange (2, 0) (3, 31) mb @@ -107,10 +107,10 @@ extern void setCallbridgeSupportTarget(IntPtr newTarget) match ast with | ParsedInput.ImplFile(ParsedImplFileInput(contents = [ SynModuleOrNamespace.SynModuleOrNamespace(decls = [ - SynModuleDecl.Let(false, [ SynBinding(returnInfo = + SynModuleDecl.Let(isRecursive = false ; bindings = [ SynBinding(returnInfo = Some (SynBindingReturnInfo(typeName = SynType.App(typeName = - SynType.LongIdent(SynLongIdent([unitIdent], [], [Some (IdentTrivia.OriginalNotation "void")])))))) ] , _) + SynType.LongIdent(SynLongIdent([unitIdent], [], [Some (IdentTrivia.OriginalNotation "void")])))))) ] ) ]) ])) -> Assert.Equal("unit", unitIdent.idText) @@ -127,14 +127,14 @@ extern int AccessibleChildren(int* x) match ast with | ParsedInput.ImplFile(ParsedImplFileInput(contents = [ SynModuleOrNamespace.SynModuleOrNamespace(decls = [ - SynModuleDecl.Let(false, [ SynBinding(headPat = + SynModuleDecl.Let(isRecursive = false ; bindings = [ SynBinding(headPat = SynPat.LongIdent(argPats = SynArgPats.Pats [ SynPat.Tuple(elementPats = [ SynPat.Attrib(pat = SynPat.Typed(targetType = SynType.App(typeName = SynType.LongIdent( SynLongIdent([nativeptrIdent], [], [Some (IdentTrivia.OriginalNotation "*")]) )))) ]) - ])) ], _) + ])) ]) ]) ])) -> Assert.Equal("nativeptr", nativeptrIdent.idText) @@ -151,14 +151,14 @@ extern int AccessibleChildren(obj& x) match ast with | ParsedInput.ImplFile(ParsedImplFileInput(contents = [ SynModuleOrNamespace.SynModuleOrNamespace(decls = [ - SynModuleDecl.Let(false, [ SynBinding(headPat = + SynModuleDecl.Let(isRecursive = false ; bindings = [ SynBinding(headPat = SynPat.LongIdent(argPats = SynArgPats.Pats [ SynPat.Tuple(elementPats = [ SynPat.Attrib(pat = SynPat.Typed(targetType = SynType.App(typeName = SynType.LongIdent( SynLongIdent([byrefIdent], [], [Some (IdentTrivia.OriginalNotation "&")]) )))) ]) - ])) ], _) + ])) ]) ]) ])) -> Assert.Equal("byref", byrefIdent.idText) @@ -175,14 +175,14 @@ extern int AccessibleChildren(void* x) match ast with | ParsedInput.ImplFile(ParsedImplFileInput(contents = [ SynModuleOrNamespace.SynModuleOrNamespace(decls = [ - SynModuleDecl.Let(false, [ SynBinding(headPat = + SynModuleDecl.Let(isRecursive = false ; bindings = [ SynBinding(headPat = SynPat.LongIdent(argPats = SynArgPats.Pats [ SynPat.Tuple(elementPats = [ SynPat.Attrib(pat = SynPat.Typed(targetType = SynType.App(typeName = SynType.LongIdent( SynLongIdent([nativeintIdent], [], [Some (IdentTrivia.OriginalNotation "void*")]) )))) ]) - ])) ], _) + ])) ]) ]) ])) -> Assert.Equal("nativeint", nativeintIdent.idText) diff --git a/tests/FSharp.Compiler.Service.Tests/XmlDocTests.fs b/tests/FSharp.Compiler.Service.Tests/XmlDocTests.fs index 3e427293e25..2097997019d 100644 --- a/tests/FSharp.Compiler.Service.Tests/XmlDocTests.fs +++ b/tests/FSharp.Compiler.Service.Tests/XmlDocTests.fs @@ -93,7 +93,7 @@ let (|Members|MemberSigs|) = function let (|Decls|LetBindings|ValSig|LetOrUse|) = function | ParsedInput.ImplFile(ParsedImplFileInput(contents = [ SynModuleOrNamespace.SynModuleOrNamespace(decls = [ - SynModuleDecl.Let(bindings = [SynBinding(expr = SynExpr.LetOrUse(range = range; bindings = bindings))])])])) -> + SynModuleDecl.Let(bindings = [SynBinding(expr = SynExpr.LetOrUse({ Range = range; Bindings = bindings }))])])])) -> LetOrUse(range, bindings) | ParsedInput.ImplFile(ParsedImplFileInput(contents = [ @@ -103,7 +103,7 @@ let (|Decls|LetBindings|ValSig|LetOrUse|) = function | ParsedInput.ImplFile(ParsedImplFileInput(contents = [ SynModuleOrNamespace.SynModuleOrNamespace(decls = [ - SynModuleDecl.Expr(expr = SynExpr.LetOrUse(range = range; bindings = bindings))])])) -> + SynModuleDecl.Expr(expr = SynExpr.LetOrUse({ Range = range; Bindings = bindings }))])])) -> LetBindings(range, bindings) | ParsedInput.ImplFile(ParsedImplFileInput(contents = [ diff --git a/tests/service/data/SyntaxTree/Binding/ColonBeforeReturnTypeIsPartOfTrivia.fs.bsl b/tests/service/data/SyntaxTree/Binding/ColonBeforeReturnTypeIsPartOfTrivia.fs.bsl index 654c3bed59d..065ab43c1c4 100644 --- a/tests/service/data/SyntaxTree/Binding/ColonBeforeReturnTypeIsPartOfTrivia.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/ColonBeforeReturnTypeIsPartOfTrivia.fs.bsl @@ -32,8 +32,8 @@ ImplFile (2,4--2,7), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None EqualsRange = Some (2,14--2,15) })], - (2,0--2,31))], PreXmlDocEmpty, [], None, (2,0--3,0), - { LeadingKeyword = None })], (true, true), + (2,0--2,31), { InKeyword = None })], PreXmlDocEmpty, [], None, + (2,0--3,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/ConditionalDirectiveAroundInlineKeyword.fs.bsl b/tests/service/data/SyntaxTree/Binding/ConditionalDirectiveAroundInlineKeyword.fs.bsl index 495a509c7ca..aab2187eed5 100644 --- a/tests/service/data/SyntaxTree/Binding/ConditionalDirectiveAroundInlineKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/ConditionalDirectiveAroundInlineKeyword.fs.bsl @@ -42,9 +42,9 @@ ImplFile (6,15--6,39)), Ident ar, (6,15--6,42)), (6,4--6,12), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = Some (4,4--4,10) - EqualsRange = Some (6,13--6,14) })], (2,0--6,42))], - PreXmlDocEmpty, [], None, (2,0--7,0), { LeadingKeyword = None })], - (true, true), + EqualsRange = Some (6,13--6,14) })], (2,0--6,42), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--7,0), + { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [If (Not (Ident "FOO"), (3,0--3,8)); EndIf (5,0--5,6)] WarnDirectives = [] diff --git a/tests/service/data/SyntaxTree/Binding/InlineKeywordInBinding.fs.bsl b/tests/service/data/SyntaxTree/Binding/InlineKeywordInBinding.fs.bsl index e194eb19fab..d167f6f6606 100644 --- a/tests/service/data/SyntaxTree/Binding/InlineKeywordInBinding.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/InlineKeywordInBinding.fs.bsl @@ -22,36 +22,38 @@ ImplFile Named (SynIdent (z, None), false, None, (2,15--2,16))], None, (2,11--2,16)), None, LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, true, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo - ([[SynArgInfo ([], false, Some b)]; - [SynArgInfo ([], false, Some c)]], - SynArgInfo ([], false, None)), None), - LongIdent - (SynLongIdent ([a], [], [None]), None, None, - Pats - [Named - (SynIdent (b, None), false, None, (3,17--3,18)); - Named - (SynIdent (c, None), false, None, (3,19--3,20))], - None, (3,15--3,20)), None, - Const (Unit, (3,23--3,25)), (3,15--3,20), NoneAtLet, - { LeadingKeyword = Let (3,4--3,7) - InlineKeyword = Some (3,8--3,14) - EqualsRange = Some (3,21--3,22) })], - Const (Unit, (4,4--4,6)), (3,4--4,6), - { LetOrUseKeyword = (3,4--3,7) - InKeyword = None - EqualsRange = Some (3,21--3,22) }), (2,11--2,16), - NoneAtLet, { LeadingKeyword = Let (2,0--2,3) - InlineKeyword = Some (2,4--2,10) - EqualsRange = Some (2,17--2,18) })], (2,0--4,6))], - PreXmlDocEmpty, [], None, (2,0--5,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, true, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo + ([[SynArgInfo ([], false, Some b)]; + [SynArgInfo ([], false, Some c)]], + SynArgInfo ([], false, None)), None), + LongIdent + (SynLongIdent ([a], [], [None]), None, None, + Pats + [Named + (SynIdent (b, None), false, None, + (3,17--3,18)); + Named + (SynIdent (c, None), false, None, + (3,19--3,20))], None, (3,15--3,20)), None, + Const (Unit, (3,23--3,25)), (3,15--3,20), NoneAtLet, + { LeadingKeyword = Let (3,4--3,7) + InlineKeyword = Some (3,8--3,14) + EqualsRange = Some (3,21--3,22) })] + Body = Const (Unit, (4,4--4,6)) + Range = (3,4--4,6) + Trivia = { InKeyword = None } }, (2,11--2,16), NoneAtLet, + { LeadingKeyword = Let (2,0--2,3) + InlineKeyword = Some (2,4--2,10) + EqualsRange = Some (2,17--2,18) })], (2,0--4,6), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--5,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/RangeOfAttributeBetweenLetKeywordAndPatternShouldBeIncludedInSynModuleDeclLet.fs.bsl b/tests/service/data/SyntaxTree/Binding/RangeOfAttributeBetweenLetKeywordAndPatternShouldBeIncludedInSynModuleDeclLet.fs.bsl index 90cbfb00a2a..13347c94622 100644 --- a/tests/service/data/SyntaxTree/Binding/RangeOfAttributeBetweenLetKeywordAndPatternShouldBeIncludedInSynModuleDeclLet.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/RangeOfAttributeBetweenLetKeywordAndPatternShouldBeIncludedInSynModuleDeclLet.fs.bsl @@ -31,8 +31,9 @@ ImplFile Const (Int32 1, (2,24--2,25)), (2,4--2,21), Yes (2,0--2,25), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,22--2,23) })], (2,0--2,25))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,22--2,23) })], (2,0--2,25), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/RangeOfAttributeShouldBeIncludedInSynMemberDefnLetBindings.fs.bsl b/tests/service/data/SyntaxTree/Binding/RangeOfAttributeShouldBeIncludedInSynMemberDefnLetBindings.fs.bsl index 791854800d3..cd43cce87f7 100644 --- a/tests/service/data/SyntaxTree/Binding/RangeOfAttributeShouldBeIncludedInSynMemberDefnLetBindings.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/RangeOfAttributeShouldBeIncludedInSynMemberDefnLetBindings.fs.bsl @@ -36,11 +36,11 @@ ImplFile { LeadingKeyword = Let (4,4--4,7) InlineKeyword = None EqualsRange = Some (4,10--4,11) })], false, false, - (3,4--4,13))], (3,4--4,13)), [], None, (2,5--4,13), - { LeadingKeyword = Type (2,0--2,4) - EqualsRange = Some (2,9--2,10) - WithKeyword = None })], (2,0--4,13))], PreXmlDocEmpty, [], - None, (2,0--5,0), { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + (3,4--4,13), { InKeyword = None })], (3,4--4,13)), [], + None, (2,5--4,13), { LeadingKeyword = Type (2,0--2,4) + EqualsRange = Some (2,9--2,10) + WithKeyword = None })], (2,0--4,13))], + PreXmlDocEmpty, [], None, (2,0--5,0), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/RangeOfAttributeShouldBeIncludedInSynModuleDeclLet.fs.bsl b/tests/service/data/SyntaxTree/Binding/RangeOfAttributeShouldBeIncludedInSynModuleDeclLet.fs.bsl index b15cdc324a7..8731bb1d5b5 100644 --- a/tests/service/data/SyntaxTree/Binding/RangeOfAttributeShouldBeIncludedInSynModuleDeclLet.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/RangeOfAttributeShouldBeIncludedInSynModuleDeclLet.fs.bsl @@ -23,8 +23,9 @@ ImplFile Const (Int32 0, (3,8--3,9)), (2,0--3,5), Yes (2,0--3,9), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (2,0--3,9))], - PreXmlDocEmpty, [], None, (2,0--4,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,6--3,7) })], (2,0--3,9), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--4,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInLocalLetBinding.fs.bsl b/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInLocalLetBinding.fs.bsl index 9ff03a69ae4..cf1d8d6e6f7 100644 --- a/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInLocalLetBinding.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInLocalLetBinding.fs.bsl @@ -7,24 +7,23 @@ ImplFile [Expr (Do (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (z, None), false, None, (3,8--3,9)), - None, Const (Int32 2, (3,12--3,13)), (3,8--3,9), - Yes (3,4--3,13), { LeadingKeyword = Let (3,4--3,7) - InlineKeyword = None - EqualsRange = Some (3,10--3,11) })], - Const (Unit, (4,4--4,6)), (3,4--4,6), - { LetOrUseKeyword = (3,4--3,7) - InKeyword = None - EqualsRange = Some (3,10--3,11) }), (2,0--4,6)), - (2,0--4,6))], PreXmlDocEmpty, [], None, (2,0--5,0), - { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (z, None), false, None, (3,8--3,9)), + None, Const (Int32 2, (3,12--3,13)), (3,8--3,9), + Yes (3,4--3,13), { LeadingKeyword = Let (3,4--3,7) + InlineKeyword = None + EqualsRange = Some (3,10--3,11) })] + Body = Const (Unit, (4,4--4,6)) + Range = (3,4--4,6) + Trivia = { InKeyword = None } }, (2,0--4,6)), (2,0--4,6))], + PreXmlDocEmpty, [], None, (2,0--5,0), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInLocalLetBindingTyped.fs.bsl b/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInLocalLetBindingTyped.fs.bsl index 34d155903b7..5c6a98d6937 100644 --- a/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInLocalLetBindingTyped.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInLocalLetBindingTyped.fs.bsl @@ -10,32 +10,31 @@ ImplFile [Expr (Do (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (z, None), false, None, (3,8--3,9)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (3,11--3,14), [], - { ColonRange = Some (3,9--3,10) })), - Typed - (Const (Int32 2, (3,17--3,18)), - LongIdent (SynLongIdent ([int], [], [None])), - (3,17--3,18)), (3,8--3,9), Yes (3,4--3,18), - { LeadingKeyword = Let (3,4--3,7) - InlineKeyword = None - EqualsRange = Some (3,15--3,16) })], - Const (Unit, (4,4--4,6)), (3,4--4,6), - { LetOrUseKeyword = (3,4--3,7) - InKeyword = None - EqualsRange = Some (3,15--3,16) }), (2,0--4,6)), - (2,0--4,6))], PreXmlDocEmpty, [], None, (2,0--5,0), - { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (z, None), false, None, (3,8--3,9)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (3,11--3,14), [], + { ColonRange = Some (3,9--3,10) })), + Typed + (Const (Int32 2, (3,17--3,18)), + LongIdent (SynLongIdent ([int], [], [None])), + (3,17--3,18)), (3,8--3,9), Yes (3,4--3,18), + { LeadingKeyword = Let (3,4--3,7) + InlineKeyword = None + EqualsRange = Some (3,15--3,16) })] + Body = Const (Unit, (4,4--4,6)) + Range = (3,4--4,6) + Trivia = { InKeyword = None } }, (2,0--4,6)), (2,0--4,6))], + PreXmlDocEmpty, [], None, (2,0--5,0), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInSynModuleDeclLetBinding.fs.bsl b/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInSynModuleDeclLetBinding.fs.bsl index 8453e7e60c9..25a5aa97f25 100644 --- a/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInSynModuleDeclLetBinding.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInSynModuleDeclLetBinding.fs.bsl @@ -18,8 +18,9 @@ ImplFile Const (Int32 12, (2,8--2,10)), (2,4--2,5), Yes (2,0--2,10), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--2,10))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,6--2,7) })], (2,0--2,10), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInSynModuleDeclLetBindingTyped.fs.bsl b/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInSynModuleDeclLetBindingTyped.fs.bsl index 77819f9484e..3fad6c6ce95 100644 --- a/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInSynModuleDeclLetBindingTyped.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/RangeOfEqualSignShouldBePresentInSynModuleDeclLetBindingTyped.fs.bsl @@ -25,8 +25,9 @@ ImplFile (2,4--2,5), Yes (2,0--2,16), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,12--2,13) })], (2,0--2,16))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,12--2,13) })], (2,0--2,16), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynExprLetOrUseBinding.fs.bsl b/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynExprLetOrUseBinding.fs.bsl index c2e98c6a098..a54754c7140 100644 --- a/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynExprLetOrUseBinding.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynExprLetOrUseBinding.fs.bsl @@ -16,32 +16,34 @@ ImplFile (None, SynValInfo ([], SynArgInfo ([], false, None)), None), Named (SynIdent (a, None), false, None, (2,4--2,5)), None, LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo - ([[SynArgInfo ([], false, Some c)]], - SynArgInfo ([], false, None)), None), - LongIdent - (SynLongIdent ([b], [], [None]), None, None, - Pats - [Named - (SynIdent (c, None), false, None, (3,10--3,11))], - None, (3,8--3,11)), None, Ident d, (3,8--3,11), - NoneAtLet, { LeadingKeyword = Let (3,4--3,7) - InlineKeyword = None - EqualsRange = Some (3,12--3,13) })], - Const (Unit, (4,4--4,6)), (3,4--4,6), - { LetOrUseKeyword = (3,4--3,7) - InKeyword = None - EqualsRange = Some (3,12--3,13) }), (2,4--2,5), NoneAtLet, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo + ([[SynArgInfo ([], false, Some c)]], + SynArgInfo ([], false, None)), None), + LongIdent + (SynLongIdent ([b], [], [None]), None, None, + Pats + [Named + (SynIdent (c, None), false, None, + (3,10--3,11))], None, (3,8--3,11)), None, + Ident d, (3,8--3,11), NoneAtLet, + { LeadingKeyword = Let (3,4--3,7) + InlineKeyword = None + EqualsRange = Some (3,12--3,13) })] + Body = Const (Unit, (4,4--4,6)) + Range = (3,4--4,6) + Trivia = { InKeyword = None } }, (2,4--2,5), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--4,6))], - PreXmlDocEmpty, [], None, (2,0--5,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,6--2,7) })], (2,0--4,6), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--5,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynModuleDeclLetBinding.fs.bsl b/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynModuleDeclLetBinding.fs.bsl index c2d3ab9e526..444e70f8b63 100644 --- a/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynModuleDeclLetBinding.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynModuleDeclLetBinding.fs.bsl @@ -18,8 +18,9 @@ ImplFile Const (Int32 12, (2,8--2,10)), (2,4--2,5), Yes (2,0--2,10), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--2,10))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,6--2,7) })], (2,0--2,10), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynModuleDeclLetBindingWithAttributes.fs.bsl b/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynModuleDeclLetBindingWithAttributes.fs.bsl index af82b819e97..6db963f547d 100644 --- a/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynModuleDeclLetBindingWithAttributes.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/RangeOfLetKeywordShouldBePresentInSynModuleDeclLetBindingWithAttributes.fs.bsl @@ -26,8 +26,9 @@ ImplFile Const (Int32 12, (5,8--5,10)), (2,0--5,5), Yes (3,0--5,10), { LeadingKeyword = Let (5,0--5,3) InlineKeyword = None - EqualsRange = Some (5,6--5,7) })], (2,0--5,10))], - PreXmlDocEmpty, [], None, (3,0--6,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [LineComment (4,0--4,15)] }, set [])) + EqualsRange = Some (5,6--5,7) })], (2,0--5,10), + { InKeyword = None })], PreXmlDocEmpty, [], None, (3,0--6,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [LineComment (4,0--4,15)] }, set [])) diff --git a/tests/service/data/SyntaxTree/Binding/TupleReturnTypeOfBindingShouldContainStars.fs.bsl b/tests/service/data/SyntaxTree/Binding/TupleReturnTypeOfBindingShouldContainStars.fs.bsl index 0ac9a8d3c94..a3c7a7589fc 100644 --- a/tests/service/data/SyntaxTree/Binding/TupleReturnTypeOfBindingShouldContainStars.fs.bsl +++ b/tests/service/data/SyntaxTree/Binding/TupleReturnTypeOfBindingShouldContainStars.fs.bsl @@ -36,7 +36,8 @@ ImplFile (2,8--2,20)), (2,23--2,38)), (2,4--2,5), Yes (2,0--2,38), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,21--2,22) })], (2,0--2,38)); + EqualsRange = Some (2,21--2,22) })], (2,0--2,38), + { InKeyword = None }); Let (false, [SynBinding @@ -75,8 +76,9 @@ ImplFile (3,8--3,27)), (3,30--3,42)), (3,4--3,5), Yes (3,0--3,42), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,28--3,29) })], (3,0--3,42))], - PreXmlDocEmpty, [], None, (2,0--4,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,28--3,29) })], (3,0--3,42), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--4,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/CodeComment/BlockCommentInSourceCode.fs.bsl b/tests/service/data/SyntaxTree/CodeComment/BlockCommentInSourceCode.fs.bsl index 9dcd99749c5..e4901fa263f 100644 --- a/tests/service/data/SyntaxTree/CodeComment/BlockCommentInSourceCode.fs.bsl +++ b/tests/service/data/SyntaxTree/CodeComment/BlockCommentInSourceCode.fs.bsl @@ -31,8 +31,9 @@ ImplFile Const (Int32 42, (2,23--2,25)), (2,19--2,25)), (2,4--2,16), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,17--2,18) })], (2,0--2,25))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [BlockComment (2,6--2,13)] }, set [])) + EqualsRange = Some (2,17--2,18) })], (2,0--2,25), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [BlockComment (2,6--2,13)] }, set [])) diff --git a/tests/service/data/SyntaxTree/CodeComment/TripleSlashCommentShouldBeCapturedIfUsedInAnInvalidLocation.fs.bsl b/tests/service/data/SyntaxTree/CodeComment/TripleSlashCommentShouldBeCapturedIfUsedInAnInvalidLocation.fs.bsl index 86c4c524b60..01db4a77f0d 100644 --- a/tests/service/data/SyntaxTree/CodeComment/TripleSlashCommentShouldBeCapturedIfUsedInAnInvalidLocation.fs.bsl +++ b/tests/service/data/SyntaxTree/CodeComment/TripleSlashCommentShouldBeCapturedIfUsedInAnInvalidLocation.fs.bsl @@ -34,9 +34,9 @@ ImplFile { SeparatorRange = None }), (2,0--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (2,0--9,9))], - PreXmlDocEmpty, [], None, (3,0--10,0), { LeadingKeyword = None })], - (true, true), + EqualsRange = Some (3,6--3,7) })], (2,0--9,9), + { InKeyword = None })], PreXmlDocEmpty, [], None, (3,0--10,0), + { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = diff --git a/tests/service/data/SyntaxTree/CodeComment/TripleSlashCommentShouldNotBeCaptured.fs.bsl b/tests/service/data/SyntaxTree/CodeComment/TripleSlashCommentShouldNotBeCaptured.fs.bsl index e5f11934a8f..874620f3a24 100644 --- a/tests/service/data/SyntaxTree/CodeComment/TripleSlashCommentShouldNotBeCaptured.fs.bsl +++ b/tests/service/data/SyntaxTree/CodeComment/TripleSlashCommentShouldNotBeCaptured.fs.bsl @@ -15,8 +15,9 @@ ImplFile Const (Int32 0, (3,8--3,9)), (2,0--3,5), Yes (3,0--3,9), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (2,0--3,9))], - PreXmlDocEmpty, [], None, (3,0--4,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,6--3,7) })], (2,0--3,9), + { InKeyword = None })], PreXmlDocEmpty, [], None, (3,0--4,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/ComputationExpression/MultipleSynExprAndBangHaveRangeThatStartsAtAndAndEndsAfterExpression.fs.bsl b/tests/service/data/SyntaxTree/ComputationExpression/MultipleSynExprAndBangHaveRangeThatStartsAtAndAndEndsAfterExpression.fs.bsl index 6aebfc848e9..75b64f6e983 100644 --- a/tests/service/data/SyntaxTree/ComputationExpression/MultipleSynExprAndBangHaveRangeThatStartsAtAndAndEndsAfterExpression.fs.bsl +++ b/tests/service/data/SyntaxTree/ComputationExpression/MultipleSynExprAndBangHaveRangeThatStartsAtAndAndEndsAfterExpression.fs.bsl @@ -13,62 +13,63 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (bar, None), false, None, (3,9--3,12)), - None, - App - (NonAtomic, false, Ident getBar, - Const (Unit, (3,22--3,24)), (3,15--3,24)), - (3,4--3,24), Yes (3,4--3,24), - { LeadingKeyword = Let (3,4--3,8) - InlineKeyword = None - EqualsRange = Some (3,13--3,14) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (foo, None), false, None, (4,9--4,12)), - None, - App - (NonAtomic, false, Ident getFoo, - Const (Unit, (4,22--4,24)), (4,15--4,24)), - (4,4--4,24), Yes (4,4--4,24), - { LeadingKeyword = And (4,4--4,8) - InlineKeyword = Some (4,25--4,27) - EqualsRange = Some (4,13--4,14) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (meh, None), false, None, (5,9--5,12)), - None, - App - (NonAtomic, false, Ident getMeh, - Const (Unit, (5,22--5,24)), (5,15--5,24)), - (5,4--5,24), Yes (5,4--5,24), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,13--5,14) })], - YieldOrReturn - ((false, true), Ident bar, (6,4--6,14), - { YieldOrReturnKeyword = (6,4--6,10) }), (3,4--6,14), - { LetOrUseKeyword = (3,4--3,8) - InKeyword = None - EqualsRange = Some (3,13--3,14) }), (2,6--7,1)), - (2,0--7,1)), (2,0--7,1))], PreXmlDocEmpty, [], None, (2,0--7,1), + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (bar, None), false, None, (3,9--3,12)), + None, + App + (NonAtomic, false, Ident getBar, + Const (Unit, (3,22--3,24)), (3,15--3,24)), + (3,4--3,24), Yes (3,4--3,24), + { LeadingKeyword = LetBang (3,4--3,8) + InlineKeyword = None + EqualsRange = Some (3,13--3,14) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (foo, None), false, None, (4,9--4,12)), + None, + App + (NonAtomic, false, Ident getFoo, + Const (Unit, (4,22--4,24)), (4,15--4,24)), + (4,4--4,24), Yes (4,4--4,24), + { LeadingKeyword = AndBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,13--4,14) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (meh, None), false, None, (5,9--5,12)), + None, + App + (NonAtomic, false, Ident getMeh, + Const (Unit, (5,22--5,24)), (5,15--5,24)), + (5,4--5,24), Yes (5,4--5,24), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,13--5,14) })] + Body = + YieldOrReturn + ((false, true), Ident bar, (6,4--6,14), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (3,4--6,14) + Trivia = { InKeyword = None } }, (2,6--7,1)), (2,0--7,1)), + (2,0--7,1))], PreXmlDocEmpty, [], None, (2,0--7,1), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] diff --git a/tests/service/data/SyntaxTree/ComputationExpression/SynExprAndBangRangeStartsAtAndAndEndsAfterExpression.fs.bsl b/tests/service/data/SyntaxTree/ComputationExpression/SynExprAndBangRangeStartsAtAndAndEndsAfterExpression.fs.bsl index 188f6cb28c4..54a38b7a63c 100644 --- a/tests/service/data/SyntaxTree/ComputationExpression/SynExprAndBangRangeStartsAtAndAndEndsAfterExpression.fs.bsl +++ b/tests/service/data/SyntaxTree/ComputationExpression/SynExprAndBangRangeStartsAtAndAndEndsAfterExpression.fs.bsl @@ -13,46 +13,47 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (bar, None), false, None, (3,9--3,12)), - None, - App - (NonAtomic, false, Ident getBar, - Const (Unit, (3,22--3,24)), (3,15--3,24)), - (3,4--3,24), Yes (3,4--3,24), - { LeadingKeyword = Let (3,4--3,8) - InlineKeyword = None - EqualsRange = Some (3,13--3,14) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (foo, None), false, None, (5,9--5,12)), - None, - App - (NonAtomic, false, Ident getFoo, - Const (Unit, (5,22--5,24)), (5,15--5,24)), - (5,4--5,24), Yes (5,4--5,24), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,13--5,14) })], - YieldOrReturn - ((false, true), Ident bar, (7,4--7,14), - { YieldOrReturnKeyword = (7,4--7,10) }), (3,4--7,14), - { LetOrUseKeyword = (3,4--3,8) - InKeyword = None - EqualsRange = Some (3,13--3,14) }), (2,6--8,1)), - (2,0--8,1)), (2,0--8,1))], PreXmlDocEmpty, [], None, (2,0--8,1), + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (bar, None), false, None, (3,9--3,12)), + None, + App + (NonAtomic, false, Ident getBar, + Const (Unit, (3,22--3,24)), (3,15--3,24)), + (3,4--3,24), Yes (3,4--3,24), + { LeadingKeyword = LetBang (3,4--3,8) + InlineKeyword = None + EqualsRange = Some (3,13--3,14) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (foo, None), false, None, (5,9--5,12)), + None, + App + (NonAtomic, false, Ident getFoo, + Const (Unit, (5,22--5,24)), (5,15--5,24)), + (5,4--5,24), Yes (5,4--5,24), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,13--5,14) })] + Body = + YieldOrReturn + ((false, true), Ident bar, (7,4--7,14), + { YieldOrReturnKeyword = (7,4--7,10) }) + Range = (3,4--7,14) + Trivia = { InKeyword = None } }, (2,6--8,1)), (2,0--8,1)), + (2,0--8,1))], PreXmlDocEmpty, [], None, (2,0--8,1), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] diff --git a/tests/service/data/SyntaxTree/ConditionalDirective/DirectivesInMultilineCommentAreNotReportedAsTrivia.fs.bsl b/tests/service/data/SyntaxTree/ConditionalDirective/DirectivesInMultilineCommentAreNotReportedAsTrivia.fs.bsl index 8ed093aa434..3fb68701b0d 100644 --- a/tests/service/data/SyntaxTree/ConditionalDirective/DirectivesInMultilineCommentAreNotReportedAsTrivia.fs.bsl +++ b/tests/service/data/SyntaxTree/ConditionalDirective/DirectivesInMultilineCommentAreNotReportedAsTrivia.fs.bsl @@ -17,8 +17,9 @@ ImplFile Const (Int32 42, (8,4--8,6)), (2,4--2,5), Yes (2,0--8,6), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--8,6))], - PreXmlDocEmpty, [], None, (2,0--9,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [BlockComment (3,0--7,2)] }, set [])) + EqualsRange = Some (2,6--2,7) })], (2,0--8,6), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--9,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [BlockComment (3,0--7,2)] }, set [])) diff --git a/tests/service/data/SyntaxTree/ConditionalDirective/DirectivesInMultilineStringAreNotReportedAsTrivia.fs.bsl b/tests/service/data/SyntaxTree/ConditionalDirective/DirectivesInMultilineStringAreNotReportedAsTrivia.fs.bsl index 2c1508983b8..bf1517651e9 100644 --- a/tests/service/data/SyntaxTree/ConditionalDirective/DirectivesInMultilineStringAreNotReportedAsTrivia.fs.bsl +++ b/tests/service/data/SyntaxTree/ConditionalDirective/DirectivesInMultilineStringAreNotReportedAsTrivia.fs.bsl @@ -24,8 +24,9 @@ ImplFile (2,8--7,3)), (2,4--2,5), Yes (2,0--7,3), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--7,3))], - PreXmlDocEmpty, [], None, (2,0--8,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,6--2,7) })], (2,0--7,3), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--8,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/ConditionalDirective/NestedIfElseEndif.fs.bsl b/tests/service/data/SyntaxTree/ConditionalDirective/NestedIfElseEndif.fs.bsl index 3a6cd1220fd..0f6e8574919 100644 --- a/tests/service/data/SyntaxTree/ConditionalDirective/NestedIfElseEndif.fs.bsl +++ b/tests/service/data/SyntaxTree/ConditionalDirective/NestedIfElseEndif.fs.bsl @@ -15,9 +15,9 @@ ImplFile Const (Int32 3, (10,8--10,9)), (2,4--2,5), Yes (2,0--10,9), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--10,9))], - PreXmlDocEmpty, [], None, (2,0--12,0), { LeadingKeyword = None })], - (true, true), + EqualsRange = Some (2,6--2,7) })], (2,0--10,9), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--12,0), + { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [If (Ident "FOO", (3,4--3,11)); If (Ident "MEH", (4,8--4,15)); Else (6,8--6,13); EndIf (8,8--8,14); Else (9,4--9,9); diff --git a/tests/service/data/SyntaxTree/ConditionalDirective/NestedIfEndifWithComplexExpressions.fs.bsl b/tests/service/data/SyntaxTree/ConditionalDirective/NestedIfEndifWithComplexExpressions.fs.bsl index 2a2ab666df7..95b3b1193c2 100644 --- a/tests/service/data/SyntaxTree/ConditionalDirective/NestedIfEndifWithComplexExpressions.fs.bsl +++ b/tests/service/data/SyntaxTree/ConditionalDirective/NestedIfEndifWithComplexExpressions.fs.bsl @@ -15,9 +15,9 @@ ImplFile Const (Unit, (11,4--11,6)), (2,4--2,5), Yes (2,0--11,6), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--11,6))], - PreXmlDocEmpty, [], None, (2,0--12,0), { LeadingKeyword = None })], - (true, true), + EqualsRange = Some (2,6--2,7) })], (2,0--11,6), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--12,0), + { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [If (Not (Ident "DEBUG"), (3,4--3,14)); If (And (Ident "FOO", Ident "BAR"), (4,8--4,22)); diff --git a/tests/service/data/SyntaxTree/ConditionalDirective/SingleIfElseEndif.fs.bsl b/tests/service/data/SyntaxTree/ConditionalDirective/SingleIfElseEndif.fs.bsl index 6a070b4b63c..309e45cb72d 100644 --- a/tests/service/data/SyntaxTree/ConditionalDirective/SingleIfElseEndif.fs.bsl +++ b/tests/service/data/SyntaxTree/ConditionalDirective/SingleIfElseEndif.fs.bsl @@ -15,9 +15,9 @@ ImplFile Const (Int32 42, (6,4--6,6)), (2,4--2,5), Yes (2,0--6,6), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--6,6))], - PreXmlDocEmpty, [], None, (2,0--8,0), { LeadingKeyword = None })], - (true, true), + EqualsRange = Some (2,6--2,7) })], (2,0--6,6), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--8,0), + { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [If (Ident "DEBUG", (3,4--3,13)); Else (5,4--5,9); EndIf (7,4--7,10)] WarnDirectives = [] diff --git a/tests/service/data/SyntaxTree/ConditionalDirective/SingleIfEndif.fs.bsl b/tests/service/data/SyntaxTree/ConditionalDirective/SingleIfEndif.fs.bsl index 45ef82ca4c5..0d60a023eaf 100644 --- a/tests/service/data/SyntaxTree/ConditionalDirective/SingleIfEndif.fs.bsl +++ b/tests/service/data/SyntaxTree/ConditionalDirective/SingleIfEndif.fs.bsl @@ -15,9 +15,9 @@ ImplFile Const (Int32 42, (6,4--6,6)), (2,4--2,5), Yes (2,0--6,6), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--6,6))], - PreXmlDocEmpty, [], None, (2,0--7,0), { LeadingKeyword = None })], - (true, true), + EqualsRange = Some (2,6--2,7) })], (2,0--6,6), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--7,0), + { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [If (Ident "DEBUG", (3,4--3,13)); EndIf (5,4--5,10)] WarnDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/AnonymousRecords-06.fs.bsl b/tests/service/data/SyntaxTree/Expression/AnonymousRecords-06.fs.bsl index 9994586b626..b58b5e4c944 100644 --- a/tests/service/data/SyntaxTree/Expression/AnonymousRecords-06.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/AnonymousRecords-06.fs.bsl @@ -28,10 +28,11 @@ ImplFile { OpeningBraceRange = (1,10--1,12) }), (1,4--1,7), NoneAtLet, { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,8--1,9) })], (1,0--1,39))], - PreXmlDocEmpty, [], None, (1,0--2,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,8--1,9) })], (1,0--1,39), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--2,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'AnonymousRecords-06' based on the file name 'AnonymousRecords-06.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/Expression/AnonymousRecords-11.fs.bsl b/tests/service/data/SyntaxTree/Expression/AnonymousRecords-11.fs.bsl index 180ed425c9e..e33ad8c1418 100644 --- a/tests/service/data/SyntaxTree/Expression/AnonymousRecords-11.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/AnonymousRecords-11.fs.bsl @@ -32,7 +32,7 @@ ImplFile (3,4--3,9), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,10--3,11) })], - (3,0--3,28)); + (3,0--3,28), { InKeyword = None }); Let (false, [SynBinding @@ -61,7 +61,7 @@ ImplFile (5,4--5,9), NoneAtLet, { LeadingKeyword = Let (5,0--5,3) InlineKeyword = None EqualsRange = Some (5,10--5,11) })], - (5,0--5,29)); + (5,0--5,29), { InKeyword = None }); Let (false, [SynBinding @@ -90,7 +90,7 @@ ImplFile (7,4--7,9), NoneAtLet, { LeadingKeyword = Let (7,0--7,3) InlineKeyword = None EqualsRange = Some (7,10--7,11) })], - (7,0--7,29)); + (7,0--7,29), { InKeyword = None }); Let (false, [SynBinding @@ -119,7 +119,7 @@ ImplFile (9,4--9,9), NoneAtLet, { LeadingKeyword = Let (9,0--9,3) InlineKeyword = None EqualsRange = Some (9,10--9,11) })], - (9,0--9,30))], + (9,0--9,30), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--9,30), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Binary - Plus 05.fs.bsl b/tests/service/data/SyntaxTree/Expression/Binary - Plus 05.fs.bsl index 39964c93e47..6deea904868 100644 --- a/tests/service/data/SyntaxTree/Expression/Binary - Plus 05.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Binary - Plus 05.fs.bsl @@ -25,8 +25,8 @@ ImplFile (4,4--4,7)), (3,4--3,5), Yes (3,0--4,7), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--4,7)); - Expr (Const (Unit, (6,0--6,2)), (6,0--6,2))], + EqualsRange = Some (3,6--3,7) })], (3,0--4,7), + { InKeyword = None }); Expr (Const (Unit, (6,0--6,2)), (6,0--6,2))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,2), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Do 03.fs.bsl b/tests/service/data/SyntaxTree/Expression/Do 03.fs.bsl index 846451482b1..c943c1197a6 100644 --- a/tests/service/data/SyntaxTree/Expression/Do 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Do 03.fs.bsl @@ -16,7 +16,8 @@ ImplFile (4,4--4,6)), (3,4--3,5), Yes (3,0--4,6), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--4,6)); + EqualsRange = Some (3,6--3,7) })], (3,0--4,6), + { InKeyword = None }); Expr (Const (Int32 1, (6,0--6,1)), (6,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Do 04.fs.bsl b/tests/service/data/SyntaxTree/Expression/Do 04.fs.bsl index 8e8a69fb49d..9bdda456a31 100644 --- a/tests/service/data/SyntaxTree/Expression/Do 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Do 04.fs.bsl @@ -15,7 +15,8 @@ ImplFile Yes (3,0--5,9), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--5,9)); Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], + (3,0--5,9), { InKeyword = None }); + Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Do 05.fs.bsl b/tests/service/data/SyntaxTree/Expression/Do 05.fs.bsl index 7fa6c873dd7..8ecc1d6766a 100644 --- a/tests/service/data/SyntaxTree/Expression/Do 05.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Do 05.fs.bsl @@ -15,7 +15,8 @@ ImplFile Yes (3,0--5,5), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--5,5)); Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], + (3,0--5,5), { InKeyword = None }); + Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/DotLambda - _ Recovery - Casts.fsx.bsl b/tests/service/data/SyntaxTree/Expression/DotLambda - _ Recovery - Casts.fsx.bsl index 40768a3059a..721b79a0308 100644 --- a/tests/service/data/SyntaxTree/Expression/DotLambda - _ Recovery - Casts.fsx.bsl +++ b/tests/service/data/SyntaxTree/Expression/DotLambda - _ Recovery - Casts.fsx.bsl @@ -21,7 +21,7 @@ ImplFile (1,4--1,5), Yes (1,0--1,26), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None EqualsRange = Some (1,6--1,7) })], - (1,0--1,26)); + (1,0--1,26), { InKeyword = None }); Let (false, [SynBinding @@ -40,7 +40,7 @@ ImplFile (2,4--2,5), Yes (2,0--2,24), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None EqualsRange = Some (2,6--2,7) })], - (2,0--2,24)); + (2,0--2,24), { InKeyword = None }); Let (false, [SynBinding @@ -57,11 +57,12 @@ ImplFile (3,8--3,19)), (3,4--3,5), Yes (3,0--3,19), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--3,19))], - PreXmlDocEmpty, [], None, (1,0--4,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,6--3,7) })], (3,0--3,19), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--4,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,19)-(1,20) parse error Unexpected symbol ')' in expression. Expected '.' or other token. (2,12)-(2,14) parse error Unexpected symbol ':>' in expression. Expected '.' or other token. diff --git a/tests/service/data/SyntaxTree/Expression/DotLambda_ArgumentExpressionInInnerAppExpression.fs.bsl b/tests/service/data/SyntaxTree/Expression/DotLambda_ArgumentExpressionInInnerAppExpression.fs.bsl index ea4488dc2eb..484f93d3e55 100644 --- a/tests/service/data/SyntaxTree/Expression/DotLambda_ArgumentExpressionInInnerAppExpression.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/DotLambda_ArgumentExpressionInInnerAppExpression.fs.bsl @@ -25,8 +25,8 @@ ImplFile Yes (1,0--1,17), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None EqualsRange = Some (1,6--1,7) })], - (1,0--1,17))], PreXmlDocEmpty, [], None, (1,0--1,17), - { LeadingKeyword = None })], (true, true), + (1,0--1,17), { InKeyword = None })], PreXmlDocEmpty, [], None, + (1,0--1,17), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Expression/DotLambda_FunctionWithUnderscoreDotLambda.fs.bsl b/tests/service/data/SyntaxTree/Expression/DotLambda_FunctionWithUnderscoreDotLambda.fs.bsl index 38bb6337e0a..3a1e1928f81 100644 --- a/tests/service/data/SyntaxTree/Expression/DotLambda_FunctionWithUnderscoreDotLambda.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/DotLambda_FunctionWithUnderscoreDotLambda.fs.bsl @@ -19,8 +19,9 @@ ImplFile DotRange = (1,14--1,15) }), (1,4--1,10), Yes (1,0--1,25), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,11--1,12) })], (1,0--1,25))], - PreXmlDocEmpty, [], None, (1,0--1,25), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,11--1,12) })], (1,0--1,25), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,25), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Expression/DotLambda_NestedPropertiesAfterUnderscore.fs.bsl b/tests/service/data/SyntaxTree/Expression/DotLambda_NestedPropertiesAfterUnderscore.fs.bsl index 2211e80a157..cf17184d99b 100644 --- a/tests/service/data/SyntaxTree/Expression/DotLambda_NestedPropertiesAfterUnderscore.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/DotLambda_NestedPropertiesAfterUnderscore.fs.bsl @@ -23,8 +23,9 @@ ImplFile DotRange = (1,14--1,15) }), (1,4--1,10), Yes (1,0--1,41), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,11--1,12) })], (1,0--1,41))], - PreXmlDocEmpty, [], None, (1,0--1,41), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,11--1,12) })], (1,0--1,41), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,41), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Expression/DotLambda_NotAllowedFunctionExpressionWithArg.fs.bsl b/tests/service/data/SyntaxTree/Expression/DotLambda_NotAllowedFunctionExpressionWithArg.fs.bsl index a8b3627712a..7342ff9c17b 100644 --- a/tests/service/data/SyntaxTree/Expression/DotLambda_NotAllowedFunctionExpressionWithArg.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/DotLambda_NotAllowedFunctionExpressionWithArg.fs.bsl @@ -21,8 +21,8 @@ ImplFile Yes (1,0--1,15), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None EqualsRange = Some (1,6--1,7) })], - (1,0--1,15))], PreXmlDocEmpty, [], None, (1,0--1,15), - { LeadingKeyword = None })], (true, true), + (1,0--1,15), { InKeyword = None })], PreXmlDocEmpty, [], None, + (1,0--1,15), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Expression/DotLambda_TopLevelLet.fs.bsl b/tests/service/data/SyntaxTree/Expression/DotLambda_TopLevelLet.fs.bsl index 981cafe11c6..1d03ff391dd 100644 --- a/tests/service/data/SyntaxTree/Expression/DotLambda_TopLevelLet.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/DotLambda_TopLevelLet.fs.bsl @@ -31,8 +31,8 @@ ImplFile (1,4--1,5), NoneAtLet, { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None EqualsRange = Some (1,6--1,7) })], - (1,0--1,25))], PreXmlDocEmpty, [], None, (1,0--1,25), - { LeadingKeyword = None })], (true, true), + (1,0--1,25), { InKeyword = None })], PreXmlDocEmpty, [], None, + (1,0--1,25), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Expression/DotLambda_UnderscoreToFunctionCallWithSpaceAndUnitApplication.fs.bsl b/tests/service/data/SyntaxTree/Expression/DotLambda_UnderscoreToFunctionCallWithSpaceAndUnitApplication.fs.bsl index f469e8302b0..3f927350d76 100644 --- a/tests/service/data/SyntaxTree/Expression/DotLambda_UnderscoreToFunctionCallWithSpaceAndUnitApplication.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/DotLambda_UnderscoreToFunctionCallWithSpaceAndUnitApplication.fs.bsl @@ -25,8 +25,9 @@ ImplFile (1,13--1,30)), (1,4--1,10), Yes (1,0--1,30), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,11--1,12) })], (1,0--1,30))], - PreXmlDocEmpty, [], None, (1,0--1,30), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,11--1,12) })], (1,0--1,30), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,30), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Expression/DotLambda_WithNonTupledFunctionCall.fs.bsl b/tests/service/data/SyntaxTree/Expression/DotLambda_WithNonTupledFunctionCall.fs.bsl index 7786431ba6a..0ecfe3680c3 100644 --- a/tests/service/data/SyntaxTree/Expression/DotLambda_WithNonTupledFunctionCall.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/DotLambda_WithNonTupledFunctionCall.fs.bsl @@ -27,8 +27,9 @@ ImplFile (1,13--1,37)), (1,4--1,10), Yes (1,0--1,37), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,11--1,12) })], (1,0--1,37))], - PreXmlDocEmpty, [], None, (1,0--1,37), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,11--1,12) })], (1,0--1,37), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,37), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Expression/For 03.fs.bsl b/tests/service/data/SyntaxTree/Expression/For 03.fs.bsl index f0fcaf35d0a..1dcae506443 100644 --- a/tests/service/data/SyntaxTree/Expression/For 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/For 03.fs.bsl @@ -18,7 +18,8 @@ ImplFile (4,4--4,17)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--4,17)); + EqualsRange = Some (3,6--3,7) })], (3,0--4,17), + { InKeyword = None }); Expr (Const (Int32 3, (6,0--6,1)), (6,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/For 04.fs.bsl b/tests/service/data/SyntaxTree/Expression/For 04.fs.bsl index 2f2bdc1381a..3e393411636 100644 --- a/tests/service/data/SyntaxTree/Expression/For 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/For 04.fs.bsl @@ -17,7 +17,8 @@ ImplFile Const (Int32 2, (5,8--5,9)), (4,4--5,9)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,9)); + EqualsRange = Some (3,6--3,7) })], (3,0--5,9), + { InKeyword = None }); Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/For 05.fs.bsl b/tests/service/data/SyntaxTree/Expression/For 05.fs.bsl index 034c9fb57de..842942d9aea 100644 --- a/tests/service/data/SyntaxTree/Expression/For 05.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/For 05.fs.bsl @@ -17,7 +17,8 @@ ImplFile Const (Int32 2, (5,4--5,5)), (4,4--5,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,5)); + EqualsRange = Some (3,6--3,7) })], (3,0--5,5), + { InKeyword = None }); Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/If 08.fs.bsl b/tests/service/data/SyntaxTree/Expression/If 08.fs.bsl index 9f0b60b3108..d743cd50666 100644 --- a/tests/service/data/SyntaxTree/Expression/If 08.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/If 08.fs.bsl @@ -21,8 +21,8 @@ ImplFile IfToThenRange = (4,4--4,14) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--4,25)); - Expr (Const (Unit, (6,0--6,2)), (6,0--6,2))], + EqualsRange = Some (3,6--3,7) })], (3,0--4,25), + { InKeyword = None }); Expr (Const (Unit, (6,0--6,2)), (6,0--6,2))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,2), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/If 09.fs.bsl b/tests/service/data/SyntaxTree/Expression/If 09.fs.bsl index 8756a96f138..092f9e1e4b3 100644 --- a/tests/service/data/SyntaxTree/Expression/If 09.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/If 09.fs.bsl @@ -21,8 +21,8 @@ ImplFile IfToThenRange = (4,4--4,14) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,6)); - Expr (Const (Unit, (7,0--7,2)), (7,0--7,2))], + EqualsRange = Some (3,6--3,7) })], (3,0--5,6), + { InKeyword = None }); Expr (Const (Unit, (7,0--7,2)), (7,0--7,2))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,2), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/If 10.fs.bsl b/tests/service/data/SyntaxTree/Expression/If 10.fs.bsl index 096cafbaaff..edf40c04710 100644 --- a/tests/service/data/SyntaxTree/Expression/If 10.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/If 10.fs.bsl @@ -24,8 +24,8 @@ ImplFile IfToThenRange = (4,4--4,14) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--4,22)); - Expr (Const (Unit, (6,0--6,2)), (6,0--6,2))], + EqualsRange = Some (3,6--3,7) })], (3,0--4,22), + { InKeyword = None }); Expr (Const (Unit, (6,0--6,2)), (6,0--6,2))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,2), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Lazy 01.fs.bsl b/tests/service/data/SyntaxTree/Expression/Lazy 01.fs.bsl index 38abbd179a4..500ce09ceab 100644 --- a/tests/service/data/SyntaxTree/Expression/Lazy 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Lazy 01.fs.bsl @@ -15,7 +15,8 @@ ImplFile Yes (3,0--5,9), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--5,9)); Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], + (3,0--5,9), { InKeyword = None }); + Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Lazy 02.fs.bsl b/tests/service/data/SyntaxTree/Expression/Lazy 02.fs.bsl index c1441f5807d..91c34b109aa 100644 --- a/tests/service/data/SyntaxTree/Expression/Lazy 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Lazy 02.fs.bsl @@ -15,7 +15,8 @@ ImplFile Yes (3,0--5,5), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--5,5)); Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], + (3,0--5,5), { InKeyword = None }); + Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Lazy 03.fs.bsl b/tests/service/data/SyntaxTree/Expression/Lazy 03.fs.bsl index 6b04c031cd7..50283d947be 100644 --- a/tests/service/data/SyntaxTree/Expression/Lazy 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Lazy 03.fs.bsl @@ -16,7 +16,8 @@ ImplFile (4,4--4,8)), (3,4--3,5), Yes (3,0--4,8), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--4,8)); + EqualsRange = Some (3,6--3,7) })], (3,0--4,8), + { InKeyword = None }); Expr (Const (Int32 1, (6,0--6,1)), (6,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Let 01.fs.bsl b/tests/service/data/SyntaxTree/Expression/Let 01.fs.bsl index 634f5cbd322..40accd084eb 100644 --- a/tests/service/data/SyntaxTree/Expression/Let 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Let 01.fs.bsl @@ -14,7 +14,8 @@ ImplFile Yes (3,0--4,6), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--4,6)); Expr (Const (Unit, (6,0--6,2)), (6,0--6,2))], + (3,0--4,6), { InKeyword = None }); + Expr (Const (Unit, (6,0--6,2)), (6,0--6,2))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,2), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Let 02.fs.bsl b/tests/service/data/SyntaxTree/Expression/Let 02.fs.bsl index e033e0ed9f1..79a7938b21c 100644 --- a/tests/service/data/SyntaxTree/Expression/Let 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Let 02.fs.bsl @@ -15,7 +15,8 @@ ImplFile Yes (3,4--3,7), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--3,7)); Expr (Const (Unit, (5,0--5,2)), (5,0--5,2))], + (3,0--3,7), { InKeyword = None }); + Expr (Const (Unit, (5,0--5,2)), (5,0--5,2))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,2), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/NestedSynExprLetOrUseContainsTheRangeOfInKeyword.fs.bsl b/tests/service/data/SyntaxTree/Expression/NestedSynExprLetOrUseContainsTheRangeOfInKeyword.fs.bsl index 5ff48d7afcc..c52a9eaa722 100644 --- a/tests/service/data/SyntaxTree/Expression/NestedSynExprLetOrUseContainsTheRangeOfInKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/NestedSynExprLetOrUseContainsTheRangeOfInKeyword.fs.bsl @@ -17,53 +17,59 @@ ImplFile Pats [Paren (Const (Unit, (2,6--2,8)), (2,6--2,8))], None, (2,4--2,8)), None, LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (x, None), false, None, (3,8--3,9)), - None, Const (Int32 1, (3,12--3,13)), (3,8--3,9), - Yes (3,4--3,13), { LeadingKeyword = Let (3,4--3,7) - InlineKeyword = None - EqualsRange = Some (3,10--3,11) })], - LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (y, None), false, None, (4,8--4,9)), - None, Const (Int32 2, (4,12--4,13)), (4,8--4,9), - Yes (4,4--4,13), { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = Some (4,10--4,11) })], - App - (NonAtomic, false, - App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (5,6--5,7)), Ident x, (5,4--5,7)), Ident y, - (5,4--5,9)), (4,4--5,9), - { LetOrUseKeyword = (4,4--4,7) - InKeyword = Some (4,14--4,16) - EqualsRange = Some (4,10--4,11) }), (3,4--5,9), - { LetOrUseKeyword = (3,4--3,7) - InKeyword = Some (3,14--3,16) - EqualsRange = Some (3,10--3,11) }), (2,4--2,8), NoneAtLet, - { LeadingKeyword = Let (2,0--2,3) - InlineKeyword = None - EqualsRange = Some (2,9--2,10) })], (2,0--5,9))], - PreXmlDocEmpty, [], None, (2,0--6,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [LineComment (3,17--3,55)] }, set [])) + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (x, None), false, None, (3,8--3,9)), + None, Const (Int32 1, (3,12--3,13)), (3,8--3,9), + Yes (3,4--3,13), { LeadingKeyword = Let (3,4--3,7) + InlineKeyword = None + EqualsRange = Some (3,10--3,11) })] + Body = + LetOrUse + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (y, None), false, None, (4,8--4,9)), + None, Const (Int32 2, (4,12--4,13)), (4,8--4,9), + Yes (4,4--4,13), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,10--4,11) })] + Body = + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (5,6--5,7)), Ident x, (5,4--5,7)), Ident y, + (5,4--5,9)) + Range = (4,4--5,9) + Trivia = { InKeyword = Some (4,14--4,16) } } + Range = (3,4--5,9) + Trivia = { InKeyword = Some (3,14--3,16) } }, (2,4--2,8), + NoneAtLet, { LeadingKeyword = Let (2,0--2,3) + InlineKeyword = None + EqualsRange = Some (2,9--2,10) })], (2,0--5,9), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--6,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [LineComment (3,17--3,55)] }, set [])) diff --git a/tests/service/data/SyntaxTree/Expression/Return 01.fs.bsl b/tests/service/data/SyntaxTree/Expression/Return 01.fs.bsl index 86c81fa6d87..849ceee1d2d 100644 --- a/tests/service/data/SyntaxTree/Expression/Return 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Return 01.fs.bsl @@ -29,7 +29,8 @@ ImplFile (4,4--6,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5))], + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,5), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Return 02.fs.bsl b/tests/service/data/SyntaxTree/Expression/Return 02.fs.bsl index 678e228062b..083847cead8 100644 --- a/tests/service/data/SyntaxTree/Expression/Return 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Return 02.fs.bsl @@ -32,7 +32,8 @@ ImplFile (4,4--6,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5))], + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,5), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Return 03.fs.bsl b/tests/service/data/SyntaxTree/Expression/Return 03.fs.bsl index 467a5f86141..9affdceb647 100644 --- a/tests/service/data/SyntaxTree/Expression/Return 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Return 03.fs.bsl @@ -29,7 +29,8 @@ ImplFile (4,4--6,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5))], + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,5), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Return 04.fs.bsl b/tests/service/data/SyntaxTree/Expression/Return 04.fs.bsl index bc6451d72ab..3d1c8c0fa5a 100644 --- a/tests/service/data/SyntaxTree/Expression/Return 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Return 04.fs.bsl @@ -32,7 +32,8 @@ ImplFile (4,4--6,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5))], + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,5), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Return 05.fs.bsl b/tests/service/data/SyntaxTree/Expression/Return 05.fs.bsl index beaaf365ecc..a1018d3f54f 100644 --- a/tests/service/data/SyntaxTree/Expression/Return 05.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Return 05.fs.bsl @@ -25,7 +25,8 @@ ImplFile (4,10--6,5)), (4,4--6,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5))], + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,5), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Return 06.fs.bsl b/tests/service/data/SyntaxTree/Expression/Return 06.fs.bsl index 04d0ad024e7..48b13666387 100644 --- a/tests/service/data/SyntaxTree/Expression/Return 06.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Return 06.fs.bsl @@ -27,7 +27,8 @@ ImplFile (4,10--6,5)), (4,4--6,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5))], + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,5), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Return 07.fs.bsl b/tests/service/data/SyntaxTree/Expression/Return 07.fs.bsl index d45aa5689ce..2841298aa3f 100644 --- a/tests/service/data/SyntaxTree/Expression/Return 07.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Return 07.fs.bsl @@ -27,7 +27,8 @@ ImplFile (4,10--6,5)), (4,4--6,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5))], + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,5), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/ReturnBang 01.fs.bsl b/tests/service/data/SyntaxTree/Expression/ReturnBang 01.fs.bsl index 4890e673c4c..58356208224 100644 --- a/tests/service/data/SyntaxTree/Expression/ReturnBang 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/ReturnBang 01.fs.bsl @@ -29,7 +29,8 @@ ImplFile (4,10--6,5)), (4,4--6,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5))], + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,5), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/ReturnBang 02.fs.bsl b/tests/service/data/SyntaxTree/Expression/ReturnBang 02.fs.bsl index 4ff6f08be18..02e9eac0e1c 100644 --- a/tests/service/data/SyntaxTree/Expression/ReturnBang 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/ReturnBang 02.fs.bsl @@ -32,7 +32,8 @@ ImplFile (4,10--6,5)), (4,4--6,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5))], + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,5), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/ReturnBang 03.fs.bsl b/tests/service/data/SyntaxTree/Expression/ReturnBang 03.fs.bsl index 1747359d47d..aef181b4d97 100644 --- a/tests/service/data/SyntaxTree/Expression/ReturnBang 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/ReturnBang 03.fs.bsl @@ -28,7 +28,8 @@ ImplFile (4,10--6,5)), (4,4--6,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5))], + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,5), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Set 04.fs.bsl b/tests/service/data/SyntaxTree/Expression/Set 04.fs.bsl index 297ef11ba05..2224bb7089a 100644 --- a/tests/service/data/SyntaxTree/Expression/Set 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Set 04.fs.bsl @@ -17,7 +17,8 @@ ImplFile (4,4--4,8)), (3,4--3,5), Yes (3,0--4,8), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--4,8)); + EqualsRange = Some (3,6--3,7) })], (3,0--4,8), + { InKeyword = None }); Expr (Const (Int32 2, (6,0--6,1)), (6,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/SynExprDoContainsTheRangeOfTheDoKeyword.fs.bsl b/tests/service/data/SyntaxTree/Expression/SynExprDoContainsTheRangeOfTheDoKeyword.fs.bsl index 651879d2cb0..54b08da4d54 100644 --- a/tests/service/data/SyntaxTree/Expression/SynExprDoContainsTheRangeOfTheDoKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/SynExprDoContainsTheRangeOfTheDoKeyword.fs.bsl @@ -20,8 +20,9 @@ ImplFile { SeparatorRange = None }), (2,4--2,5), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--6,18))], - PreXmlDocEmpty, [], None, (2,0--7,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,6--2,7) })], (2,0--6,18), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--7,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseBangContainsTheRangeOfTheEqualsSign.fs.bsl b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseBangContainsTheRangeOfTheEqualsSign.fs.bsl index 895c8c2f5be..8fe7e58f623 100644 --- a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseBangContainsTheRangeOfTheEqualsSign.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseBangContainsTheRangeOfTheEqualsSign.fs.bsl @@ -12,40 +12,43 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (x, None), false, None, (3,9--3,10)), - None, Ident y, (3,4--3,14), Yes (3,4--3,14), - { LeadingKeyword = Let (3,4--3,8) - InlineKeyword = None - EqualsRange = Some (3,11--3,12) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (z, None), false, None, (4,9--4,10)), - None, - App - (NonAtomic, false, Ident someFunction, - Const (Unit, (4,26--4,28)), (4,13--4,28)), - (4,4--4,28), Yes (4,4--4,28), - { LeadingKeyword = And (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,11--4,12) })], - YieldOrReturn - ((false, true), Const (Unit, (5,11--5,13)), (5,4--5,13), - { YieldOrReturnKeyword = (5,4--5,10) }), (3,4--5,13), - { LetOrUseKeyword = (3,4--3,8) - InKeyword = None - EqualsRange = Some (3,11--3,12) }), (2,5--6,1)), - (2,0--6,1)), (2,0--6,1))], PreXmlDocEmpty, [], None, (2,0--6,1), + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (x, None), false, None, (3,9--3,10)), + None, Ident y, (3,4--3,14), Yes (3,4--3,14), + { LeadingKeyword = LetBang (3,4--3,8) + InlineKeyword = None + EqualsRange = Some (3,11--3,12) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (z, None), false, None, (4,9--4,10)), + None, + App + (NonAtomic, false, Ident someFunction, + Const (Unit, (4,26--4,28)), (4,13--4,28)), + (4,4--4,28), Yes (4,4--4,28), + { LeadingKeyword = AndBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,11--4,12) })] + Body = + YieldOrReturn + ((false, true), Const (Unit, (5,11--5,13)), + (5,4--5,13), { YieldOrReturnKeyword = (5,4--5,10) }) + Range = (3,4--5,13) + Trivia = { InKeyword = None } }, (2,5--6,1)), (2,0--6,1)), + (2,0--6,1))], PreXmlDocEmpty, [], None, (2,0--6,1), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseContainsTheRangeOfInKeyword.fs.bsl b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseContainsTheRangeOfInKeyword.fs.bsl index 250d3b16d79..aed2296debb 100644 --- a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseContainsTheRangeOfInKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseContainsTheRangeOfInKeyword.fs.bsl @@ -6,22 +6,22 @@ ImplFile ([SynExprLetOrUseContainsTheRangeOfInKeyword], false, AnonModule, [Expr (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (x, None), false, None, (2,4--2,5)), None, - Const (Int32 1, (2,8--2,9)), (2,4--2,5), Yes (2,0--2,9), - { LeadingKeyword = Let (2,0--2,3) - InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], - Const (Unit, (2,13--2,15)), (2,0--2,15), - { LetOrUseKeyword = (2,0--2,3) - InKeyword = Some (2,10--2,12) - EqualsRange = Some (2,6--2,7) }), (2,0--2,15))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (x, None), false, None, (2,4--2,5)), None, + Const (Int32 1, (2,8--2,9)), (2,4--2,5), Yes (2,0--2,9), + { LeadingKeyword = Let (2,0--2,3) + InlineKeyword = None + EqualsRange = Some (2,6--2,7) })] + Body = Const (Unit, (2,13--2,15)) + Range = (2,0--2,15) + Trivia = { InKeyword = Some (2,10--2,12) } }, (2,0--2,15))], PreXmlDocEmpty, [], None, (2,0--2,15), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseDoesNotContainTheRangeOfInKeyword.fs.bsl b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseDoesNotContainTheRangeOfInKeyword.fs.bsl index 1568bde4b7a..4da747b291c 100644 --- a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseDoesNotContainTheRangeOfInKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseDoesNotContainTheRangeOfInKeyword.fs.bsl @@ -8,22 +8,22 @@ ImplFile [Expr (Do (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,0), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (x, None), false, None, (3,4--3,5)), - None, Const (Int32 1, (3,8--3,9)), (3,4--3,5), - Yes (3,0--3,9), { LeadingKeyword = Let (3,0--3,3) - InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], - Const (Unit, (4,0--4,2)), (3,0--4,2), - { LetOrUseKeyword = (3,0--3,3) - InKeyword = None - EqualsRange = Some (3,6--3,7) }), (2,0--4,2)), (2,0--4,2))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,0), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (x, None), false, None, (3,4--3,5)), + None, Const (Int32 1, (3,8--3,9)), (3,4--3,5), + Yes (3,0--3,9), { LeadingKeyword = Let (3,0--3,3) + InlineKeyword = None + EqualsRange = Some (3,6--3,7) })] + Body = Const (Unit, (4,0--4,2)) + Range = (3,0--4,2) + Trivia = { InKeyword = None } }, (2,0--4,2)), (2,0--4,2))], PreXmlDocEmpty, [], None, (2,0--5,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWhereBodyExprStartsWithTokenOfTwoCharactersDoesNotContainTheRangeOfInKeyword.fs.bsl b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWhereBodyExprStartsWithTokenOfTwoCharactersDoesNotContainTheRangeOfInKeyword.fs.bsl index 4efd29655d0..4c2fef9fa8a 100644 --- a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWhereBodyExprStartsWithTokenOfTwoCharactersDoesNotContainTheRangeOfInKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWhereBodyExprStartsWithTokenOfTwoCharactersDoesNotContainTheRangeOfInKeyword.fs.bsl @@ -11,38 +11,41 @@ ImplFile [Expr (Do (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,0), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (e1, None), false, None, (3,4--3,6)), - None, - Downcast - (Ident e, - LongIdent - (SynLongIdent - ([Collections; DictionaryEntry], [(3,26--3,27)], - [None; None])), (3,9--3,42)), (3,4--3,6), - Yes (3,0--3,42), { LeadingKeyword = Let (3,0--3,3) - InlineKeyword = None - EqualsRange = Some (3,7--3,8) })], - Tuple - (false, - [LongIdent - (false, - SynLongIdent ([e1; Key], [(4,2--4,3)], [None; None]), - None, (4,0--4,6)); - LongIdent - (false, - SynLongIdent - ([e1; Value], [(4,10--4,11)], [None; None]), None, - (4,8--4,16))], [(4,6--4,7)], (4,0--4,16)), - (3,0--4,16), { LetOrUseKeyword = (3,0--3,3) - InKeyword = None - EqualsRange = Some (3,7--3,8) }), (2,0--4,16)), + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,0), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (e1, None), false, None, (3,4--3,6)), + None, + Downcast + (Ident e, + LongIdent + (SynLongIdent + ([Collections; DictionaryEntry], + [(3,26--3,27)], [None; None])), (3,9--3,42)), + (3,4--3,6), Yes (3,0--3,42), + { LeadingKeyword = Let (3,0--3,3) + InlineKeyword = None + EqualsRange = Some (3,7--3,8) })] + Body = + Tuple + (false, + [LongIdent + (false, + SynLongIdent + ([e1; Key], [(4,2--4,3)], [None; None]), None, + (4,0--4,6)); + LongIdent + (false, + SynLongIdent + ([e1; Value], [(4,10--4,11)], [None; None]), None, + (4,8--4,16))], [(4,6--4,7)], (4,0--4,16)) + Range = (3,0--4,16) + Trivia = { InKeyword = Some (4,0--4,2) } }, (2,0--4,16)), (2,0--4,16))], PreXmlDocEmpty, [], None, (2,0--5,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWithAndBangIn 01.fs b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWithAndBangIn 01.fs new file mode 100644 index 00000000000..e379a95709e --- /dev/null +++ b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWithAndBangIn 01.fs @@ -0,0 +1,6 @@ +comp { + let! a = b in + and! c = d in + and! e = f in + () +} \ No newline at end of file diff --git a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWithAndBangIn 01.fs.bsl b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWithAndBangIn 01.fs.bsl new file mode 100644 index 00000000000..ac0c37d3233 --- /dev/null +++ b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWithAndBangIn 01.fs.bsl @@ -0,0 +1,60 @@ +ImplFile + (ParsedImplFileInput + ("/root/Expression/SynExprLetOrUseWithAndBangIn 01.fs", false, + QualifiedNameOfFile SynExprLetOrUseWithAndBangIn 01, [], + [SynModuleOrNamespace + ([SynExprLetOrUseWithAndBangIn 01], false, AnonModule, + [Expr + (App + (NonAtomic, false, Ident comp, + ComputationExpr + (false, + LetOrUse + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (a, None), false, None, (2,9--2,10)), + None, Ident b, (2,4--2,14), Yes (2,4--2,14), + { LeadingKeyword = LetBang (2,4--2,8) + InlineKeyword = None + EqualsRange = Some (2,11--2,12) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (c, None), false, None, (3,9--3,10)), + None, Ident d, (3,4--3,14), Yes (3,4--3,14), + { LeadingKeyword = AndBang (3,4--3,8) + InlineKeyword = None + EqualsRange = Some (3,11--3,12) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (e, None), false, None, (4,9--4,10)), + None, Ident f, (4,4--4,14), Yes (4,4--4,14), + { LeadingKeyword = AndBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,11--4,12) })] + Body = Const (Unit, (5,4--5,6)) + Range = (2,4--5,6) + Trivia = { InKeyword = Some (2,15--2,17) } }, (1,5--6,1)), + (1,0--6,1)), (1,0--6,1))], PreXmlDocEmpty, [], None, (1,0--6,1), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) + +(1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'SynExprLetOrUseWithAndBangIn 01' based on the file name 'SynExprLetOrUseWithAndBangIn 01.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWithRecursiveBindingContainsTheRangeOfInKeyword.fs.bsl b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWithRecursiveBindingContainsTheRangeOfInKeyword.fs.bsl index 0f6d62006ba..c9856e44e15 100644 --- a/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWithRecursiveBindingContainsTheRangeOfInKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/SynExprLetOrUseWithRecursiveBindingContainsTheRangeOfInKeyword.fs.bsl @@ -10,34 +10,34 @@ ImplFile [Expr (Do (LetOrUse - (true, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (f, None), false, None, (3,12--3,13)), - None, Const (Unit, (3,16--3,18)), (3,12--3,13), - Yes (3,4--3,18), - { LeadingKeyword = LetRec ((3,4--3,7), (3,8--3,11)) - InlineKeyword = None - EqualsRange = Some (3,14--3,15) }); - SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,8), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (g, None), false, None, (4,8--4,9)), - None, Const (Unit, (4,12--4,14)), (4,8--4,9), - Yes (4,4--4,14), { LeadingKeyword = And (4,4--4,7) - InlineKeyword = None - EqualsRange = Some (4,10--4,11) })], - Const (Unit, (5,4--5,6)), (3,4--5,6), - { LetOrUseKeyword = (3,4--3,11) - InKeyword = Some (4,15--4,17) - EqualsRange = Some (3,14--3,15) }), (2,0--5,6)), + { IsRecursive = true + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (f, None), false, None, (3,12--3,13)), + None, Const (Unit, (3,16--3,18)), (3,12--3,13), + Yes (3,4--3,18), + { LeadingKeyword = LetRec ((3,4--3,7), (3,8--3,11)) + InlineKeyword = None + EqualsRange = Some (3,14--3,15) }); + SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,8), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (g, None), false, None, (4,8--4,9)), + None, Const (Unit, (4,12--4,14)), (4,8--4,9), + Yes (4,4--4,14), { LeadingKeyword = And (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,10--4,11) })] + Body = Const (Unit, (5,4--5,6)) + Range = (3,4--5,6) + Trivia = { InKeyword = Some (4,15--4,17) } }, (2,0--5,6)), (2,0--5,6))], PreXmlDocEmpty, [], None, (2,0--6,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Try - Finally 01.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - Finally 01.fs.bsl index 5a03c6066c8..33fe00df1fc 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - Finally 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - Finally 01.fs.bsl @@ -19,7 +19,8 @@ ImplFile FinallyKeyword = (5,4--5,11) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,13)); + EqualsRange = Some (3,6--3,7) })], (3,0--5,13), + { InKeyword = None }); Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try - Finally 02.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - Finally 02.fs.bsl index d0ad1002eea..b89b53ac8f6 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - Finally 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - Finally 02.fs.bsl @@ -19,7 +19,8 @@ ImplFile FinallyKeyword = (5,4--5,11) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,9)); + EqualsRange = Some (3,6--3,7) })], (3,0--6,9), + { InKeyword = None }); Expr (Const (Int32 3, (8,0--8,1)), (8,0--8,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--8,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try - Finally 03.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - Finally 03.fs.bsl index 05d4bf58c56..a03310a75ca 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - Finally 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - Finally 03.fs.bsl @@ -19,7 +19,8 @@ ImplFile FinallyKeyword = (5,4--5,11) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5)); + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None }); Expr (Const (Int32 3, (8,0--8,1)), (8,0--8,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--8,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try - Finally 04.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - Finally 04.fs.bsl index 2efe693eb39..9a3f520f603 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - Finally 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - Finally 04.fs.bsl @@ -21,7 +21,8 @@ ImplFile FinallyKeyword = (5,4--5,11) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,11)); + EqualsRange = Some (3,6--3,7) })], (3,0--5,11), + { InKeyword = None }); Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try - With 01.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - With 01.fs.bsl index 4b9b32262aa..36269a98a54 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - With 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - With 01.fs.bsl @@ -24,7 +24,8 @@ ImplFile WithToEndRange = (5,4--5,15) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,15)); + EqualsRange = Some (3,6--3,7) })], (3,0--5,15), + { InKeyword = None }); Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try - With 02.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - With 02.fs.bsl index 2805db17744..7f8f6e16e1f 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - With 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - With 02.fs.bsl @@ -24,7 +24,8 @@ ImplFile WithToEndRange = (5,4--6,9) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,9)); + EqualsRange = Some (3,6--3,7) })], (3,0--6,9), + { InKeyword = None }); Expr (Const (Int32 3, (8,0--8,1)), (8,0--8,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--8,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try - With 03.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - With 03.fs.bsl index 628ff8509d0..008526bc4df 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - With 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - With 03.fs.bsl @@ -24,7 +24,8 @@ ImplFile WithToEndRange = (5,4--6,5) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--6,5)); + EqualsRange = Some (3,6--3,7) })], (3,0--6,5), + { InKeyword = None }); Expr (Const (Int32 3, (8,0--8,1)), (8,0--8,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--8,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try - With 04.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - With 04.fs.bsl index 2ff3b16f3c2..eb43b43e8ef 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - With 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - With 04.fs.bsl @@ -26,7 +26,8 @@ ImplFile WithToEndRange = (5,4--5,13) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,13)); + EqualsRange = Some (3,6--3,7) })], (3,0--5,13), + { InKeyword = None }); Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try - With 05.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - With 05.fs.bsl index f266fe9c97d..ed4495265a0 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - With 05.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - With 05.fs.bsl @@ -25,7 +25,8 @@ ImplFile WithToEndRange = (5,4--5,10) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,10)); + EqualsRange = Some (3,6--3,7) })], (3,0--5,10), + { InKeyword = None }); Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try - With 06.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - With 06.fs.bsl index 367842a5c41..e07b5e0d1d7 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - With 06.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - With 06.fs.bsl @@ -20,7 +20,8 @@ ImplFile (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--5,8)); Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], + (3,0--5,8), { InKeyword = None }); + Expr (Const (Int32 2, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Try - With 07.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - With 07.fs.bsl index 3e000ea7d4a..807ea2b71cd 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - With 07.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - With 07.fs.bsl @@ -25,7 +25,8 @@ ImplFile (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--5,22)); Expr (Const (Int32 4, (7,0--7,1)), (7,0--7,1))], + (3,0--5,22), { InKeyword = None }); + Expr (Const (Int32 4, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Try - With 08.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - With 08.fs.bsl index 8c78faa7c9c..f17a4c1bdd5 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - With 08.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - With 08.fs.bsl @@ -25,7 +25,8 @@ ImplFile WithToEndRange = (5,4--5,17) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,17)); + EqualsRange = Some (3,6--3,7) })], (3,0--5,17), + { InKeyword = None }); Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try - With 09.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try - With 09.fs.bsl index efc7f1e612f..03940fb6220 100644 --- a/tests/service/data/SyntaxTree/Expression/Try - With 09.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try - With 09.fs.bsl @@ -20,7 +20,8 @@ ImplFile (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--5,8)); Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], + (3,0--5,8), { InKeyword = None }); + Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Try 01.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try 01.fs.bsl index 61abb3656ca..e5b00ab0c06 100644 --- a/tests/service/data/SyntaxTree/Expression/Try 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try 01.fs.bsl @@ -20,7 +20,8 @@ ImplFile (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--4,9)); Expr (Const (Int32 2, (6,0--6,1)), (6,0--6,1))], + (3,0--4,9), { InKeyword = None }); + Expr (Const (Int32 2, (6,0--6,1)), (6,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Try 02.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try 02.fs.bsl index 57f8ddac5e9..9c2a801dc89 100644 --- a/tests/service/data/SyntaxTree/Expression/Try 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try 02.fs.bsl @@ -20,7 +20,8 @@ ImplFile WithToEndRange = (4,7--4,7) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--4,7)); + EqualsRange = Some (3,6--3,7) })], (3,0--4,7), + { InKeyword = None }); Expr (Const (Int32 1, (6,0--6,1)), (6,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/Try with - Missing expr 04.fs.bsl b/tests/service/data/SyntaxTree/Expression/Try with - Missing expr 04.fs.bsl index 93be9bc6723..04f58935f08 100644 --- a/tests/service/data/SyntaxTree/Expression/Try with - Missing expr 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Try with - Missing expr 04.fs.bsl @@ -7,21 +7,21 @@ ImplFile [Expr (TryWith (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((5,0), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), Wild (5,4--5,5), None, - Const (Unit, (5,8--5,10)), (5,4--5,5), Yes (5,0--5,10), - { LeadingKeyword = Let (5,0--5,3) - InlineKeyword = None - EqualsRange = Some (5,6--5,7) })], - ArbitraryAfterError ("seqExpr", (5,10--5,10)), (5,0--5,10), - { LetOrUseKeyword = (5,0--5,3) - InKeyword = None - EqualsRange = Some (5,6--5,7) }), [], (3,0--5,10), + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((5,0), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), Wild (5,4--5,5), None, + Const (Unit, (5,8--5,10)), (5,4--5,5), Yes (5,0--5,10), + { LeadingKeyword = Let (5,0--5,3) + InlineKeyword = None + EqualsRange = Some (5,6--5,7) })] + Body = ArbitraryAfterError ("seqExpr", (5,10--5,10)) + Range = (5,0--5,10) + Trivia = { InKeyword = None } }, [], (3,0--5,10), Yes (3,0--3,3), Yes (5,10--5,10), { TryKeyword = (3,0--3,3) TryToWithRange = (3,0--5,10) diff --git a/tests/service/data/SyntaxTree/Expression/Tuple - Missing item 10.fs.bsl b/tests/service/data/SyntaxTree/Expression/Tuple - Missing item 10.fs.bsl index c7bf2053a39..2595dd0fc1a 100644 --- a/tests/service/data/SyntaxTree/Expression/Tuple - Missing item 10.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Tuple - Missing item 10.fs.bsl @@ -19,7 +19,8 @@ ImplFile [(3,9--3,10)], (3,8--3,10)), (3,4--3,5), Yes (3,0--3,10), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--3,10))], + EqualsRange = Some (3,6--3,7) })], (3,0--3,10), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,10), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/Tuple - Missing item 11.fs.bsl b/tests/service/data/SyntaxTree/Expression/Tuple - Missing item 11.fs.bsl index 92db48f5d0d..ea944d2beda 100644 --- a/tests/service/data/SyntaxTree/Expression/Tuple - Missing item 11.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/Tuple - Missing item 11.fs.bsl @@ -16,7 +16,7 @@ ImplFile Yes (3,4--3,7), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--3,7))], + (3,0--3,7), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,7), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/While 03.fs.bsl b/tests/service/data/SyntaxTree/Expression/While 03.fs.bsl index f97b2ef3702..388e60dbb47 100644 --- a/tests/service/data/SyntaxTree/Expression/While 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/While 03.fs.bsl @@ -17,7 +17,8 @@ ImplFile (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--4,14)); Expr (Const (Int32 2, (6,0--6,1)), (6,0--6,1))], + (3,0--4,14), { InKeyword = None }); + Expr (Const (Int32 2, (6,0--6,1)), (6,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/While 04.fs.bsl b/tests/service/data/SyntaxTree/Expression/While 04.fs.bsl index bc9409d1352..cb31897188d 100644 --- a/tests/service/data/SyntaxTree/Expression/While 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/While 04.fs.bsl @@ -17,7 +17,7 @@ ImplFile (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--4,14))], + (3,0--4,14), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--4,14), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/While 05.fs.bsl b/tests/service/data/SyntaxTree/Expression/While 05.fs.bsl index 63f49be132f..add6c1711a9 100644 --- a/tests/service/data/SyntaxTree/Expression/While 05.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/While 05.fs.bsl @@ -16,7 +16,8 @@ ImplFile Const (Int32 2, (5,8--5,9)), (4,4--5,9)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,9)); + EqualsRange = Some (3,6--3,7) })], (3,0--5,9), + { InKeyword = None }); Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/While 06.fs.bsl b/tests/service/data/SyntaxTree/Expression/While 06.fs.bsl index fa00ab9ef46..967c6a88ecf 100644 --- a/tests/service/data/SyntaxTree/Expression/While 06.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/While 06.fs.bsl @@ -16,7 +16,8 @@ ImplFile Const (Int32 2, (5,4--5,5)), (4,4--5,5)), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,5)); + EqualsRange = Some (3,6--3,7) })], (3,0--5,5), + { InKeyword = None }); Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Expression/WhileBang 03.fs.bsl b/tests/service/data/SyntaxTree/Expression/WhileBang 03.fs.bsl index 9cd7ffdf523..c9ce876b390 100644 --- a/tests/service/data/SyntaxTree/Expression/WhileBang 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/WhileBang 03.fs.bsl @@ -26,7 +26,8 @@ ImplFile (3,4--3,5), Yes (3,0--4,35), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--4,35)); Expr (Const (Int32 2, (6,0--6,1)), (6,0--6,1))], + (3,0--4,35), { InKeyword = None }); + Expr (Const (Int32 2, (6,0--6,1)), (6,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/WhileBang 04.fs.bsl b/tests/service/data/SyntaxTree/Expression/WhileBang 04.fs.bsl index 6afb7df4944..90038fb639e 100644 --- a/tests/service/data/SyntaxTree/Expression/WhileBang 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/WhileBang 04.fs.bsl @@ -26,7 +26,7 @@ ImplFile (3,4--3,5), Yes (3,0--4,35), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--4,35))], + (3,0--4,35), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--4,35), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/WhileBang 05.fs.bsl b/tests/service/data/SyntaxTree/Expression/WhileBang 05.fs.bsl index 68269efd975..c4101026b60 100644 --- a/tests/service/data/SyntaxTree/Expression/WhileBang 05.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/WhileBang 05.fs.bsl @@ -26,7 +26,8 @@ ImplFile Yes (3,0--5,9), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--5,9)); Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], + (3,0--5,9), { InKeyword = None }); + Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Expression/WhileBang 06.fs.bsl b/tests/service/data/SyntaxTree/Expression/WhileBang 06.fs.bsl index 733ec5ee330..c5fca5485d7 100644 --- a/tests/service/data/SyntaxTree/Expression/WhileBang 06.fs.bsl +++ b/tests/service/data/SyntaxTree/Expression/WhileBang 06.fs.bsl @@ -26,7 +26,8 @@ ImplFile Yes (3,0--5,5), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--5,5)); Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], + (3,0--5,5), { InKeyword = None }); + Expr (Const (Int32 3, (7,0--7,1)), (7,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Extern/Extern 01.fs.bsl b/tests/service/data/SyntaxTree/Extern/Extern 01.fs.bsl index 7e70df62f0d..0c8b8194081 100644 --- a/tests/service/data/SyntaxTree/Extern/Extern 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Extern/Extern 01.fs.bsl @@ -95,10 +95,10 @@ ImplFile (1,0--2,70), NoneAtInvisible, { LeadingKeyword = Extern (2,0--2,6) InlineKeyword = None - EqualsRange = None })], (1,0--2,70))], PreXmlDocEmpty, [], - None, (1,0--2,70), { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = None })], (1,0--2,70), { InKeyword = None })], + PreXmlDocEmpty, [], None, (1,0--2,70), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'Extern 01' based on the file name 'Extern 01.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/Extern/ExternKeywordIsPresentInTrivia.fs.bsl b/tests/service/data/SyntaxTree/Extern/ExternKeywordIsPresentInTrivia.fs.bsl index cd770091661..58cf2b8f292 100644 --- a/tests/service/data/SyntaxTree/Extern/ExternKeywordIsPresentInTrivia.fs.bsl +++ b/tests/service/data/SyntaxTree/Extern/ExternKeywordIsPresentInTrivia.fs.bsl @@ -39,8 +39,8 @@ ImplFile (2,0--2,28), NoneAtInvisible, { LeadingKeyword = Extern (2,0--2,6) InlineKeyword = None - EqualsRange = None })], (2,0--2,28))], PreXmlDocEmpty, [], - None, (2,0--2,28), { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = None })], (2,0--2,28), { InKeyword = None })], + PreXmlDocEmpty, [], None, (2,0--2,28), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/LeadingKeyword/AndKeyword.fs.bsl b/tests/service/data/SyntaxTree/LeadingKeyword/AndKeyword.fs.bsl index c1c8979edcb..4aa2963c410 100644 --- a/tests/service/data/SyntaxTree/LeadingKeyword/AndKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/LeadingKeyword/AndKeyword.fs.bsl @@ -56,8 +56,9 @@ ImplFile Const (Int32 1, (3,14--3,15)), (3,10--3,15)), (3,4--3,7), NoneAtLet, { LeadingKeyword = And (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,8--3,9) })], (2,0--3,15))], - PreXmlDocEmpty, [], None, (2,0--4,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,8--3,9) })], (2,0--3,15), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--4,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/LeadingKeyword/DoKeyword.fs.bsl b/tests/service/data/SyntaxTree/LeadingKeyword/DoKeyword.fs.bsl index e70a4e5463e..14ae9d51f17 100644 --- a/tests/service/data/SyntaxTree/LeadingKeyword/DoKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/LeadingKeyword/DoKeyword.fs.bsl @@ -22,12 +22,12 @@ ImplFile Const (Unit, (3,7--3,9)), (3,4--3,9), NoneAtDo, { LeadingKeyword = Do (3,4--3,6) InlineKeyword = None - EqualsRange = None })], false, false, (3,4--3,9))], - (3,4--3,9)), [], None, (2,5--3,9), - { LeadingKeyword = Type (2,0--2,4) - EqualsRange = Some (2,7--2,8) - WithKeyword = None })], (2,0--3,9))], PreXmlDocEmpty, [], - None, (2,0--4,0), { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = None })], false, false, (3,4--3,9), + { InKeyword = None })], (3,4--3,9)), [], None, + (2,5--3,9), { LeadingKeyword = Type (2,0--2,4) + EqualsRange = Some (2,7--2,8) + WithKeyword = None })], (2,0--3,9))], + PreXmlDocEmpty, [], None, (2,0--4,0), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/LeadingKeyword/DoStaticKeyword.fs.bsl b/tests/service/data/SyntaxTree/LeadingKeyword/DoStaticKeyword.fs.bsl index 29b5e5c9688..74f4d74b17e 100644 --- a/tests/service/data/SyntaxTree/LeadingKeyword/DoStaticKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/LeadingKeyword/DoStaticKeyword.fs.bsl @@ -23,12 +23,12 @@ ImplFile { LeadingKeyword = StaticDo ((3,4--3,10), (3,11--3,13)) InlineKeyword = None - EqualsRange = None })], true, false, (3,4--3,16))], - (3,4--3,16)), [], None, (2,5--3,16), - { LeadingKeyword = Type (2,0--2,4) - EqualsRange = Some (2,7--2,8) - WithKeyword = None })], (2,0--3,16))], PreXmlDocEmpty, [], - None, (2,0--4,0), { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = None })], true, false, (3,4--3,16), + { InKeyword = None })], (3,4--3,16)), [], None, + (2,5--3,16), { LeadingKeyword = Type (2,0--2,4) + EqualsRange = Some (2,7--2,8) + WithKeyword = None })], (2,0--3,16))], + PreXmlDocEmpty, [], None, (2,0--4,0), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/LeadingKeyword/ExternKeyword.fs.bsl b/tests/service/data/SyntaxTree/LeadingKeyword/ExternKeyword.fs.bsl index 189a700298e..8caba5ac11f 100644 --- a/tests/service/data/SyntaxTree/LeadingKeyword/ExternKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/LeadingKeyword/ExternKeyword.fs.bsl @@ -39,8 +39,8 @@ ImplFile (2,0--2,17), NoneAtInvisible, { LeadingKeyword = Extern (2,0--2,6) InlineKeyword = None - EqualsRange = None })], (2,0--2,17))], PreXmlDocEmpty, [], - None, (2,0--2,17), { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = None })], (2,0--2,17), { InKeyword = None })], + PreXmlDocEmpty, [], None, (2,0--2,17), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/LeadingKeyword/LetKeyword.fs.bsl b/tests/service/data/SyntaxTree/LeadingKeyword/LetKeyword.fs.bsl index c8ae05916a7..982311fccfe 100644 --- a/tests/service/data/SyntaxTree/LeadingKeyword/LetKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/LeadingKeyword/LetKeyword.fs.bsl @@ -30,8 +30,9 @@ ImplFile Const (Int32 1, (2,14--2,15)), (2,10--2,15)), (2,4--2,7), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,8--2,9) })], (2,0--2,15))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,8--2,9) })], (2,0--2,15), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/LeadingKeyword/LetRecKeyword.fs.bsl b/tests/service/data/SyntaxTree/LeadingKeyword/LetRecKeyword.fs.bsl index 816ba3b4e59..2569de7dba4 100644 --- a/tests/service/data/SyntaxTree/LeadingKeyword/LetRecKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/LeadingKeyword/LetRecKeyword.fs.bsl @@ -31,8 +31,9 @@ ImplFile Const (Int32 1, (2,18--2,19)), (2,14--2,19)), (2,8--2,11), NoneAtLet, { LeadingKeyword = LetRec ((2,0--2,3), (2,4--2,7)) InlineKeyword = None - EqualsRange = Some (2,12--2,13) })], (2,0--2,19))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,12--2,13) })], (2,0--2,19), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/LeadingKeyword/StaticLetKeyword.fs.bsl b/tests/service/data/SyntaxTree/LeadingKeyword/StaticLetKeyword.fs.bsl index 94e3e11ef7f..ef71149048c 100644 --- a/tests/service/data/SyntaxTree/LeadingKeyword/StaticLetKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/LeadingKeyword/StaticLetKeyword.fs.bsl @@ -29,11 +29,11 @@ ImplFile StaticLet ((3,4--3,10), (3,11--3,14)) InlineKeyword = None EqualsRange = Some (3,18--3,19) })], true, false, - (3,4--3,24))], (3,4--3,24)), [], None, (2,5--3,24), - { LeadingKeyword = Type (2,0--2,4) - EqualsRange = Some (2,7--2,8) - WithKeyword = None })], (2,0--3,24))], PreXmlDocEmpty, [], - None, (2,0--4,0), { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + (3,4--3,24), { InKeyword = None })], (3,4--3,24)), [], + None, (2,5--3,24), { LeadingKeyword = Type (2,0--2,4) + EqualsRange = Some (2,7--2,8) + WithKeyword = None })], (2,0--3,24))], + PreXmlDocEmpty, [], None, (2,0--4,0), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/LeadingKeyword/StaticLetRecKeyword.fs.bsl b/tests/service/data/SyntaxTree/LeadingKeyword/StaticLetRecKeyword.fs.bsl index 06aa352f3d3..5251188440d 100644 --- a/tests/service/data/SyntaxTree/LeadingKeyword/StaticLetRecKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/LeadingKeyword/StaticLetRecKeyword.fs.bsl @@ -35,11 +35,11 @@ ImplFile ((3,4--3,10), (3,11--3,14), (3,15--3,18)) InlineKeyword = None EqualsRange = Some (3,30--3,31) })], true, true, - (3,4--3,41))], (3,4--3,41)), [], None, (2,5--3,41), - { LeadingKeyword = Type (2,0--2,4) - EqualsRange = Some (2,7--2,8) - WithKeyword = None })], (2,0--3,41))], PreXmlDocEmpty, [], - None, (2,0--4,0), { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + (3,4--3,41), { InKeyword = None })], (3,4--3,41)), [], + None, (2,5--3,41), { LeadingKeyword = Type (2,0--2,4) + EqualsRange = Some (2,7--2,8) + WithKeyword = None })], (2,0--3,41))], + PreXmlDocEmpty, [], None, (2,0--4,0), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/LeadingKeyword/UseKeyword.fs.bsl b/tests/service/data/SyntaxTree/LeadingKeyword/UseKeyword.fs.bsl index 22fb03d8cfa..23f377c33cd 100644 --- a/tests/service/data/SyntaxTree/LeadingKeyword/UseKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/LeadingKeyword/UseKeyword.fs.bsl @@ -7,27 +7,26 @@ ImplFile [Expr (Do (LetOrUse - (false, true, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (x, None), false, None, (3,8--3,9)), - None, - App - (Atomic, false, Ident X, Const (Unit, (3,13--3,15)), - (3,12--3,15)), (3,8--3,9), Yes (3,4--3,15), - { LeadingKeyword = Use (3,4--3,7) - InlineKeyword = None - EqualsRange = Some (3,10--3,11) })], - Const (Unit, (4,4--4,6)), (3,4--4,6), - { LetOrUseKeyword = (3,4--3,7) - InKeyword = None - EqualsRange = Some (3,10--3,11) }), (2,0--4,6)), - (2,0--4,6))], PreXmlDocEmpty, [], None, (2,0--5,0), - { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (x, None), false, None, (3,8--3,9)), + None, + App + (Atomic, false, Ident X, Const (Unit, (3,13--3,15)), + (3,12--3,15)), (3,8--3,9), Yes (3,4--3,15), + { LeadingKeyword = Use (3,4--3,7) + InlineKeyword = None + EqualsRange = Some (3,10--3,11) })] + Body = Const (Unit, (4,4--4,6)) + Range = (3,4--4,6) + Trivia = { InKeyword = None } }, (2,0--4,6)), (2,0--4,6))], + PreXmlDocEmpty, [], None, (2,0--5,0), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/LeadingKeyword/UseRecKeyword.fs.bsl b/tests/service/data/SyntaxTree/LeadingKeyword/UseRecKeyword.fs.bsl index 38be60e5029..8acd19c10ae 100644 --- a/tests/service/data/SyntaxTree/LeadingKeyword/UseRecKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/LeadingKeyword/UseRecKeyword.fs.bsl @@ -7,27 +7,26 @@ ImplFile [Expr (Do (LetOrUse - (true, true, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (x, None), false, None, (3,12--3,13)), - None, - App - (Atomic, false, Ident X, Const (Unit, (3,17--3,19)), - (3,16--3,19)), (3,12--3,13), Yes (3,4--3,19), - { LeadingKeyword = UseRec ((3,4--3,7), (3,8--3,11)) - InlineKeyword = None - EqualsRange = Some (3,14--3,15) })], - Const (Unit, (4,4--4,6)), (3,4--4,6), - { LetOrUseKeyword = (3,4--3,11) - InKeyword = None - EqualsRange = Some (3,14--3,15) }), (2,0--4,6)), - (2,0--4,6))], PreXmlDocEmpty, [], None, (2,0--5,0), - { LeadingKeyword = None })], (true, true), - { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + { IsRecursive = true + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (x, None), false, None, (3,12--3,13)), + None, + App + (Atomic, false, Ident X, Const (Unit, (3,17--3,19)), + (3,16--3,19)), (3,12--3,13), Yes (3,4--3,19), + { LeadingKeyword = UseRec ((3,4--3,7), (3,8--3,11)) + InlineKeyword = None + EqualsRange = Some (3,14--3,15) })] + Body = Const (Unit, (4,4--4,6)) + Range = (3,4--4,6) + Trivia = { InKeyword = None } }, (2,0--4,6)), (2,0--4,6))], + PreXmlDocEmpty, [], None, (2,0--5,0), { LeadingKeyword = None })], + (true, true), { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/MatchClause/Missing expr 05.fs.bsl b/tests/service/data/SyntaxTree/MatchClause/Missing expr 05.fs.bsl index c998f9ea0ff..f84c19d5a60 100644 --- a/tests/service/data/SyntaxTree/MatchClause/Missing expr 05.fs.bsl +++ b/tests/service/data/SyntaxTree/MatchClause/Missing expr 05.fs.bsl @@ -24,8 +24,8 @@ ImplFile WithKeyword = (4,13--4,17) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--5,10)); - Expr (Const (Unit, (7,0--7,2)), (7,0--7,2))], + EqualsRange = Some (3,6--3,7) })], (3,0--5,10), + { InKeyword = None }); Expr (Const (Unit, (7,0--7,2)), (7,0--7,2))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,2), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/MatchClause/RangeOfMultipleSynMatchClause.fs.bsl b/tests/service/data/SyntaxTree/MatchClause/RangeOfMultipleSynMatchClause.fs.bsl index 0baa92feccc..4aefd1685f1 100644 --- a/tests/service/data/SyntaxTree/MatchClause/RangeOfMultipleSynMatchClause.fs.bsl +++ b/tests/service/data/SyntaxTree/MatchClause/RangeOfMultipleSynMatchClause.fs.bsl @@ -7,27 +7,29 @@ ImplFile [Expr (TryWith (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (content, None), false, None, (3,8--3,15)), - None, - App - (NonAtomic, false, Ident tryDownloadFile, Ident url, - (3,18--3,37)), (3,8--3,15), Yes (3,4--3,37), - { LeadingKeyword = Let (3,4--3,7) - InlineKeyword = None - EqualsRange = Some (3,16--3,17) })], - App - (NonAtomic, false, Ident Some, Ident content, (4,4--4,16)), - (3,4--4,16), { LetOrUseKeyword = (3,4--3,7) - InKeyword = None - EqualsRange = Some (3,16--3,17) }), + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (content, None), false, None, (3,8--3,15)), + None, + App + (NonAtomic, false, Ident tryDownloadFile, Ident url, + (3,18--3,37)), (3,8--3,15), Yes (3,4--3,37), + { LeadingKeyword = Let (3,4--3,7) + InlineKeyword = None + EqualsRange = Some (3,16--3,17) })] + Body = + App + (NonAtomic, false, Ident Some, Ident content, + (4,4--4,16)) + Range = (3,4--4,16) + Trivia = { InKeyword = None } }, [SynMatchClause (Named (SynIdent (ex, None), false, None, (6,2--6,4)), None, Sequential diff --git a/tests/service/data/SyntaxTree/MatchClause/RangeOfSingleSynMatchClause.fs.bsl b/tests/service/data/SyntaxTree/MatchClause/RangeOfSingleSynMatchClause.fs.bsl index bd05c6d0580..80f4b1ae04d 100644 --- a/tests/service/data/SyntaxTree/MatchClause/RangeOfSingleSynMatchClause.fs.bsl +++ b/tests/service/data/SyntaxTree/MatchClause/RangeOfSingleSynMatchClause.fs.bsl @@ -7,27 +7,29 @@ ImplFile [Expr (TryWith (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (content, None), false, None, (3,8--3,15)), - None, - App - (NonAtomic, false, Ident tryDownloadFile, Ident url, - (3,18--3,37)), (3,8--3,15), Yes (3,4--3,37), - { LeadingKeyword = Let (3,4--3,7) - InlineKeyword = None - EqualsRange = Some (3,16--3,17) })], - App - (NonAtomic, false, Ident Some, Ident content, (4,4--4,16)), - (3,4--4,16), { LetOrUseKeyword = (3,4--3,7) - InKeyword = None - EqualsRange = Some (3,16--3,17) }), + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (content, None), false, None, (3,8--3,15)), + None, + App + (NonAtomic, false, Ident tryDownloadFile, Ident url, + (3,18--3,37)), (3,8--3,15), Yes (3,4--3,37), + { LeadingKeyword = Let (3,4--3,7) + InlineKeyword = None + EqualsRange = Some (3,16--3,17) })] + Body = + App + (NonAtomic, false, Ident Some, Ident content, + (4,4--4,16)) + Range = (3,4--4,16) + Trivia = { InKeyword = None } }, [SynMatchClause (Named (SynIdent (ex, None), false, None, (5,5--5,7)), None, Sequential diff --git a/tests/service/data/SyntaxTree/MatchClause/RangeOfSingleSynMatchClauseFollowedByBar.fs.bsl b/tests/service/data/SyntaxTree/MatchClause/RangeOfSingleSynMatchClauseFollowedByBar.fs.bsl index 3f955a9be98..5d981526a15 100644 --- a/tests/service/data/SyntaxTree/MatchClause/RangeOfSingleSynMatchClauseFollowedByBar.fs.bsl +++ b/tests/service/data/SyntaxTree/MatchClause/RangeOfSingleSynMatchClauseFollowedByBar.fs.bsl @@ -7,27 +7,29 @@ ImplFile [Expr (TryWith (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (content, None), false, None, (3,8--3,15)), - None, - App - (NonAtomic, false, Ident tryDownloadFile, Ident url, - (3,18--3,37)), (3,8--3,15), Yes (3,4--3,37), - { LeadingKeyword = Let (3,4--3,7) - InlineKeyword = None - EqualsRange = Some (3,16--3,17) })], - App - (NonAtomic, false, Ident Some, Ident content, (4,4--4,16)), - (3,4--4,16), { LetOrUseKeyword = (3,4--3,7) - InKeyword = None - EqualsRange = Some (3,16--3,17) }), + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (content, None), false, None, (3,8--3,15)), + None, + App + (NonAtomic, false, Ident tryDownloadFile, Ident url, + (3,18--3,37)), (3,8--3,15), Yes (3,4--3,37), + { LeadingKeyword = Let (3,4--3,7) + InlineKeyword = None + EqualsRange = Some (3,16--3,17) })] + Body = + App + (NonAtomic, false, Ident Some, Ident content, + (4,4--4,16)) + Range = (3,4--4,16) + Trivia = { InKeyword = None } }, [SynMatchClause (Named (SynIdent (ex, None), false, None, (6,2--6,4)), None, Const (Unit, (7,4--7,6)), (6,2--7,6), Yes, diff --git a/tests/service/data/SyntaxTree/Measure/MeasureContainsTheRangeOfTheConstant.fs.bsl b/tests/service/data/SyntaxTree/Measure/MeasureContainsTheRangeOfTheConstant.fs.bsl index 541c856bb70..9dff13b0b57 100644 --- a/tests/service/data/SyntaxTree/Measure/MeasureContainsTheRangeOfTheConstant.fs.bsl +++ b/tests/service/data/SyntaxTree/Measure/MeasureContainsTheRangeOfTheConstant.fs.bsl @@ -21,7 +21,7 @@ ImplFile (2,4--2,5), Yes (2,0--2,16), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None EqualsRange = Some (2,6--2,7) })], - (2,0--2,16)); + (2,0--2,16), { InKeyword = None }); Let (false, [SynBinding @@ -39,8 +39,8 @@ ImplFile (3,4--3,5), Yes (3,0--3,17), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--3,17))], PreXmlDocEmpty, [], None, (2,0--4,0), - { LeadingKeyword = None })], (true, true), + (3,0--3,17), { InKeyword = None })], PreXmlDocEmpty, [], None, + (2,0--4,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Member/Do 01.fs.bsl b/tests/service/data/SyntaxTree/Member/Do 01.fs.bsl index ebcf90b0c06..0706eb256c4 100644 --- a/tests/service/data/SyntaxTree/Member/Do 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Do 01.fs.bsl @@ -21,7 +21,8 @@ ImplFile Const (Int32 1, (5,7--5,8)), (5,4--5,8), NoneAtDo, { LeadingKeyword = Do (5,4--5,6) InlineKeyword = None - EqualsRange = None })], false, false, (5,4--5,8)); + EqualsRange = None })], false, false, (5,4--5,8), + { InKeyword = None }); LetBindings ([SynBinding (None, Do, false, false, [], PreXmlDocEmpty, @@ -32,11 +33,11 @@ ImplFile Const (Int32 2, (7,7--7,8)), (7,4--7,8), NoneAtDo, { LeadingKeyword = Do (7,4--7,6) InlineKeyword = None - EqualsRange = None })], false, false, (7,4--7,8))], - (5,4--7,8)), [], None, (3,5--7,8), - { LeadingKeyword = Type (3,0--3,4) - EqualsRange = Some (3,7--3,8) - WithKeyword = None })], (3,0--7,8))], + EqualsRange = None })], false, false, (7,4--7,8), + { InKeyword = None })], (5,4--7,8)), [], None, + (3,5--7,8), { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,7--3,8) + WithKeyword = None })], (3,0--7,8))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,8), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Member/Do 02.fs.bsl b/tests/service/data/SyntaxTree/Member/Do 02.fs.bsl index 41cc0daa22e..e2d791b5860 100644 --- a/tests/service/data/SyntaxTree/Member/Do 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Do 02.fs.bsl @@ -23,7 +23,8 @@ ImplFile { LeadingKeyword = StaticDo ((5,4--5,10), (5,11--5,13)) InlineKeyword = None - EqualsRange = None })], true, false, (5,4--5,15)); + EqualsRange = None })], true, false, (5,4--5,15), + { InKeyword = None }); LetBindings ([SynBinding (None, Do, false, false, [], PreXmlDocEmpty, @@ -34,11 +35,11 @@ ImplFile Const (Int32 2, (7,7--7,8)), (7,4--7,8), NoneAtDo, { LeadingKeyword = Do (7,4--7,6) InlineKeyword = None - EqualsRange = None })], false, false, (7,4--7,8))], - (5,4--7,8)), [], None, (3,5--7,8), - { LeadingKeyword = Type (3,0--3,4) - EqualsRange = Some (3,7--3,8) - WithKeyword = None })], (3,0--7,8))], + EqualsRange = None })], false, false, (7,4--7,8), + { InKeyword = None })], (5,4--7,8)), [], None, + (3,5--7,8), { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,7--3,8) + WithKeyword = None })], (3,0--7,8))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,8), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Member/Do 03.fs.bsl b/tests/service/data/SyntaxTree/Member/Do 03.fs.bsl index 51c20b468ad..f7238a3bb35 100644 --- a/tests/service/data/SyntaxTree/Member/Do 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Do 03.fs.bsl @@ -24,7 +24,8 @@ ImplFile { LeadingKeyword = StaticDo ((5,4--5,10), (5,11--5,13)) InlineKeyword = None - EqualsRange = None })], true, false, (5,4--5,13)); + EqualsRange = None })], true, false, (5,4--5,13), + { InKeyword = None }); LetBindings ([SynBinding (None, Do, false, false, [], PreXmlDocEmpty, @@ -35,11 +36,11 @@ ImplFile Const (Unit, (7,7--7,9)), (7,4--7,9), NoneAtDo, { LeadingKeyword = Do (7,4--7,6) InlineKeyword = None - EqualsRange = None })], false, false, (7,4--7,9))], - (5,4--7,9)), [], None, (3,5--7,9), - { LeadingKeyword = Type (3,0--3,4) - EqualsRange = Some (3,7--3,8) - WithKeyword = None })], (3,0--7,9))], + EqualsRange = None })], false, false, (7,4--7,9), + { InKeyword = None })], (5,4--7,9)), [], None, + (3,5--7,9), { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,7--3,8) + WithKeyword = None })], (3,0--7,9))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,9), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Member/Do 04.fs.bsl b/tests/service/data/SyntaxTree/Member/Do 04.fs.bsl index 6bb13a90212..940c313f086 100644 --- a/tests/service/data/SyntaxTree/Member/Do 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Do 04.fs.bsl @@ -23,7 +23,7 @@ ImplFile NoneAtDo, { LeadingKeyword = Do (5,4--5,6) InlineKeyword = None EqualsRange = None })], false, false, - (5,4--5,6)); + (5,4--5,6), { InKeyword = None }); LetBindings ([SynBinding (None, Do, false, false, [], PreXmlDocEmpty, @@ -34,11 +34,11 @@ ImplFile Const (Unit, (7,7--7,9)), (7,4--7,9), NoneAtDo, { LeadingKeyword = Do (7,4--7,6) InlineKeyword = None - EqualsRange = None })], false, false, (7,4--7,9))], - (5,4--7,9)), [], None, (3,5--7,9), - { LeadingKeyword = Type (3,0--3,4) - EqualsRange = Some (3,7--3,8) - WithKeyword = None })], (3,0--7,9))], + EqualsRange = None })], false, false, (7,4--7,9), + { InKeyword = None })], (5,4--7,9)), [], None, + (3,5--7,9), { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,7--3,8) + WithKeyword = None })], (3,0--7,9))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,9), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Member/Interface 05.fs.bsl b/tests/service/data/SyntaxTree/Member/Interface 05.fs.bsl index d284b54e20c..04592eb93d6 100644 --- a/tests/service/data/SyntaxTree/Member/Interface 05.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Interface 05.fs.bsl @@ -28,7 +28,8 @@ ImplFile Const (Int32 1, (6,8--6,9)), (6,4--6,5), Yes (6,0--6,9), { LeadingKeyword = Let (6,0--6,3) InlineKeyword = None - EqualsRange = Some (6,6--6,7) })], (6,0--6,9))], + EqualsRange = Some (6,6--6,7) })], (6,0--6,9), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,9), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Member/Interface 06.fs.bsl b/tests/service/data/SyntaxTree/Member/Interface 06.fs.bsl index b841c289ab7..2552febe621 100644 --- a/tests/service/data/SyntaxTree/Member/Interface 06.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Interface 06.fs.bsl @@ -27,10 +27,10 @@ ImplFile { LeadingKeyword = Let (6,4--6,7) InlineKeyword = None EqualsRange = Some (6,10--6,11) })], false, false, - (6,4--6,14))], (4,4--6,14)), [], None, (3,5--6,14), - { LeadingKeyword = Type (3,0--3,4) - EqualsRange = Some (3,7--3,8) - WithKeyword = None })], (3,0--6,14))], + (6,4--6,14), { InKeyword = None })], (4,4--6,14)), [], + None, (3,5--6,14), { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,7--3,8) + WithKeyword = None })], (3,0--6,14))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,14), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Member/Let 01.fs.bsl b/tests/service/data/SyntaxTree/Member/Let 01.fs.bsl index 50dca73426c..653c09604bc 100644 --- a/tests/service/data/SyntaxTree/Member/Let 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Let 01.fs.bsl @@ -24,7 +24,7 @@ ImplFile { LeadingKeyword = Let (5,4--5,7) InlineKeyword = None EqualsRange = Some (5,10--5,11) })], false, false, - (5,4--5,13)); + (5,4--7,6), { InKeyword = Some (7,4--7,6) }); LetBindings ([SynBinding (None, Do, false, false, [], PreXmlDocEmpty, @@ -35,11 +35,11 @@ ImplFile Const (Int32 2, (7,7--7,8)), (7,4--7,8), NoneAtDo, { LeadingKeyword = Do (7,4--7,6) InlineKeyword = None - EqualsRange = None })], false, false, (7,4--7,8))], - (5,4--7,8)), [], None, (3,5--7,8), - { LeadingKeyword = Type (3,0--3,4) - EqualsRange = Some (3,7--3,8) - WithKeyword = None })], (3,0--7,8))], + EqualsRange = None })], false, false, (7,4--7,8), + { InKeyword = None })], (5,4--7,8)), [], None, + (3,5--7,8), { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,7--3,8) + WithKeyword = None })], (3,0--7,8))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,8), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Member/Let 02.fs.bsl b/tests/service/data/SyntaxTree/Member/Let 02.fs.bsl index fc1ab916f24..20ae2960751 100644 --- a/tests/service/data/SyntaxTree/Member/Let 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Let 02.fs.bsl @@ -24,7 +24,7 @@ ImplFile { LeadingKeyword = Let (5,4--5,7) InlineKeyword = None EqualsRange = Some (5,10--5,11) })], false, false, - (5,4--5,11)); + (5,4--7,6), { InKeyword = Some (7,4--7,6) }); LetBindings ([SynBinding (None, Do, false, false, [], PreXmlDocEmpty, @@ -35,11 +35,11 @@ ImplFile Const (Int32 2, (7,7--7,8)), (7,4--7,8), NoneAtDo, { LeadingKeyword = Do (7,4--7,6) InlineKeyword = None - EqualsRange = None })], false, false, (7,4--7,8))], - (5,4--7,8)), [], None, (3,5--7,8), - { LeadingKeyword = Type (3,0--3,4) - EqualsRange = Some (3,7--3,8) - WithKeyword = None })], (3,0--7,8))], + EqualsRange = None })], false, false, (7,4--7,8), + { InKeyword = None })], (5,4--7,8)), [], None, + (3,5--7,8), { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,7--3,8) + WithKeyword = None })], (3,0--7,8))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,8), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Member/Let 03.fs.bsl b/tests/service/data/SyntaxTree/Member/Let 03.fs.bsl index d6656bcd492..33be1f235c5 100644 --- a/tests/service/data/SyntaxTree/Member/Let 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Let 03.fs.bsl @@ -23,7 +23,8 @@ ImplFile (5,8--5,9), Yes (5,4--5,9), { LeadingKeyword = Let (5,4--5,7) InlineKeyword = None - EqualsRange = None })], false, false, (5,4--5,9)); + EqualsRange = None })], false, false, (5,4--7,6), + { InKeyword = Some (7,4--7,6) }); LetBindings ([SynBinding (None, Do, false, false, [], PreXmlDocEmpty, @@ -34,11 +35,11 @@ ImplFile Const (Int32 2, (7,7--7,8)), (7,4--7,8), NoneAtDo, { LeadingKeyword = Do (7,4--7,6) InlineKeyword = None - EqualsRange = None })], false, false, (7,4--7,8))], - (5,4--7,8)), [], None, (3,5--7,8), - { LeadingKeyword = Type (3,0--3,4) - EqualsRange = Some (3,7--3,8) - WithKeyword = None })], (3,0--7,8))], + EqualsRange = None })], false, false, (7,4--7,8), + { InKeyword = None })], (5,4--7,8)), [], None, + (3,5--7,8), { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,7--3,8) + WithKeyword = None })], (3,0--7,8))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,8), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Member/Let 04.fs.bsl b/tests/service/data/SyntaxTree/Member/Let 04.fs.bsl index 41a0f46443e..9f14e561f96 100644 --- a/tests/service/data/SyntaxTree/Member/Let 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Let 04.fs.bsl @@ -11,7 +11,9 @@ ImplFile false, None, (3,5--3,6)), ObjectModel (Unspecified, - [LetBindings ([], false, false, (5,4--5,7)); + [LetBindings + ([], false, false, (5,4--7,6), + { InKeyword = Some (7,4--7,6) }); LetBindings ([SynBinding (None, Do, false, false, [], PreXmlDocEmpty, @@ -22,11 +24,11 @@ ImplFile Const (Int32 2, (7,7--7,8)), (7,4--7,8), NoneAtDo, { LeadingKeyword = Do (7,4--7,6) InlineKeyword = None - EqualsRange = None })], false, false, (7,4--7,8))], - (5,4--7,8)), [], None, (3,5--7,8), - { LeadingKeyword = Type (3,0--3,4) - EqualsRange = Some (3,7--3,8) - WithKeyword = None })], (3,0--7,8))], + EqualsRange = None })], false, false, (7,4--7,8), + { InKeyword = None })], (5,4--7,8)), [], None, + (3,5--7,8), { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,7--3,8) + WithKeyword = None })], (3,0--7,8))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,8), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Member/Let 05.fs b/tests/service/data/SyntaxTree/Member/Let 05.fs new file mode 100644 index 00000000000..ce2f54b7a4f --- /dev/null +++ b/tests/service/data/SyntaxTree/Member/Let 05.fs @@ -0,0 +1,7 @@ +module Module + +type Foo() = + let a = 0 in + let y = 1 in + let x = 0 in + member this.A = a diff --git a/tests/service/data/SyntaxTree/Member/Let 05.fs.bsl b/tests/service/data/SyntaxTree/Member/Let 05.fs.bsl new file mode 100644 index 00000000000..9426e515461 --- /dev/null +++ b/tests/service/data/SyntaxTree/Member/Let 05.fs.bsl @@ -0,0 +1,98 @@ +ImplFile + (ParsedImplFileInput + ("/root/Member/Let 05.fs", false, QualifiedNameOfFile Module, [], + [SynModuleOrNamespace + ([Module], false, NamedModule, + [Types + ([SynTypeDefn + (SynComponentInfo + ([], None, [], [Foo], + PreXmlDoc ((3,0), FSharp.Compiler.Xml.XmlDocCollector), + false, None, (3,5--3,8)), + ObjectModel + (Unspecified, + [ImplicitCtor + (None, [], Const (Unit, (3,8--3,10)), None, + PreXmlDoc ((3,8), FSharp.Compiler.Xml.XmlDocCollector), + (3,5--3,8), { AsKeyword = None }); + LetBindings + ([SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (a, None), false, None, (4,8--4,9)), + None, Const (Int32 0, (4,12--4,13)), (4,8--4,9), + Yes (4,4--4,13), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,10--4,11) })], false, false, + (4,4--4,16), { InKeyword = Some (4,14--4,16) }); + LetBindings + ([SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((5,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (y, None), false, None, (5,8--5,9)), + None, Const (Int32 1, (5,12--5,13)), (5,8--5,9), + Yes (5,4--5,13), + { LeadingKeyword = Let (5,4--5,7) + InlineKeyword = None + EqualsRange = Some (5,10--5,11) })], false, false, + (5,4--5,16), { InKeyword = Some (5,14--5,16) }); + LetBindings + ([SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((6,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (x, None), false, None, (6,8--6,9)), + None, Const (Int32 0, (6,12--6,13)), (6,8--6,9), + Yes (6,4--6,13), + { LeadingKeyword = Let (6,4--6,7) + InlineKeyword = None + EqualsRange = Some (6,10--6,11) })], false, false, + (6,4--6,16), { InKeyword = Some (6,14--6,16) }); + Member + (SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((7,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (Some { IsInstance = true + IsDispatchSlot = false + IsOverrideOrExplicitImpl = false + IsFinal = false + GetterOrSetterIsCompilerGenerated = false + MemberKind = Member }, + SynValInfo + ([[SynArgInfo ([], false, None)]; []], + SynArgInfo ([], false, None)), None), + LongIdent + (SynLongIdent + ([this; A], [(7,15--7,16)], [None; None]), None, + None, Pats [], None, (7,11--7,17)), None, Ident a, + (7,11--7,17), NoneAtInvisible, + { LeadingKeyword = Member (7,4--7,10) + InlineKeyword = None + EqualsRange = Some (7,18--7,19) }), (7,4--7,21))], + (4,4--7,21)), [], + Some + (ImplicitCtor + (None, [], Const (Unit, (3,8--3,10)), None, + PreXmlDoc ((3,8), FSharp.Compiler.Xml.XmlDocCollector), + (3,5--3,8), { AsKeyword = None })), (3,5--7,21), + { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,11--3,12) + WithKeyword = None })], (3,0--7,21))], + PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, + (1,0--7,21), { LeadingKeyword = Module (1,0--1,6) })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Member/Static 01.fs.bsl b/tests/service/data/SyntaxTree/Member/Static 01.fs.bsl index 4993c476447..5a7647188b2 100644 --- a/tests/service/data/SyntaxTree/Member/Static 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Member/Static 01.fs.bsl @@ -42,11 +42,11 @@ ImplFile Const (Unit, (7,7--7,9)), (7,4--7,9), NoneAtDo, { LeadingKeyword = Do (7,4--7,6) InlineKeyword = None - EqualsRange = None })], false, false, (7,4--7,9))], - (5,4--7,9)), [], None, (3,5--7,9), - { LeadingKeyword = Type (3,0--3,4) - EqualsRange = Some (3,7--3,8) - WithKeyword = None })], (3,0--7,9))], + EqualsRange = None })], false, false, (7,4--7,9), + { InKeyword = None })], (5,4--7,9)), [], None, + (3,5--7,9), { LeadingKeyword = Type (3,0--3,4) + EqualsRange = Some (3,7--3,8) + WithKeyword = None })], (3,0--7,9))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,9), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/MemberFlag/SynExprObjMembersHaveCorrectKeywords.fs.bsl b/tests/service/data/SyntaxTree/MemberFlag/SynExprObjMembersHaveCorrectKeywords.fs.bsl index c820010e740..905d4abcc41 100644 --- a/tests/service/data/SyntaxTree/MemberFlag/SynExprObjMembersHaveCorrectKeywords.fs.bsl +++ b/tests/service/data/SyntaxTree/MemberFlag/SynExprObjMembersHaveCorrectKeywords.fs.bsl @@ -104,8 +104,9 @@ ImplFile (3,4--7,34)), (2,4--2,7), Yes (2,0--7,34), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,8--2,9) })], (2,0--7,34))], - PreXmlDocEmpty, [], None, (2,0--8,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,8--2,9) })], (2,0--7,34), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--8,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/ModuleMember/Let 01.fs.bsl b/tests/service/data/SyntaxTree/ModuleMember/Let 01.fs.bsl index 1623f819216..56bc668322a 100644 --- a/tests/service/data/SyntaxTree/ModuleMember/Let 01.fs.bsl +++ b/tests/service/data/SyntaxTree/ModuleMember/Let 01.fs.bsl @@ -14,7 +14,8 @@ ImplFile Yes (3,0--3,9), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--3,9)); Expr (Const (Int32 2, (5,0--5,1)), (5,0--5,1))], + (3,0--3,9), { InKeyword = None }); + Expr (Const (Int32 2, (5,0--5,1)), (5,0--5,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/ModuleMember/Let 02.fs.bsl b/tests/service/data/SyntaxTree/ModuleMember/Let 02.fs.bsl index 5ee1e17fb11..a463512f96a 100644 --- a/tests/service/data/SyntaxTree/ModuleMember/Let 02.fs.bsl +++ b/tests/service/data/SyntaxTree/ModuleMember/Let 02.fs.bsl @@ -15,7 +15,8 @@ ImplFile Yes (3,4--3,7), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--3,7)); Expr (Const (Int32 1, (5,0--5,1)), (5,0--5,1))], + (3,0--3,7), { InKeyword = None }); + Expr (Const (Int32 1, (5,0--5,1)), (5,0--5,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/ModuleMember/Let 03.fs.bsl b/tests/service/data/SyntaxTree/ModuleMember/Let 03.fs.bsl index 3d562c39590..e727e2402b3 100644 --- a/tests/service/data/SyntaxTree/ModuleMember/Let 03.fs.bsl +++ b/tests/service/data/SyntaxTree/ModuleMember/Let 03.fs.bsl @@ -14,7 +14,8 @@ ImplFile ArbitraryAfterError ("localBinding2", (3,5--3,5)), (3,4--3,5), Yes (3,0--3,5), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = None })], (3,0--3,5)); + EqualsRange = None })], (3,0--3,5), + { InKeyword = None }); Expr (Const (Int32 1, (5,0--5,1)), (5,0--5,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/ModuleMember/Let 04.fs.bsl b/tests/service/data/SyntaxTree/ModuleMember/Let 04.fs.bsl index d03ca1555db..cc5644ac55a 100644 --- a/tests/service/data/SyntaxTree/ModuleMember/Let 04.fs.bsl +++ b/tests/service/data/SyntaxTree/ModuleMember/Let 04.fs.bsl @@ -3,7 +3,7 @@ ImplFile ("/root/ModuleMember/Let 04.fs", false, QualifiedNameOfFile Module, [], [SynModuleOrNamespace ([Module], false, NamedModule, - [Let (false, [], (3,0--3,3)); + [Let (false, [], (3,0--3,3), { InKeyword = None }); Expr (Const (Int32 1, (5,0--5,1)), (5,0--5,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/ModuleMember/Let 05.fs.bsl b/tests/service/data/SyntaxTree/ModuleMember/Let 05.fs.bsl index 8f2b8b3bb5b..4d13c765715 100644 --- a/tests/service/data/SyntaxTree/ModuleMember/Let 05.fs.bsl +++ b/tests/service/data/SyntaxTree/ModuleMember/Let 05.fs.bsl @@ -18,7 +18,7 @@ ImplFile (1,4--1,10), Yes (1,0--1,10), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = None })], (1,0--1,10)); + EqualsRange = None })], (1,0--1,10), { InKeyword = None }); Expr (Const (Unit, (3,0--3,2)), (3,0--3,2))], PreXmlDocEmpty, [], None, (1,0--3,2), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/ModuleMember/Let 06.fs b/tests/service/data/SyntaxTree/ModuleMember/Let 06.fs new file mode 100644 index 00000000000..3eac7ebf286 --- /dev/null +++ b/tests/service/data/SyntaxTree/ModuleMember/Let 06.fs @@ -0,0 +1,4 @@ +let a = 0 in +let y = 1 in +let x = 0 in +() diff --git a/tests/service/data/SyntaxTree/ModuleMember/Let 06.fs.bsl b/tests/service/data/SyntaxTree/ModuleMember/Let 06.fs.bsl new file mode 100644 index 00000000000..6803b681fa0 --- /dev/null +++ b/tests/service/data/SyntaxTree/ModuleMember/Let 06.fs.bsl @@ -0,0 +1,51 @@ +ImplFile + (ParsedImplFileInput + ("/root/ModuleMember/Let 06.fs", false, QualifiedNameOfFile Let 06, [], + [SynModuleOrNamespace + ([Let 06], false, AnonModule, + [Let + (false, + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), None), + Named (SynIdent (a, None), false, None, (1,4--1,5)), None, + Const (Int32 0, (1,8--1,9)), (1,4--1,5), Yes (1,0--1,9), + { LeadingKeyword = Let (1,0--1,3) + InlineKeyword = None + EqualsRange = Some (1,6--1,7) })], (1,0--1,12), + { InKeyword = Some (1,10--1,12) }); + Let + (false, + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), None), + Named (SynIdent (y, None), false, None, (2,4--2,5)), None, + Const (Int32 1, (2,8--2,9)), (2,4--2,5), Yes (2,0--2,9), + { LeadingKeyword = Let (2,0--2,3) + InlineKeyword = None + EqualsRange = Some (2,6--2,7) })], (2,0--2,12), + { InKeyword = Some (2,10--2,12) }); + Let + (false, + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((3,0), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), None), + Named (SynIdent (x, None), false, None, (3,4--3,5)), None, + Const (Int32 0, (3,8--3,9)), (3,4--3,5), Yes (3,0--3,9), + { LeadingKeyword = Let (3,0--3,3) + InlineKeyword = None + EqualsRange = Some (3,6--3,7) })], (3,0--3,12), + { InKeyword = Some (3,10--3,12) }); + Expr (Const (Unit, (4,0--4,2)), (4,0--4,2))], PreXmlDocEmpty, [], + None, (1,0--4,2), { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) + +(1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'Let 06' based on the file name 'Let 06.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/ModuleOrNamespace/Module - Attribute 01.fs.bsl b/tests/service/data/SyntaxTree/ModuleOrNamespace/Module - Attribute 01.fs.bsl index d4b48f2982d..3f478bce58a 100644 --- a/tests/service/data/SyntaxTree/ModuleOrNamespace/Module - Attribute 01.fs.bsl +++ b/tests/service/data/SyntaxTree/ModuleOrNamespace/Module - Attribute 01.fs.bsl @@ -22,7 +22,8 @@ ImplFile (5,17--5,20)), (5,4--5,5), Yes (5,0--5,20), { LeadingKeyword = Let (5,0--5,3) InlineKeyword = None - EqualsRange = Some (5,15--5,16) })], (5,0--5,20))], + EqualsRange = Some (5,15--5,16) })], (5,0--5,20), + { InKeyword = None })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [{ Attributes = [{ TypeName = SynLongIdent ([Foo], [], [None]) ArgExpr = Const (Unit, (2,4--2,7)) diff --git a/tests/service/data/SyntaxTree/ModuleOrNamespace/ModuleShouldContainModuleKeyword.fs.bsl b/tests/service/data/SyntaxTree/ModuleOrNamespace/ModuleShouldContainModuleKeyword.fs.bsl index e020cf20444..adb907aea72 100644 --- a/tests/service/data/SyntaxTree/ModuleOrNamespace/ModuleShouldContainModuleKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/ModuleOrNamespace/ModuleShouldContainModuleKeyword.fs.bsl @@ -43,7 +43,7 @@ ImplFile Yes (13,4--13,14), { LeadingKeyword = Let (13,4--13,7) InlineKeyword = None EqualsRange = Some (13,10--13,11) })], - (13,4--13,14))], false, (12,0--13,14), + (13,4--13,14), { InKeyword = None })], false, (12,0--13,14), { ModuleKeyword = Some (12,0--12,6) EqualsRange = Some (12,40--12,41) })], PreXmlDoc ((5,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/ModuleOrNamespace/MultipleDeclaredNamespacesShouldHaveARangeThatStartsAtTheNamespaceKeyword.fs.bsl b/tests/service/data/SyntaxTree/ModuleOrNamespace/MultipleDeclaredNamespacesShouldHaveARangeThatStartsAtTheNamespaceKeyword.fs.bsl index 023212b2912..e014e4eee8b 100644 --- a/tests/service/data/SyntaxTree/ModuleOrNamespace/MultipleDeclaredNamespacesShouldHaveARangeThatStartsAtTheNamespaceKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/ModuleOrNamespace/MultipleDeclaredNamespacesShouldHaveARangeThatStartsAtTheNamespaceKeyword.fs.bsl @@ -31,8 +31,8 @@ ImplFile Const (Int32 42, (9,8--9,10)), (9,4--9,5), Yes (9,0--9,10), { LeadingKeyword = Let (9,0--9,3) InlineKeyword = None - EqualsRange = Some (9,6--9,7) })], (9,0--9,10))], - PreXmlDocEmpty, [], None, (7,0--9,10), + EqualsRange = Some (9,6--9,7) })], (9,0--9,10), + { InKeyword = None })], PreXmlDocEmpty, [], None, (7,0--9,10), { LeadingKeyword = Namespace (7,0--7,9) })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] diff --git a/tests/service/data/SyntaxTree/ModuleOrNamespace/NamespaceShouldContainNamespaceKeyword.fs.bsl b/tests/service/data/SyntaxTree/ModuleOrNamespace/NamespaceShouldContainNamespaceKeyword.fs.bsl index 885b0b117c8..62ec379c8c3 100644 --- a/tests/service/data/SyntaxTree/ModuleOrNamespace/NamespaceShouldContainNamespaceKeyword.fs.bsl +++ b/tests/service/data/SyntaxTree/ModuleOrNamespace/NamespaceShouldContainNamespaceKeyword.fs.bsl @@ -22,7 +22,7 @@ ImplFile Yes (4,4--4,14), { LeadingKeyword = Let (4,4--4,7) InlineKeyword = None EqualsRange = Some (4,10--4,11) })], - (4,4--4,14))], false, (3,0--4,14), + (4,4--4,14), { InKeyword = None })], false, (3,0--4,14), { ModuleKeyword = Some (3,0--3,6) EqualsRange = Some (3,11--3,12) })], PreXmlDocEmpty, [], None, (2,0--4,14), { LeadingKeyword = Namespace (2,0--2,9) })], (true, true), diff --git a/tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs.bsl b/tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs.bsl index 23937834db6..2cbc6fa5c0a 100644 --- a/tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs.bsl +++ b/tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs.bsl @@ -22,7 +22,7 @@ ImplFile Yes (5,8--5,17), { LeadingKeyword = Let (5,8--5,11) InlineKeyword = None EqualsRange = Some (5,14--5,15) })], - (5,8--5,17))], false, (3,0--6,7), + (5,8--5,17), { InKeyword = None })], false, (3,0--6,7), { ModuleKeyword = Some (3,0--3,6) EqualsRange = Some (3,9--3,10) })], PreXmlDocEmpty, [], None, (1,0--6,7), { LeadingKeyword = Namespace (1,0--1,9) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Nullness/FunctionArgAsPatternWithNullCase.fs.bsl b/tests/service/data/SyntaxTree/Nullness/FunctionArgAsPatternWithNullCase.fs.bsl index 9c06341d4c1..1163ccbe7a0 100644 --- a/tests/service/data/SyntaxTree/Nullness/FunctionArgAsPatternWithNullCase.fs.bsl +++ b/tests/service/data/SyntaxTree/Nullness/FunctionArgAsPatternWithNullCase.fs.bsl @@ -42,8 +42,8 @@ ImplFile (1,4--1,47), NoneAtLet, { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None EqualsRange = Some (1,48--1,49) })], - (1,0--1,52))], PreXmlDocEmpty, [], None, (1,0--2,0), - { LeadingKeyword = None })], (true, true), + (1,0--1,52), { InKeyword = None })], PreXmlDocEmpty, [], None, + (1,0--2,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Nullness/GenericFunctionReturnTypeNotStructNull.fs.bsl b/tests/service/data/SyntaxTree/Nullness/GenericFunctionReturnTypeNotStructNull.fs.bsl index bc7e62dbcf8..beef982627b 100644 --- a/tests/service/data/SyntaxTree/Nullness/GenericFunctionReturnTypeNotStructNull.fs.bsl +++ b/tests/service/data/SyntaxTree/Nullness/GenericFunctionReturnTypeNotStructNull.fs.bsl @@ -36,8 +36,9 @@ ImplFile (1,15--1,50)), (1,53--1,57)), (1,4--1,12), NoneAtLet, { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,51--1,52) })], (1,0--1,57))], - PreXmlDocEmpty, [], None, (1,0--2,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,51--1,52) })], (1,0--1,57), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--2,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Nullness/GenericFunctionTyparNotNull.fs.bsl b/tests/service/data/SyntaxTree/Nullness/GenericFunctionTyparNotNull.fs.bsl index 93b7e56d1ec..ced1fa2ca34 100644 --- a/tests/service/data/SyntaxTree/Nullness/GenericFunctionTyparNotNull.fs.bsl +++ b/tests/service/data/SyntaxTree/Nullness/GenericFunctionTyparNotNull.fs.bsl @@ -31,8 +31,9 @@ ImplFile None, Const (Int32 42, (1,39--1,41)), (1,4--1,36), NoneAtLet, { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,37--1,38) })], (1,0--1,41))], - PreXmlDocEmpty, [], None, (1,0--2,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,37--1,38) })], (1,0--1,41), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--2,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Nullness/GenericFunctionTyparNull.fs.bsl b/tests/service/data/SyntaxTree/Nullness/GenericFunctionTyparNull.fs.bsl index 07032a6b6a8..04a03f8646c 100644 --- a/tests/service/data/SyntaxTree/Nullness/GenericFunctionTyparNull.fs.bsl +++ b/tests/service/data/SyntaxTree/Nullness/GenericFunctionTyparNull.fs.bsl @@ -30,8 +30,8 @@ ImplFile (1,4--1,32), NoneAtLet, { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None EqualsRange = Some (1,33--1,34) })], - (1,0--1,37))], PreXmlDocEmpty, [], None, (1,0--2,0), - { LeadingKeyword = None })], (true, true), + (1,0--1,37), { InKeyword = None })], PreXmlDocEmpty, [], None, + (1,0--2,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Nullness/IntListOrNull.fs.bsl b/tests/service/data/SyntaxTree/Nullness/IntListOrNull.fs.bsl index 89aba46b669..a7ad67de505 100644 --- a/tests/service/data/SyntaxTree/Nullness/IntListOrNull.fs.bsl +++ b/tests/service/data/SyntaxTree/Nullness/IntListOrNull.fs.bsl @@ -33,8 +33,8 @@ ImplFile Yes (1,0--1,28), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None EqualsRange = Some (1,24--1,25) })], - (1,0--1,28))], PreXmlDocEmpty, [], None, (1,0--2,0), - { LeadingKeyword = None })], (true, true), + (1,0--1,28), { InKeyword = None })], PreXmlDocEmpty, [], None, + (1,0--2,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Nullness/IntListOrNullOrNullOrNull.fs.bsl b/tests/service/data/SyntaxTree/Nullness/IntListOrNullOrNullOrNull.fs.bsl index 73acd0cd00d..2ba92634916 100644 --- a/tests/service/data/SyntaxTree/Nullness/IntListOrNullOrNullOrNull.fs.bsl +++ b/tests/service/data/SyntaxTree/Nullness/IntListOrNullOrNullOrNull.fs.bsl @@ -32,10 +32,11 @@ ImplFile { BarRange = (1,17--1,18) }), (1,23--1,23)), (1,4--1,5), Yes (1,0--1,23), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = None })], (1,0--1,23))], - PreXmlDocEmpty, [], None, (1,0--2,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = None })], (1,0--1,23), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--2,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,24)-(1,25) parse error Unexpected symbol '|' (directly before 'null') in binding. Expected '=' or other token. diff --git a/tests/service/data/SyntaxTree/Nullness/NullAnnotatedExpression.fs.bsl b/tests/service/data/SyntaxTree/Nullness/NullAnnotatedExpression.fs.bsl index 1b3916e4190..115fe6c5406 100644 --- a/tests/service/data/SyntaxTree/Nullness/NullAnnotatedExpression.fs.bsl +++ b/tests/service/data/SyntaxTree/Nullness/NullAnnotatedExpression.fs.bsl @@ -67,8 +67,9 @@ ImplFile (1,4--1,5), Yes (1,0--1,70), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,64--1,65) })], (1,0--1,70))], - PreXmlDocEmpty, [], None, (1,0--2,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,64--1,65) })], (1,0--1,70), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--2,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Nullness/StringOrNull.fs.bsl b/tests/service/data/SyntaxTree/Nullness/StringOrNull.fs.bsl index 14b3dde2c67..7d205e16fef 100644 --- a/tests/service/data/SyntaxTree/Nullness/StringOrNull.fs.bsl +++ b/tests/service/data/SyntaxTree/Nullness/StringOrNull.fs.bsl @@ -26,8 +26,9 @@ ImplFile (1,4--1,5), Yes (1,0--1,28), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,22--1,23) })], (1,0--1,28))], - PreXmlDocEmpty, [], None, (1,0--2,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,22--1,23) })], (1,0--1,28), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--2,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Nullness/StringOrNullInFunctionArg.fs.bsl b/tests/service/data/SyntaxTree/Nullness/StringOrNullInFunctionArg.fs.bsl index 162ebbfbdf3..89a2cf25e55 100644 --- a/tests/service/data/SyntaxTree/Nullness/StringOrNullInFunctionArg.fs.bsl +++ b/tests/service/data/SyntaxTree/Nullness/StringOrNullInFunctionArg.fs.bsl @@ -31,8 +31,9 @@ ImplFile None, Const (Int32 42, (1,34--1,36)), (1,4--1,31), NoneAtLet, { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,32--1,33) })], (1,0--1,36))], - PreXmlDocEmpty, [], None, (1,0--2,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,32--1,33) })], (1,0--1,36), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--2,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 01.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 01.fs.bsl index d181dbabbb8..e17e494ec24 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 01.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 01.fs.bsl @@ -26,10 +26,11 @@ ImplFile (1,28--1,34)), (1,4--1,25), Yes (1,0--1,34), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,26--1,27) })], (1,0--1,34))], - PreXmlDocEmpty, [], None, (1,0--1,34), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,26--1,27) })], (1,0--1,34), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,34), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(1,34) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternAnd 01' based on the file name 'ActivePatternAnd 01.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 02.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 02.fs.bsl index 2197d608c40..2f5a82923a5 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 02.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 02.fs.bsl @@ -27,10 +27,11 @@ ImplFile (1,30--1,36)), (1,4--1,27), Yes (1,0--1,36), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,28--1,29) })], (1,0--1,36))], - PreXmlDocEmpty, [], None, (1,0--1,36), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,28--1,29) })], (1,0--1,36), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,36), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(1,36) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternAnd 02' based on the file name 'ActivePatternAnd 02.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 03.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 03.fs.bsl index bf6cf297f48..ede0f22bf73 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 03.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 03.fs.bsl @@ -27,10 +27,11 @@ ImplFile (1,30--1,36)), (1,4--1,27), Yes (1,0--1,36), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,28--1,29) })], (1,0--1,36))], - PreXmlDocEmpty, [], None, (1,0--1,36), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,28--1,29) })], (1,0--1,36), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,36), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(1,36) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternAnd 03' based on the file name 'ActivePatternAnd 03.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 04.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 04.fs.bsl index 8da67b53c6f..078810edb06 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 04.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 04.fs.bsl @@ -28,10 +28,11 @@ ImplFile (1,32--1,38)), (1,4--1,29), Yes (1,0--1,38), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,30--1,31) })], (1,0--1,38))], - PreXmlDocEmpty, [], None, (1,0--1,38), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,30--1,31) })], (1,0--1,38), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,38), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(1,38) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternAnd 04' based on the file name 'ActivePatternAnd 04.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 05.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 05.fs.bsl index 290c17827df..7e0399ceca4 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 05.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 05.fs.bsl @@ -28,10 +28,11 @@ ImplFile (1,32--1,38)), (1,4--1,29), Yes (1,0--1,38), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,30--1,31) })], (1,0--1,38))], - PreXmlDocEmpty, [], None, (1,0--1,38), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,30--1,31) })], (1,0--1,38), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,38), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(1,38) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternAnd 05' based on the file name 'ActivePatternAnd 05.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 06.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 06.fs.bsl index b4226cc1f83..98b7e0916b2 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 06.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 06.fs.bsl @@ -31,10 +31,11 @@ ImplFile (1,38--1,44)), (1,4--1,35), Yes (1,0--1,44), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,36--1,37) })], (1,0--1,44))], - PreXmlDocEmpty, [], None, (1,0--1,44), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,36--1,37) })], (1,0--1,44), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,44), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(1,44) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternAnd 06' based on the file name 'ActivePatternAnd 06.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 07.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 07.fs.bsl index c4970b53599..c34ab974240 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 07.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 07.fs.bsl @@ -30,10 +30,11 @@ ImplFile (1,34--1,40)), (1,4--1,31), Yes (1,0--1,40), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,32--1,33) })], (1,0--1,40))], - PreXmlDocEmpty, [], None, (1,0--1,40), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,32--1,33) })], (1,0--1,40), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,40), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(1,40) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternAnd 07' based on the file name 'ActivePatternAnd 07.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 08.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 08.fs.bsl index 277fb1aeac1..5f8fa0acebc 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 08.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternAnd 08.fs.bsl @@ -30,10 +30,11 @@ ImplFile (1,36--1,42)), (1,4--1,33), Yes (1,0--1,42), { LeadingKeyword = Let (1,0--1,3) InlineKeyword = None - EqualsRange = Some (1,34--1,35) })], (1,0--1,42))], - PreXmlDocEmpty, [], None, (1,0--1,42), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (1,34--1,35) })], (1,0--1,42), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--1,42), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(1,42) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternAnd 08' based on the file name 'ActivePatternAnd 08.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternDefinition.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternDefinition.fs.bsl index c4b9f6a0919..9e6d6ffa604 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternDefinition.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternDefinition.fs.bsl @@ -59,8 +59,9 @@ ImplFile IfToThenRange = (2,28--2,45) }), (2,4--2,25), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,26--2,27) })], (2,0--2,59))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,26--2,27) })], (2,0--2,59), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 01.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 01.fs.bsl index 5862ca0ad2b..ac1133e1ee3 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 01.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 01.fs.bsl @@ -35,10 +35,11 @@ ImplFile (3,24--3,30)), (3,4--3,21), Yes (3,0--3,30), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,22--3,23) })], (3,0--3,30))], - PreXmlDocEmpty, [], None, (1,0--3,30), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,22--3,23) })], (3,0--3,30), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--3,30), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternExceptionAnd 01' based on the file name 'ActivePatternExceptionAnd 01.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 02.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 02.fs.bsl index 8ebb6648227..8a76322c49c 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 02.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 02.fs.bsl @@ -36,10 +36,11 @@ ImplFile (3,26--3,32)), (3,4--3,23), Yes (3,0--3,32), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,24--3,25) })], (3,0--3,32))], - PreXmlDocEmpty, [], None, (1,0--3,32), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,24--3,25) })], (3,0--3,32), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--3,32), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternExceptionAnd 02' based on the file name 'ActivePatternExceptionAnd 02.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 03.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 03.fs.bsl index 2574d438123..bb42a8a84ec 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 03.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 03.fs.bsl @@ -36,10 +36,11 @@ ImplFile (3,26--3,32)), (3,4--3,23), Yes (3,0--3,32), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,24--3,25) })], (3,0--3,32))], - PreXmlDocEmpty, [], None, (1,0--3,32), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,24--3,25) })], (3,0--3,32), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--3,32), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternExceptionAnd 03' based on the file name 'ActivePatternExceptionAnd 03.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 04.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 04.fs.bsl index 74cdc1226cb..ba20595b372 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 04.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 04.fs.bsl @@ -37,10 +37,11 @@ ImplFile (3,28--3,34)), (3,4--3,25), Yes (3,0--3,34), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,26--3,27) })], (3,0--3,34))], - PreXmlDocEmpty, [], None, (1,0--3,34), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,26--3,27) })], (3,0--3,34), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--3,34), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternExceptionAnd 04' based on the file name 'ActivePatternExceptionAnd 04.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 05.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 05.fs.bsl index 53656ca36c6..b68a48ed341 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 05.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 05.fs.bsl @@ -37,10 +37,11 @@ ImplFile (3,28--3,34)), (3,4--3,25), Yes (3,0--3,34), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,26--3,27) })], (3,0--3,34))], - PreXmlDocEmpty, [], None, (1,0--3,34), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,26--3,27) })], (3,0--3,34), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--3,34), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternExceptionAnd 05' based on the file name 'ActivePatternExceptionAnd 05.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 06.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 06.fs.bsl index e96412948a7..21bd795221c 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 06.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 06.fs.bsl @@ -40,10 +40,11 @@ ImplFile (3,34--3,40)), (3,4--3,31), Yes (3,0--3,40), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,32--3,33) })], (3,0--3,40))], - PreXmlDocEmpty, [], None, (1,0--3,40), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,32--3,33) })], (3,0--3,40), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--3,40), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternExceptionAnd 06' based on the file name 'ActivePatternExceptionAnd 06.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 07.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 07.fs.bsl index 5da96ee160d..34655b86d20 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 07.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 07.fs.bsl @@ -38,10 +38,11 @@ ImplFile (3,30--3,36)), (3,4--3,27), Yes (3,0--3,36), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,28--3,29) })], (3,0--3,36))], - PreXmlDocEmpty, [], None, (1,0--3,36), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,28--3,29) })], (3,0--3,36), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--3,36), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternExceptionAnd 07' based on the file name 'ActivePatternExceptionAnd 07.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 08.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 08.fs.bsl index b9c67aaa65a..84ce27a6781 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 08.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ActivePatternExceptionAnd 08.fs.bsl @@ -38,10 +38,11 @@ ImplFile (3,32--3,38)), (3,4--3,29), Yes (3,0--3,38), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,30--3,31) })], (3,0--3,38))], - PreXmlDocEmpty, [], None, (1,0--3,38), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (3,30--3,31) })], (3,0--3,38), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--3,38), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (1,0)-(2,0) parse warning The declarations in this file will be placed in an implicit module 'ActivePatternExceptionAnd 08' based on the file name 'ActivePatternExceptionAnd 08.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. diff --git a/tests/service/data/SyntaxTree/OperatorName/CustomOperatorDefinition.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/CustomOperatorDefinition.fs.bsl index af3de67443e..bfe1edd8570 100644 --- a/tests/service/data/SyntaxTree/OperatorName/CustomOperatorDefinition.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/CustomOperatorDefinition.fs.bsl @@ -37,8 +37,9 @@ ImplFile (2,14--2,19)), (2,4--2,11), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,12--2,13) })], (2,0--2,19))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,12--2,13) })], (2,0--2,19), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/OperatorName/ObjectModelWithTwoMembers.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/ObjectModelWithTwoMembers.fs.bsl index c610b0e59d5..6a073559389 100644 --- a/tests/service/data/SyntaxTree/OperatorName/ObjectModelWithTwoMembers.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/ObjectModelWithTwoMembers.fs.bsl @@ -32,7 +32,7 @@ ImplFile { LeadingKeyword = Let (3,4--3,7) InlineKeyword = None EqualsRange = Some (3,26--3,27) })], false, false, - (3,4--3,29)); + (3,4--3,29), { InKeyword = None }); GetSetMember (Some (SynBinding diff --git a/tests/service/data/SyntaxTree/OperatorName/PartialActivePatternDefinition.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/PartialActivePatternDefinition.fs.bsl index 1af2f13c764..eea2cad6200 100644 --- a/tests/service/data/SyntaxTree/OperatorName/PartialActivePatternDefinition.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/PartialActivePatternDefinition.fs.bsl @@ -47,8 +47,9 @@ ImplFile WithKeyword = (2,45--2,49) }), (2,4--2,34), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,35--2,36) })], (2,0--2,88))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,35--2,36) })], (2,0--2,88), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/OperatorName/PartialActivePatternDefinitionWithoutParameters.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/PartialActivePatternDefinitionWithoutParameters.fs.bsl index d2f6c09c3a0..3253f26b962 100644 --- a/tests/service/data/SyntaxTree/OperatorName/PartialActivePatternDefinitionWithoutParameters.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/PartialActivePatternDefinitionWithoutParameters.fs.bsl @@ -24,8 +24,9 @@ ImplFile (2,20--2,33)), (2,4--2,17), Yes (2,0--2,33), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,18--2,19) })], (2,0--2,33))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,18--2,19) })], (2,0--2,33), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/OperatorName/QualifiedOperatorExpression.fs.bsl b/tests/service/data/SyntaxTree/OperatorName/QualifiedOperatorExpression.fs.bsl index 7db9838fe40..e6a9d22b312 100644 --- a/tests/service/data/SyntaxTree/OperatorName/QualifiedOperatorExpression.fs.bsl +++ b/tests/service/data/SyntaxTree/OperatorName/QualifiedOperatorExpression.fs.bsl @@ -39,8 +39,9 @@ ImplFile (2,25--2,38)), Ident x, (2,25--2,40)), (2,4--2,22), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,23--2,24) })], (2,0--2,40))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,23--2,24) })], (2,0--2,40), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Pattern/And 01.fs.bsl b/tests/service/data/SyntaxTree/Pattern/And 01.fs.bsl index dfc0b7f79b1..78d262c63aa 100644 --- a/tests/service/data/SyntaxTree/Pattern/And 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/And 01.fs.bsl @@ -48,7 +48,8 @@ ImplFile WithKeyword = (4,12--4,16) }), (3,4--3,7), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,8--3,9) })], (3,0--6,13))], + EqualsRange = Some (3,8--3,9) })], (3,0--6,13), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,13), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/And 02.fs.bsl b/tests/service/data/SyntaxTree/Pattern/And 02.fs.bsl index 217728c591c..3b1dc38b3ac 100644 --- a/tests/service/data/SyntaxTree/Pattern/And 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/And 02.fs.bsl @@ -50,7 +50,8 @@ ImplFile WithKeyword = (4,12--4,16) }), (3,4--3,7), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,8--3,9) })], (3,0--6,13))], + EqualsRange = Some (3,8--3,9) })], (3,0--6,13), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,13), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/And 03.fs.bsl b/tests/service/data/SyntaxTree/Pattern/And 03.fs.bsl index 2e65f951157..6f9be87082d 100644 --- a/tests/service/data/SyntaxTree/Pattern/And 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/And 03.fs.bsl @@ -49,7 +49,8 @@ ImplFile WithKeyword = (4,12--4,16) }), (3,4--3,7), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,8--3,9) })], (3,0--6,13))], + EqualsRange = Some (3,8--3,9) })], (3,0--6,13), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,13), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/And 04.fs.bsl b/tests/service/data/SyntaxTree/Pattern/And 04.fs.bsl index f049c2f689c..c7bec480021 100644 --- a/tests/service/data/SyntaxTree/Pattern/And 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/And 04.fs.bsl @@ -51,7 +51,8 @@ ImplFile WithKeyword = (4,12--4,16) }), (3,4--3,7), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,8--3,9) })], (3,0--6,13))], + EqualsRange = Some (3,8--3,9) })], (3,0--6,13), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,13), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/As 03.fs.bsl b/tests/service/data/SyntaxTree/Pattern/As 03.fs.bsl index 95af9d360b3..58d4c80beee 100644 --- a/tests/service/data/SyntaxTree/Pattern/As 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/As 03.fs.bsl @@ -14,7 +14,8 @@ ImplFile Const (Unit, (3,13--3,15)), (3,4--3,10), Yes (3,0--3,15), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,11--3,12) })], (3,0--3,15))], + EqualsRange = Some (3,11--3,12) })], (3,0--3,15), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,15), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/As 04.fs.bsl b/tests/service/data/SyntaxTree/Pattern/As 04.fs.bsl index b7347690d10..6cdec4fa9ef 100644 --- a/tests/service/data/SyntaxTree/Pattern/As 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/As 04.fs.bsl @@ -14,7 +14,8 @@ ImplFile Const (Unit, (3,11--3,13)), (3,4--3,8), Yes (3,0--3,13), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,9--3,10) })], (3,0--3,13))], + EqualsRange = Some (3,9--3,10) })], (3,0--3,13), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,13), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/As 06.fs.bsl b/tests/service/data/SyntaxTree/Pattern/As 06.fs.bsl index 662ca2e2655..6d80728ba47 100644 --- a/tests/service/data/SyntaxTree/Pattern/As 06.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/As 06.fs.bsl @@ -14,7 +14,8 @@ ImplFile ArbitraryAfterError ("localBinding2", (3,8--3,8)), (3,4--3,8), Yes (3,0--3,8), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = None })], (3,0--3,8))], + EqualsRange = None })], (3,0--3,8), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,8), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/As 07.fs.bsl b/tests/service/data/SyntaxTree/Pattern/As 07.fs.bsl index 0089a35011a..c3afef69e09 100644 --- a/tests/service/data/SyntaxTree/Pattern/As 07.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/As 07.fs.bsl @@ -14,8 +14,8 @@ ImplFile ArbitraryAfterError ("localBinding2", (3,8--3,8)), (3,4--3,8), Yes (3,0--3,8), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = None })], (3,0--3,8)); - Expr (Const (Unit, (5,0--5,2)), (5,0--5,2))], + EqualsRange = None })], (3,0--3,8), + { InKeyword = None }); Expr (Const (Unit, (5,0--5,2)), (5,0--5,2))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,2), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/As 09.fs.bsl b/tests/service/data/SyntaxTree/Pattern/As 09.fs.bsl index 77bb6b74bf2..2bb67e78eeb 100644 --- a/tests/service/data/SyntaxTree/Pattern/As 09.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/As 09.fs.bsl @@ -14,7 +14,8 @@ ImplFile ArbitraryAfterError ("localBinding2", (3,8--3,8)), (3,4--3,8), Yes (3,0--3,8), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = None })], (3,0--3,8)); + EqualsRange = None })], (3,0--3,8), + { InKeyword = None }); Let (false, [SynBinding @@ -26,7 +27,7 @@ ImplFile Yes (5,0--5,10), { LeadingKeyword = Let (5,0--5,3) InlineKeyword = None EqualsRange = Some (5,6--5,7) })], - (5,0--5,10))], + (5,0--5,10), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,10), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/As 10.fs.bsl b/tests/service/data/SyntaxTree/Pattern/As 10.fs.bsl index be2e28d3469..534660f1dd9 100644 --- a/tests/service/data/SyntaxTree/Pattern/As 10.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/As 10.fs.bsl @@ -16,7 +16,7 @@ ImplFile Yes (3,0--3,16), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,12--3,13) })], - (3,0--3,16))], + (3,0--3,16), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,16), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/As 11.fs.bsl b/tests/service/data/SyntaxTree/Pattern/As 11.fs.bsl index a7fd1764123..a515c35c0c8 100644 --- a/tests/service/data/SyntaxTree/Pattern/As 11.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/As 11.fs.bsl @@ -19,7 +19,8 @@ ImplFile Const (Unit, (3,15--3,17)), (3,4--3,12), Yes (3,0--3,17), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,13--3,14) })], (3,0--3,17))], + EqualsRange = Some (3,13--3,14) })], (3,0--3,17), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,17), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/InHeadPattern.fs.bsl b/tests/service/data/SyntaxTree/Pattern/InHeadPattern.fs.bsl index 8ef79374ffa..b051e774443 100644 --- a/tests/service/data/SyntaxTree/Pattern/InHeadPattern.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/InHeadPattern.fs.bsl @@ -26,8 +26,9 @@ ImplFile (2,4--2,10), Yes (2,0--2,24), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,11--2,12) })], (2,0--2,24))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,11--2,12) })], (2,0--2,24), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Pattern/OperatorInSynPatLongIdent.fs.bsl b/tests/service/data/SyntaxTree/Pattern/OperatorInSynPatLongIdent.fs.bsl index 31b3ea1510c..ef6ff484d63 100644 --- a/tests/service/data/SyntaxTree/Pattern/OperatorInSynPatLongIdent.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/OperatorInSynPatLongIdent.fs.bsl @@ -29,8 +29,9 @@ ImplFile (2,4--2,16), Yes (2,0--2,28), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,17--2,18) })], (2,0--2,28))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,17--2,18) })], (2,0--2,28), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Pattern/Tuple - HeadPat 01.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Tuple - HeadPat 01.fs.bsl index 13e9f682663..0cb659b4921 100644 --- a/tests/service/data/SyntaxTree/Pattern/Tuple - HeadPat 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Tuple - HeadPat 01.fs.bsl @@ -20,7 +20,8 @@ ImplFile Const (Unit, (3,12--3,14)), (3,4--3,9), Yes (3,0--3,14), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,10--3,11) })], (3,0--3,14)); + EqualsRange = Some (3,10--3,11) })], (3,0--3,14), + { InKeyword = None }); Let (false, [SynBinding @@ -38,7 +39,8 @@ ImplFile None, Const (Unit, (4,14--4,16)), (4,4--4,11), Yes (4,0--4,16), { LeadingKeyword = Let (4,0--4,3) InlineKeyword = None - EqualsRange = Some (4,12--4,13) })], (4,0--4,16))], + EqualsRange = Some (4,12--4,13) })], (4,0--4,16), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--4,16), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Tuple - HeadPat 02.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Tuple - HeadPat 02.fs.bsl index 6ec6d695f22..f2ea77c92b7 100644 --- a/tests/service/data/SyntaxTree/Pattern/Tuple - HeadPat 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Tuple - HeadPat 02.fs.bsl @@ -23,7 +23,7 @@ ImplFile Yes (3,0--3,18), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,14--3,15) })], - (3,0--3,18))], + (3,0--3,18), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,18), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 01.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 01.fs.bsl index cb624d87691..27fbcf69530 100644 --- a/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 01.fs.bsl @@ -18,7 +18,8 @@ ImplFile ArbitraryAfterError ("localBinding2", (5,0--5,0)), (3,4--5,0), Yes (3,0--5,0), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = None })], (3,0--5,0))], + EqualsRange = None })], (3,0--5,0), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,0), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 02.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 02.fs.bsl index 517795c13dd..12a43f5fd10 100644 --- a/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 02.fs.bsl @@ -19,7 +19,8 @@ ImplFile ArbitraryAfterError ("localBinding2", (4,0--4,0)), (3,4--4,0), Yes (3,0--4,0), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = None })], (3,0--4,0))], + EqualsRange = None })], (3,0--4,0), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--4,0), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 03.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 03.fs.bsl index c3a138387cb..a1f149d8123 100644 --- a/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 03.fs.bsl @@ -23,7 +23,7 @@ ImplFile Yes (3,0--3,26), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,22--3,23) })], - (3,0--3,26)); + (3,0--3,26), { InKeyword = None }); Let (false, [SynBinding @@ -43,7 +43,8 @@ ImplFile None, Const (Unit, (4,23--4,25)), (4,4--4,20), Yes (4,0--4,25), { LeadingKeyword = Let (4,0--4,3) InlineKeyword = None - EqualsRange = Some (4,21--4,22) })], (4,0--4,25))], + EqualsRange = Some (4,21--4,22) })], (4,0--4,25), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--4,25), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 04.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 04.fs.bsl index 6931a6e0e33..b007d9c1707 100644 --- a/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Tuple - Recover 04.fs.bsl @@ -20,7 +20,8 @@ ImplFile Const (Unit, (3,11--3,13)), (3,4--3,8), Yes (3,0--3,13), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,9--3,10) })], (3,0--3,13)); + EqualsRange = Some (3,9--3,10) })], (3,0--3,13), + { InKeyword = None }); Let (false, [SynBinding @@ -37,7 +38,7 @@ ImplFile Yes (5,0--5,13), { LeadingKeyword = Let (5,0--5,3) InlineKeyword = None EqualsRange = Some (5,9--5,10) })], - (5,0--5,13)); + (5,0--5,13), { InKeyword = None }); Let (false, [SynBinding @@ -51,7 +52,7 @@ ImplFile Yes (7,0--7,10), { LeadingKeyword = Let (7,0--7,3) InlineKeyword = None EqualsRange = Some (7,6--7,7) })], - (7,0--7,10))], + (7,0--7,10), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,10), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Tuple - Struct 01.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Tuple - Struct 01.fs.bsl index 8a3c5863004..d44ffcb6c11 100644 --- a/tests/service/data/SyntaxTree/Pattern/Tuple - Struct 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Tuple - Struct 01.fs.bsl @@ -20,7 +20,8 @@ ImplFile None, Const (Unit, (3,23--3,25)), (3,4--3,20), Yes (3,0--3,25), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,21--3,22) })], (3,0--3,25))], + EqualsRange = Some (3,21--3,22) })], (3,0--3,25), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,25), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 01.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 01.fs.bsl index 47a126930af..5176b76edc7 100644 --- a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 01.fs.bsl @@ -21,7 +21,8 @@ ImplFile FromParseError (3,6--3,6), (3,6--3,6)), (3,4--3,5), Yes (3,0--3,6), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = None })], (3,0--3,6))], + EqualsRange = None })], (3,0--3,6), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,6), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 02.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 02.fs.bsl index ead5a85c1af..95de5772930 100644 --- a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 02.fs.bsl @@ -21,8 +21,8 @@ ImplFile (3,9--3,10)), (3,4--3,5), Yes (3,0--3,10), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,7--3,8) })], (3,0--3,10)); - Expr (Const (Unit, (5,0--5,2)), (5,0--5,2))], + EqualsRange = Some (3,7--3,8) })], (3,0--3,10), + { InKeyword = None }); Expr (Const (Unit, (5,0--5,2)), (5,0--5,2))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,2), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 03.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 03.fs.bsl index 303709dc7fd..b45ff05fb58 100644 --- a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 03.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 03.fs.bsl @@ -22,7 +22,8 @@ ImplFile Const (Unit, (3,18--3,20)), (3,4--3,15), Yes (3,0--3,20), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,16--3,17) })], (3,0--3,20))], + EqualsRange = Some (3,16--3,17) })], (3,0--3,20), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,20), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 04.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 04.fs.bsl index d6aa47ae861..70d6d301fbd 100644 --- a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 04.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 04.fs.bsl @@ -20,7 +20,8 @@ ImplFile Const (Unit, (3,16--3,18)), (3,4--3,13), Yes (3,0--3,18), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,14--3,15) })], (3,0--3,18))], + EqualsRange = Some (3,14--3,15) })], (3,0--3,18), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,18), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 05.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 05.fs.bsl index c3c1bd37e9f..b7e8ca64ff7 100644 --- a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 05.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 05.fs.bsl @@ -8,31 +8,31 @@ ImplFile (Do (FromParseError (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (i, None), false, None, (4,8--4,9)), - Some - (SynBindingReturnInfo - (FromParseError (4,10--4,10), (4,10--4,10), [], - { ColonRange = Some (4,9--4,10) })), - Typed - (ArbitraryAfterError - ("localBinding2", (4,10--4,10)), - FromParseError (4,10--4,10), (4,10--4,10)), - (4,8--4,9), Yes (4,4--4,10), - { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = None })], - ArbitraryAfterError ("seqExpr", (4,10--4,10)), - (4,4--4,10), { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = None }), (4,4--4,10)), + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (i, None), false, None, (4,8--4,9)), + Some + (SynBindingReturnInfo + (FromParseError (4,10--4,10), (4,10--4,10), [], + { ColonRange = Some (4,9--4,10) })), + Typed + (ArbitraryAfterError + ("localBinding2", (4,10--4,10)), + FromParseError (4,10--4,10), (4,10--4,10)), + (4,8--4,9), Yes (4,4--4,10), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = None })] + Body = ArbitraryAfterError ("seqExpr", (4,10--4,10)) + Range = (4,4--4,10) + Trivia = { InKeyword = None } }, (4,4--4,10)), (3,0--4,10)), (3,0--4,10))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--4,10), { LeadingKeyword = Module (1,0--1,6) })], (true, true), diff --git a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 06.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 06.fs.bsl index a38de74e7fe..f692e5c6d19 100644 --- a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 06.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 06.fs.bsl @@ -7,30 +7,29 @@ ImplFile [Expr (Do (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (i, None), false, None, (4,8--4,9)), - Some - (SynBindingReturnInfo - (FromParseError (4,10--4,10), (4,10--4,10), [], - { ColonRange = Some (4,9--4,10) })), - Typed - (Const (Int32 1, (4,13--4,14)), - FromParseError (4,10--4,10), (4,13--4,14)), - (4,8--4,9), Yes (4,4--4,14), - { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = Some (4,11--4,12) })], - Const (Unit, (6,4--6,6)), (4,4--6,6), - { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = Some (4,11--4,12) }), (3,0--6,6)), - (3,0--6,6))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (i, None), false, None, (4,8--4,9)), + Some + (SynBindingReturnInfo + (FromParseError (4,10--4,10), (4,10--4,10), [], + { ColonRange = Some (4,9--4,10) })), + Typed + (Const (Int32 1, (4,13--4,14)), + FromParseError (4,10--4,10), (4,13--4,14)), + (4,8--4,9), Yes (4,4--4,14), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,11--4,12) })] + Body = Const (Unit, (6,4--6,6)) + Range = (4,4--6,6) + Trivia = { InKeyword = None } }, (3,0--6,6)), (3,0--6,6))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,6), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 09.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 09.fs.bsl index cf91e9d594c..c9c5d4e25e4 100644 --- a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 09.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 09.fs.bsl @@ -7,27 +7,28 @@ ImplFile [Expr (Do (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Named - (SynIdent (i, None), false, None, (4,9--4,10)), - FromParseError (4,11--4,11), (4,9--4,11)), - (4,8--4,12)), None, - ArbitraryAfterError ("localBinding2", (4,12--4,12)), - (4,8--4,12), Yes (4,4--4,12), - { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = None })], Const (Unit, (6,4--6,6)), - (4,4--6,6), { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = None }), (3,0--6,6)), (3,0--6,6))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Named + (SynIdent (i, None), false, None, (4,9--4,10)), + FromParseError (4,11--4,11), (4,9--4,11)), + (4,8--4,12)), None, + ArbitraryAfterError ("localBinding2", (4,12--4,12)), + (4,8--4,12), Yes (4,4--4,12), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = None })] + Body = Const (Unit, (6,4--6,6)) + Range = (4,4--6,6) + Trivia = { InKeyword = None } }, (3,0--6,6)), (3,0--6,6))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,6), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 10.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 10.fs.bsl index d76007a4819..6bab807b4d1 100644 --- a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 10.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 10.fs.bsl @@ -7,28 +7,27 @@ ImplFile [Expr (Do (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Named - (SynIdent (i, None), false, None, (4,9--4,10)), - FromParseError (4,11--4,11), (4,9--4,11)), - (4,8--4,12)), None, Const (Int32 1, (4,15--4,16)), - (4,8--4,12), Yes (4,4--4,16), - { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = Some (4,13--4,14) })], - Const (Unit, (6,4--6,6)), (4,4--6,6), - { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = Some (4,13--4,14) }), (3,0--6,6)), - (3,0--6,6))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Named + (SynIdent (i, None), false, None, (4,9--4,10)), + FromParseError (4,11--4,11), (4,9--4,11)), + (4,8--4,12)), None, Const (Int32 1, (4,15--4,16)), + (4,8--4,12), Yes (4,4--4,16), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,13--4,14) })] + Body = Const (Unit, (6,4--6,6)) + Range = (4,4--6,6) + Trivia = { InKeyword = None } }, (3,0--6,6)), (3,0--6,6))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,6), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 11.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 11.fs.bsl index 1afdab1ec2f..2f2093c9aec 100644 --- a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 11.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 11.fs.bsl @@ -7,34 +7,33 @@ ImplFile [Expr (Do (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo - ([[SynArgInfo ([], false, Some i)]], - SynArgInfo ([], false, None)), None), - LongIdent - (SynLongIdent ([f], [], [None]), None, None, - Pats - [Paren - (Typed - (Named - (SynIdent (i, None), false, None, - (4,11--4,12)), - FromParseError (4,13--4,13), (4,11--4,13)), - (4,10--4,14))], None, (4,8--4,14)), None, - Const (Int32 1, (4,17--4,18)), (4,8--4,14), NoneAtLet, - { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = Some (4,15--4,16) })], - Const (Unit, (6,4--6,6)), (4,4--6,6), - { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = Some (4,15--4,16) }), (3,0--6,6)), - (3,0--6,6))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo + ([[SynArgInfo ([], false, Some i)]], + SynArgInfo ([], false, None)), None), + LongIdent + (SynLongIdent ([f], [], [None]), None, None, + Pats + [Paren + (Typed + (Named + (SynIdent (i, None), false, None, + (4,11--4,12)), + FromParseError (4,13--4,13), (4,11--4,13)), + (4,10--4,14))], None, (4,8--4,14)), None, + Const (Int32 1, (4,17--4,18)), (4,8--4,14), NoneAtLet, + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,15--4,16) })] + Body = Const (Unit, (6,4--6,6)) + Range = (4,4--6,6) + Trivia = { InKeyword = None } }, (3,0--6,6)), (3,0--6,6))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,6), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 12.fs.bsl b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 12.fs.bsl index 1fc723d7ea0..34ae7a0389e 100644 --- a/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 12.fs.bsl +++ b/tests/service/data/SyntaxTree/Pattern/Typed - Missing type 12.fs.bsl @@ -7,42 +7,41 @@ ImplFile [Expr (Do (LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo - ([[SynArgInfo ([], false, Some i); - SynArgInfo ([], false, Some j)]], - SynArgInfo ([], false, None)), None), - LongIdent - (SynLongIdent ([f], [], [None]), None, None, - Pats - [Paren - (Tuple - (false, - [Typed - (Named - (SynIdent (i, None), false, None, - (4,11--4,12)), - FromParseError (4,13--4,13), - (4,11--4,13)); - Named - (SynIdent (j, None), false, None, - (4,15--4,16))], [(4,13--4,14)], - (4,11--4,16)), (4,10--4,17))], None, - (4,8--4,17)), None, Const (Int32 1, (4,20--4,21)), - (4,8--4,17), NoneAtLet, - { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = Some (4,18--4,19) })], - Const (Unit, (6,4--6,6)), (4,4--6,6), - { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = Some (4,18--4,19) }), (3,0--6,6)), - (3,0--6,6))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo + ([[SynArgInfo ([], false, Some i); + SynArgInfo ([], false, Some j)]], + SynArgInfo ([], false, None)), None), + LongIdent + (SynLongIdent ([f], [], [None]), None, None, + Pats + [Paren + (Tuple + (false, + [Typed + (Named + (SynIdent (i, None), false, None, + (4,11--4,12)), + FromParseError (4,13--4,13), + (4,11--4,13)); + Named + (SynIdent (j, None), false, None, + (4,15--4,16))], [(4,13--4,14)], + (4,11--4,16)), (4,10--4,17))], None, + (4,8--4,17)), None, Const (Int32 1, (4,20--4,21)), + (4,8--4,17), NoneAtLet, + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,18--4,19) })] + Body = Const (Unit, (6,4--6,6)) + Range = (4,4--6,6) + Trivia = { InKeyword = None } }, (3,0--6,6)), (3,0--6,6))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,6), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SimplePats/SimplePats - Recover 01.fs.bsl b/tests/service/data/SyntaxTree/SimplePats/SimplePats - Recover 01.fs.bsl index 9b7cc02ee66..ae49f2a942e 100644 --- a/tests/service/data/SyntaxTree/SimplePats/SimplePats - Recover 01.fs.bsl +++ b/tests/service/data/SyntaxTree/SimplePats/SimplePats - Recover 01.fs.bsl @@ -40,7 +40,8 @@ ImplFile { ArrowRange = Some (3,22--3,24) }), (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--3,26)); + EqualsRange = Some (3,6--3,7) })], (3,0--3,26), + { InKeyword = None }); Let (false, [SynBinding @@ -76,7 +77,8 @@ ImplFile { ArrowRange = Some (4,19--4,21) }), (4,4--4,5), NoneAtLet, { LeadingKeyword = Let (4,0--4,3) InlineKeyword = None - EqualsRange = Some (4,6--4,7) })], (4,0--4,24)); + EqualsRange = Some (4,6--4,7) })], (4,0--4,24), + { InKeyword = None }); Let (false, [SynBinding @@ -168,7 +170,8 @@ ImplFile { ArrowRange = Some (5,41--5,43) }), (5,4--5,5), NoneAtLet, { LeadingKeyword = Let (5,0--5,3) InlineKeyword = None - EqualsRange = Some (5,6--5,7) })], (5,0--5,46)); + EqualsRange = Some (5,6--5,7) })], (5,0--5,46), + { InKeyword = None }); Let (false, [SynBinding @@ -198,7 +201,8 @@ ImplFile { ArrowRange = Some (6,22--6,24) }), (6,4--6,10), NoneAtLet, { LeadingKeyword = Let (6,0--6,3) InlineKeyword = None - EqualsRange = Some (6,11--6,12) })], (6,0--6,27))], + EqualsRange = Some (6,11--6,12) })], (6,0--6,27), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,27), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SimplePats/SimplePats 01.fs.bsl b/tests/service/data/SyntaxTree/SimplePats/SimplePats 01.fs.bsl index 22d60a66606..217b23ee8e3 100644 --- a/tests/service/data/SyntaxTree/SimplePats/SimplePats 01.fs.bsl +++ b/tests/service/data/SyntaxTree/SimplePats/SimplePats 01.fs.bsl @@ -33,7 +33,7 @@ ImplFile (3,4--3,5), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,6--3,7) })], - (3,0--3,25)); + (3,0--3,25), { InKeyword = None }); Let (false, [SynBinding @@ -66,7 +66,8 @@ ImplFile { ArrowRange = Some (4,18--4,20) }), (4,4--4,5), NoneAtLet, { LeadingKeyword = Let (4,0--4,3) InlineKeyword = None - EqualsRange = Some (4,6--4,7) })], (4,0--4,23)); + EqualsRange = Some (4,6--4,7) })], (4,0--4,23), + { InKeyword = None }); Let (false, [SynBinding @@ -155,7 +156,8 @@ ImplFile { ArrowRange = Some (5,40--5,42) }), (5,4--5,5), NoneAtLet, { LeadingKeyword = Let (5,0--5,3) InlineKeyword = None - EqualsRange = Some (5,6--5,7) })], (5,0--5,45)); + EqualsRange = Some (5,6--5,7) })], (5,0--5,45), + { InKeyword = None }); Let (false, [SynBinding @@ -178,7 +180,7 @@ ImplFile (6,4--6,10), NoneAtLet, { LeadingKeyword = Let (6,0--6,3) InlineKeyword = None EqualsRange = Some (6,11--6,12) })], - (6,0--6,24)); + (6,0--6,24), { InKeyword = None }); Let (false, [SynBinding @@ -196,7 +198,8 @@ ImplFile { ArrowRange = Some (7,19--7,21) }), (7,4--7,9), NoneAtLet, { LeadingKeyword = Let (7,0--7,3) InlineKeyword = None - EqualsRange = Some (7,10--7,11) })], (7,0--7,24))], + EqualsRange = Some (7,10--7,11) })], (7,0--7,24), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,24), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/String/InterpolatedStringOffsideInModule.fs.bsl b/tests/service/data/SyntaxTree/String/InterpolatedStringOffsideInModule.fs.bsl index c042884e24f..d7fb308c07b 100644 --- a/tests/service/data/SyntaxTree/String/InterpolatedStringOffsideInModule.fs.bsl +++ b/tests/service/data/SyntaxTree/String/InterpolatedStringOffsideInModule.fs.bsl @@ -26,10 +26,11 @@ ImplFile (2,8--2,9), Yes (2,4--4,4), { LeadingKeyword = Let (2,4--2,7) InlineKeyword = None - EqualsRange = Some (2,10--2,11) })], (2,4--4,4))], false, - (1,0--4,4), { ModuleKeyword = Some (1,0--1,6) - EqualsRange = Some (1,9--1,10) })], PreXmlDocEmpty, - [], None, (1,0--4,4), { LeadingKeyword = None })], (true, true), + EqualsRange = Some (2,10--2,11) })], (2,4--4,4), + { InKeyword = None })], false, (1,0--4,4), + { ModuleKeyword = Some (1,0--1,6) + EqualsRange = Some (1,9--1,10) })], PreXmlDocEmpty, [], None, + (1,0--4,4), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/String/InterpolatedStringOffsideInNestedLet.fs.bsl b/tests/service/data/SyntaxTree/String/InterpolatedStringOffsideInNestedLet.fs.bsl index 5de04dee2f6..2ebbea5d2af 100644 --- a/tests/service/data/SyntaxTree/String/InterpolatedStringOffsideInNestedLet.fs.bsl +++ b/tests/service/data/SyntaxTree/String/InterpolatedStringOffsideInNestedLet.fs.bsl @@ -13,31 +13,33 @@ ImplFile (None, SynValInfo ([], SynArgInfo ([], false, None)), None), Named (SynIdent (a, None), false, None, (1,4--1,5)), None, LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((2,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (b, None), false, None, (2,8--2,9)), - None, - InterpolatedString - ([String (" + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((2,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (b, None), false, None, (2,8--2,9)), + None, + InterpolatedString + ([String (" ", (3,8--4,1)); - FillExpr (Const (Int32 0, (4,1--4,2)), None); - String ("", (4,2--4,4))], Regular, (3,8--4,4)), - (2,8--2,9), Yes (2,4--4,4), - { LeadingKeyword = Let (2,4--2,7) - InlineKeyword = None - EqualsRange = Some (2,10--2,11) })], Ident b, - (2,4--5,5), { LetOrUseKeyword = (2,4--2,7) - InKeyword = None - EqualsRange = Some (2,10--2,11) }), - (1,4--1,5), NoneAtLet, { LeadingKeyword = Let (1,0--1,3) - InlineKeyword = None - EqualsRange = Some (1,6--1,7) })], - (1,0--5,5))], PreXmlDocEmpty, [], None, (1,0--5,5), + FillExpr (Const (Int32 0, (4,1--4,2)), None); + String ("", (4,2--4,4))], Regular, (3,8--4,4)), + (2,8--2,9), Yes (2,4--4,4), + { LeadingKeyword = Let (2,4--2,7) + InlineKeyword = None + EqualsRange = Some (2,10--2,11) })] + Body = Ident b + Range = (2,4--5,5) + Trivia = { InKeyword = None } }, (1,4--1,5), NoneAtLet, + { LeadingKeyword = Let (1,0--1,3) + InlineKeyword = None + EqualsRange = Some (1,6--1,7) })], (1,0--5,5), + { InKeyword = None })], PreXmlDocEmpty, [], None, (1,0--5,5), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] diff --git a/tests/service/data/SyntaxTree/String/SynConstBytesWithSynByteStringKindRegular.fs.bsl b/tests/service/data/SyntaxTree/String/SynConstBytesWithSynByteStringKindRegular.fs.bsl index 9e98e92eb3b..d75deb2559f 100644 --- a/tests/service/data/SyntaxTree/String/SynConstBytesWithSynByteStringKindRegular.fs.bsl +++ b/tests/service/data/SyntaxTree/String/SynConstBytesWithSynByteStringKindRegular.fs.bsl @@ -17,8 +17,9 @@ ImplFile (2,12--2,17)), (2,4--2,9), Yes (2,0--2,17), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,10--2,11) })], (2,0--2,17))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,10--2,11) })], (2,0--2,17), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/String/SynConstBytesWithSynByteStringKindVerbatim.fs.bsl b/tests/service/data/SyntaxTree/String/SynConstBytesWithSynByteStringKindVerbatim.fs.bsl index d6108dd914e..3558453d510 100644 --- a/tests/service/data/SyntaxTree/String/SynConstBytesWithSynByteStringKindVerbatim.fs.bsl +++ b/tests/service/data/SyntaxTree/String/SynConstBytesWithSynByteStringKindVerbatim.fs.bsl @@ -17,8 +17,9 @@ ImplFile (2,12--2,18)), (2,4--2,9), Yes (2,0--2,18), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,10--2,11) })], (2,0--2,18))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,10--2,11) })], (2,0--2,18), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindRegular.fs.bsl b/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindRegular.fs.bsl index fca6ec7f61f..d7e456fbf21 100644 --- a/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindRegular.fs.bsl +++ b/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindRegular.fs.bsl @@ -16,8 +16,8 @@ ImplFile (2,4--2,5), Yes (2,0--2,12), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None EqualsRange = Some (2,6--2,7) })], - (2,0--2,12))], PreXmlDocEmpty, [], None, (2,0--3,0), - { LeadingKeyword = None })], (true, true), + (2,0--2,12), { InKeyword = None })], PreXmlDocEmpty, [], None, + (2,0--3,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindTripleQuote.fs.bsl b/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindTripleQuote.fs.bsl index c78c9cbfd83..a6367f49c08 100644 --- a/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindTripleQuote.fs.bsl +++ b/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindTripleQuote.fs.bsl @@ -16,8 +16,8 @@ ImplFile (2,4--2,5), Yes (2,0--2,16), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None EqualsRange = Some (2,6--2,7) })], - (2,0--2,16))], PreXmlDocEmpty, [], None, (2,0--3,0), - { LeadingKeyword = None })], (true, true), + (2,0--2,16), { InKeyword = None })], PreXmlDocEmpty, [], None, + (2,0--3,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindVerbatim.fs.bsl b/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindVerbatim.fs.bsl index 48535a0d130..3ac4b59d559 100644 --- a/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindVerbatim.fs.bsl +++ b/tests/service/data/SyntaxTree/String/SynConstStringWithSynStringKindVerbatim.fs.bsl @@ -16,8 +16,8 @@ ImplFile (2,4--2,5), Yes (2,0--2,13), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None EqualsRange = Some (2,6--2,7) })], - (2,0--2,13))], PreXmlDocEmpty, [], None, (2,0--3,0), - { LeadingKeyword = None })], (true, true), + (2,0--2,13), { InKeyword = None })], PreXmlDocEmpty, [], None, + (2,0--3,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindRegular.fs.bsl b/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindRegular.fs.bsl index 70937d3b1a7..7026b9a1034 100644 --- a/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindRegular.fs.bsl +++ b/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindRegular.fs.bsl @@ -19,8 +19,8 @@ ImplFile (2,4--2,5), Yes (2,0--2,18), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None EqualsRange = Some (2,6--2,7) })], - (2,0--2,18))], PreXmlDocEmpty, [], None, (2,0--3,0), - { LeadingKeyword = None })], (true, true), + (2,0--2,18), { InKeyword = None })], PreXmlDocEmpty, [], None, + (2,0--3,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindTripleQuote.fs.bsl b/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindTripleQuote.fs.bsl index 4810ae97d20..9e42b6455ce 100644 --- a/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindTripleQuote.fs.bsl +++ b/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindTripleQuote.fs.bsl @@ -22,8 +22,8 @@ ImplFile (2,4--2,5), Yes (2,0--2,22), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None EqualsRange = Some (2,6--2,7) })], - (2,0--2,22))], PreXmlDocEmpty, [], None, (2,0--3,0), - { LeadingKeyword = None })], (true, true), + (2,0--2,22), { InKeyword = None })], PreXmlDocEmpty, [], None, + (2,0--3,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindVerbatim.fs.bsl b/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindVerbatim.fs.bsl index 1be7aa3c720..2fb03900ebf 100644 --- a/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindVerbatim.fs.bsl +++ b/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithSynStringKindVerbatim.fs.bsl @@ -22,8 +22,9 @@ ImplFile Verbatim, (2,8--2,70)), (2,4--2,5), Yes (2,0--2,70), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,6--2,7) })], (2,0--2,70))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,6--2,7) })], (2,0--2,70), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithTripleQuoteMultipleDollars.fs.bsl b/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithTripleQuoteMultipleDollars.fs.bsl index 69aaf6b57a2..3bbd9b2ba46 100644 --- a/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithTripleQuoteMultipleDollars.fs.bsl +++ b/tests/service/data/SyntaxTree/String/SynExprInterpolatedStringWithTripleQuoteMultipleDollars.fs.bsl @@ -24,8 +24,8 @@ ImplFile (2,4--2,5), Yes (2,0--2,43), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None EqualsRange = Some (2,6--2,7) })], - (2,0--2,43))], PreXmlDocEmpty, [], None, (2,0--2,43), - { LeadingKeyword = None })], (true, true), + (2,0--2,43), { InKeyword = None })], PreXmlDocEmpty, [], None, + (2,0--2,43), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/SynType/Constraint intersection 01.fs.bsl b/tests/service/data/SyntaxTree/SynType/Constraint intersection 01.fs.bsl index 406f8286369..8a6042c2154 100644 --- a/tests/service/data/SyntaxTree/SynType/Constraint intersection 01.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Constraint intersection 01.fs.bsl @@ -51,7 +51,8 @@ ImplFile Const (Unit, (3,44--3,46)), (3,4--3,41), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,42--3,43) })], (3,0--3,46))], + EqualsRange = Some (3,42--3,43) })], (3,0--3,46), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,46), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Constraint intersection 02.fs.bsl b/tests/service/data/SyntaxTree/SynType/Constraint intersection 02.fs.bsl index 84ad6fcff41..0e4752a029c 100644 --- a/tests/service/data/SyntaxTree/SynType/Constraint intersection 02.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Constraint intersection 02.fs.bsl @@ -49,7 +49,7 @@ ImplFile (3,4--3,51), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,52--3,53) })], - (3,0--3,56))], + (3,0--3,56), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,56), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Fun 06.fs.bsl b/tests/service/data/SyntaxTree/SynType/Fun 06.fs.bsl index d9cb647dde9..50abe743907 100644 --- a/tests/service/data/SyntaxTree/SynType/Fun 06.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Fun 06.fs.bsl @@ -27,7 +27,7 @@ ImplFile Yes (3,0--3,18), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,14--3,15) })], - (3,0--3,18))], + (3,0--3,18), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,18), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Fun 07.fs.bsl b/tests/service/data/SyntaxTree/SynType/Fun 07.fs.bsl index fb62b6e501f..4fc31d631a2 100644 --- a/tests/service/data/SyntaxTree/SynType/Fun 07.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Fun 07.fs.bsl @@ -33,7 +33,8 @@ ImplFile (3,4--3,5), Yes (3,0--3,23), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,19--3,20) })], (3,0--3,23))], + EqualsRange = Some (3,19--3,20) })], (3,0--3,23), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,23), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Fun 08.fs.bsl b/tests/service/data/SyntaxTree/SynType/Fun 08.fs.bsl index 0abcf541d5c..95e92f5742d 100644 --- a/tests/service/data/SyntaxTree/SynType/Fun 08.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Fun 08.fs.bsl @@ -27,7 +27,7 @@ ImplFile Yes (3,0--3,16), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,12--3,13) })], - (3,0--3,16))], + (3,0--3,16), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,16), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Fun 09.fs.bsl b/tests/service/data/SyntaxTree/SynType/Fun 09.fs.bsl index 3dff98415d7..f614261b25e 100644 --- a/tests/service/data/SyntaxTree/SynType/Fun 09.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Fun 09.fs.bsl @@ -33,7 +33,7 @@ ImplFile Yes (3,0--3,21), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,17--3,18) })], - (3,0--3,21))], + (3,0--3,21), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,21), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Fun 10.fs.bsl b/tests/service/data/SyntaxTree/SynType/Fun 10.fs.bsl index b3cda4839cc..23e45ccfb0e 100644 --- a/tests/service/data/SyntaxTree/SynType/Fun 10.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Fun 10.fs.bsl @@ -27,7 +27,7 @@ ImplFile Yes (3,0--3,21), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,17--3,18) })], - (3,0--3,21))], + (3,0--3,21), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,21), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Named 01.fs.bsl b/tests/service/data/SyntaxTree/SynType/Named 01.fs.bsl index 0d39ab9c888..339d2f752f1 100644 --- a/tests/service/data/SyntaxTree/SynType/Named 01.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Named 01.fs.bsl @@ -14,7 +14,8 @@ ImplFile Const (Int32 42, (3,12--3,14)), (3,4--3,9), Yes (3,0--3,14), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,10--3,11) })], (3,0--3,14))], + EqualsRange = Some (3,10--3,11) })], (3,0--3,14), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,14), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Named 02.fs.bsl b/tests/service/data/SyntaxTree/SynType/Named 02.fs.bsl index b81f6b1f3f9..2b4929aac83 100644 --- a/tests/service/data/SyntaxTree/SynType/Named 02.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Named 02.fs.bsl @@ -16,7 +16,8 @@ ImplFile (3,4--3,17), Yes (3,0--3,22), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,18--3,19) })], (3,0--3,22))], + EqualsRange = Some (3,18--3,19) })], (3,0--3,22), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,22), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Named 03.fs.bsl b/tests/service/data/SyntaxTree/SynType/Named 03.fs.bsl index d28f17a263d..b9d6d634d3e 100644 --- a/tests/service/data/SyntaxTree/SynType/Named 03.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Named 03.fs.bsl @@ -17,7 +17,8 @@ ImplFile Const (Int32 0, (3,12--3,13)), (3,4--3,9), Yes (3,0--3,13), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,10--3,11) })], (3,0--3,13))], + EqualsRange = Some (3,10--3,11) })], (3,0--3,13), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,13), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Named 04.fs.bsl b/tests/service/data/SyntaxTree/SynType/Named 04.fs.bsl index 38104718dfb..1068e4fb7d7 100644 --- a/tests/service/data/SyntaxTree/SynType/Named 04.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Named 04.fs.bsl @@ -17,7 +17,8 @@ ImplFile Const (Int32 0, (3,20--3,21)), (3,4--3,17), Yes (3,0--3,21), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,18--3,19) })], (3,0--3,21))], + EqualsRange = Some (3,18--3,19) })], (3,0--3,21), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,21), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Named 05.fs.bsl b/tests/service/data/SyntaxTree/SynType/Named 05.fs.bsl index 828b8de599c..8580f0b85bd 100644 --- a/tests/service/data/SyntaxTree/SynType/Named 05.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Named 05.fs.bsl @@ -23,7 +23,8 @@ ImplFile (3,19--3,23)), (3,4--3,16), Yes (3,0--3,23), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,17--3,18) })], (3,0--3,23))], + EqualsRange = Some (3,17--3,18) })], (3,0--3,23), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,23), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Named 06.fs.bsl b/tests/service/data/SyntaxTree/SynType/Named 06.fs.bsl index c2a24350cd2..03c78e8a372 100644 --- a/tests/service/data/SyntaxTree/SynType/Named 06.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Named 06.fs.bsl @@ -25,7 +25,8 @@ ImplFile (3,27--3,31)), (3,4--3,24), Yes (3,0--3,31), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,25--3,26) })], (3,0--3,31))], + EqualsRange = Some (3,25--3,26) })], (3,0--3,31), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,31), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Named 07.fs.bsl b/tests/service/data/SyntaxTree/SynType/Named 07.fs.bsl index 45d7be65073..3b0a866c6e3 100644 --- a/tests/service/data/SyntaxTree/SynType/Named 07.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Named 07.fs.bsl @@ -24,7 +24,8 @@ ImplFile (3,19--3,23)), (3,4--3,16), Yes (3,0--3,23), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,17--3,18) })], (3,0--3,23))], + EqualsRange = Some (3,17--3,18) })], (3,0--3,23), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,23), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Named 08.fs.bsl b/tests/service/data/SyntaxTree/SynType/Named 08.fs.bsl index c235cb210ba..578b9d8611a 100644 --- a/tests/service/data/SyntaxTree/SynType/Named 08.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Named 08.fs.bsl @@ -18,7 +18,8 @@ ImplFile Const (Int32 0, (3,21--3,22)), (3,4--3,18), Yes (3,0--3,22), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,19--3,20) })], (3,0--3,22))], + EqualsRange = Some (3,19--3,20) })], (3,0--3,22), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,22), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/NestedSynTypeOrInsideSynExprTraitCall.fs.bsl b/tests/service/data/SyntaxTree/SynType/NestedSynTypeOrInsideSynExprTraitCall.fs.bsl index 1f03d7f33ac..0519b1b2187 100644 --- a/tests/service/data/SyntaxTree/SynType/NestedSynTypeOrInsideSynExprTraitCall.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/NestedSynTypeOrInsideSynExprTraitCall.fs.bsl @@ -99,8 +99,9 @@ ImplFile (2,36--2,100)), (2,11--2,28), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = Some (2,4--2,10) - EqualsRange = Some (2,34--2,35) })], (2,0--2,100))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,34--2,35) })], (2,0--2,100), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/SynType/SynTypeOrInsideSynExprTraitCall.fs.bsl b/tests/service/data/SyntaxTree/SynType/SynTypeOrInsideSynExprTraitCall.fs.bsl index ea2f15e0487..de6b23fb759 100644 --- a/tests/service/data/SyntaxTree/SynType/SynTypeOrInsideSynExprTraitCall.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/SynTypeOrInsideSynExprTraitCall.fs.bsl @@ -76,8 +76,9 @@ ImplFile (2,31--2,84)), (2,11--2,23), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = Some (2,4--2,10) - EqualsRange = Some (2,29--2,30) })], (2,0--2,84))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,29--2,30) })], (2,0--2,84), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/SynType/SynTypeOrInsideSynTypeConstraintWhereTyparSupportsMember.fs.bsl b/tests/service/data/SyntaxTree/SynType/SynTypeOrInsideSynTypeConstraintWhereTyparSupportsMember.fs.bsl index 31f3fe5e4c6..fe5574fc5fc 100644 --- a/tests/service/data/SyntaxTree/SynType/SynTypeOrInsideSynTypeConstraintWhereTyparSupportsMember.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/SynTypeOrInsideSynTypeConstraintWhereTyparSupportsMember.fs.bsl @@ -83,8 +83,8 @@ ImplFile (2,11--2,99), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = Some (2,4--2,10) EqualsRange = Some (2,106--2,107) })], - (2,0--3,6))], PreXmlDocEmpty, [], None, (2,0--4,0), - { LeadingKeyword = None })], (true, true), + (2,0--3,6), { InKeyword = None })], PreXmlDocEmpty, [], None, + (2,0--4,0), { LeadingKeyword = None })], (true, true), { ConditionalDirectives = [] WarnDirectives = [] CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/SynType/SynTypeOrWithAppTypeOnTheRightHandSide.fs.bsl b/tests/service/data/SyntaxTree/SynType/SynTypeOrWithAppTypeOnTheRightHandSide.fs.bsl index 3a17a731f00..5e112be7de8 100644 --- a/tests/service/data/SyntaxTree/SynType/SynTypeOrWithAppTypeOnTheRightHandSide.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/SynTypeOrWithAppTypeOnTheRightHandSide.fs.bsl @@ -57,8 +57,9 @@ ImplFile Some (2,63--2,64), (2,23--2,64)), (2,11--2,20), NoneAtLet, { LeadingKeyword = Let (2,0--2,3) InlineKeyword = Some (2,4--2,10) - EqualsRange = Some (2,21--2,22) })], (2,0--2,64))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,21--2,22) })], (2,0--2,64), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/SynType/Tuple 09.fs.bsl b/tests/service/data/SyntaxTree/SynType/Tuple 09.fs.bsl index 65df0ba18f4..2cd43c2a80f 100644 --- a/tests/service/data/SyntaxTree/SynType/Tuple 09.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Tuple 09.fs.bsl @@ -35,7 +35,8 @@ ImplFile (3,4--3,5), Yes (3,0--3,20), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,16--3,17) })], (3,0--3,20))], + EqualsRange = Some (3,16--3,17) })], (3,0--3,20), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,20), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Tuple 10.fs.bsl b/tests/service/data/SyntaxTree/SynType/Tuple 10.fs.bsl index d38b3e89d5f..e20f6953acb 100644 --- a/tests/service/data/SyntaxTree/SynType/Tuple 10.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Tuple 10.fs.bsl @@ -35,7 +35,8 @@ ImplFile (3,4--3,5), Yes (3,0--3,20), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,16--3,17) })], (3,0--3,20))], + EqualsRange = Some (3,16--3,17) })], (3,0--3,20), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,20), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Tuple 11.fs.bsl b/tests/service/data/SyntaxTree/SynType/Tuple 11.fs.bsl index ed9a34731d9..0e7cfeefa79 100644 --- a/tests/service/data/SyntaxTree/SynType/Tuple 11.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Tuple 11.fs.bsl @@ -41,7 +41,8 @@ ImplFile (3,4--3,5), Yes (3,0--3,26), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,22--3,23) })], (3,0--3,26))], + EqualsRange = Some (3,22--3,23) })], (3,0--3,26), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,26), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Tuple 12.fs.bsl b/tests/service/data/SyntaxTree/SynType/Tuple 12.fs.bsl index aab9c322a38..9c5fbb82e8c 100644 --- a/tests/service/data/SyntaxTree/SynType/Tuple 12.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Tuple 12.fs.bsl @@ -41,7 +41,8 @@ ImplFile (3,4--3,5), Yes (3,0--3,26), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,22--3,23) })], (3,0--3,26))], + EqualsRange = Some (3,22--3,23) })], (3,0--3,26), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,26), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Tuple 13.fs.bsl b/tests/service/data/SyntaxTree/SynType/Tuple 13.fs.bsl index c0d6e8ddce2..880a353a2ca 100644 --- a/tests/service/data/SyntaxTree/SynType/Tuple 13.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Tuple 13.fs.bsl @@ -43,7 +43,7 @@ ImplFile Yes (3,0--3,26), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = Some (3,22--3,23) })], - (3,0--3,26))], + (3,0--3,26), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,26), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Tuple 14.fs.bsl b/tests/service/data/SyntaxTree/SynType/Tuple 14.fs.bsl index 6a54173ea3e..60d847334a4 100644 --- a/tests/service/data/SyntaxTree/SynType/Tuple 14.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Tuple 14.fs.bsl @@ -43,7 +43,8 @@ ImplFile (3,4--3,5), Yes (3,0--3,26), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,22--3,23) })], (3,0--3,26))], + EqualsRange = Some (3,22--3,23) })], (3,0--3,26), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,26), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Tuple 15.fs.bsl b/tests/service/data/SyntaxTree/SynType/Tuple 15.fs.bsl index 44d8624017b..c84fea78a8b 100644 --- a/tests/service/data/SyntaxTree/SynType/Tuple 15.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Tuple 15.fs.bsl @@ -21,7 +21,7 @@ ImplFile (3,4--3,5), Yes (3,0--3,10), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None EqualsRange = None })], - (3,0--3,10))], + (3,0--3,10), { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,10), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 01.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 01.fs.bsl index b901dac5465..650107ddcbf 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 01.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 01.fs.bsl @@ -9,39 +9,42 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (res, None), false, None, (4,9--4,12)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (4,14--4,17), [], - { ColonRange = Some (4,12--4,13) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (4,35--4,36)), - (4,28--4,36), - { YieldOrReturnKeyword = (4,28--4,34) }), - (4,26--4,38)), (4,20--4,38)), (4,4--4,38), - Yes (4,4--4,38), { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,18--4,19) })], - YieldOrReturn - ((false, true), Ident res, (5,4--5,14), - { YieldOrReturnKeyword = (5,4--5,10) }), (4,4--5,14), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,18--4,19) }), (3,6--6,1)), - (3,0--6,1)), (3,0--6,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (res, None), false, None, (4,9--4,12)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (4,14--4,17), [], + { ColonRange = Some (4,12--4,13) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 1, (4,35--4,36)), + (4,28--4,36), + { YieldOrReturnKeyword = (4,28--4,34) }), + (4,26--4,38)), (4,20--4,38)), (4,4--4,38), + Yes (4,4--4,38), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,18--4,19) })] + Body = + YieldOrReturn + ((false, true), Ident res, (5,4--5,14), + { YieldOrReturnKeyword = (5,4--5,10) }) + Range = (4,4--5,14) + Trivia = { InKeyword = None } }, (3,6--6,1)), (3,0--6,1)), + (3,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 02.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 02.fs.bsl index 610fcf01e27..0411be79a84 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 02.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 02.fs.bsl @@ -9,39 +9,42 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Named - (SynIdent (res, None), false, None, - (4,10--4,13)), - LongIdent (SynLongIdent ([int], [], [None])), - (4,10--4,18)), (4,9--4,19)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (4,37--4,38)), - (4,30--4,38), - { YieldOrReturnKeyword = (4,30--4,36) }), - (4,28--4,40)), (4,22--4,40)), (4,4--4,40), - Yes (4,4--4,40), { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,20--4,21) })], - YieldOrReturn - ((false, true), Ident res, (5,4--5,14), - { YieldOrReturnKeyword = (5,4--5,10) }), (4,4--5,14), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,20--4,21) }), (3,6--6,1)), - (3,0--6,1)), (3,0--6,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Named + (SynIdent (res, None), false, None, + (4,10--4,13)), + LongIdent (SynLongIdent ([int], [], [None])), + (4,10--4,18)), (4,9--4,19)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 1, (4,37--4,38)), + (4,30--4,38), + { YieldOrReturnKeyword = (4,30--4,36) }), + (4,28--4,40)), (4,22--4,40)), (4,4--4,40), + Yes (4,4--4,40), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,20--4,21) })] + Body = + YieldOrReturn + ((false, true), Ident res, (5,4--5,14), + { YieldOrReturnKeyword = (5,4--5,10) }) + Range = (4,4--5,14) + Trivia = { InKeyword = None } }, (3,6--6,1)), (3,0--6,1)), + (3,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 03.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 03.fs.bsl index 7e78bdb436f..22dfbda651a 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 03.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 03.fs.bsl @@ -9,129 +9,132 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Tuple - (false, - [Typed - (Named - (SynIdent (a, None), false, None, - (4,9--4,10)), - LongIdent - (SynLongIdent ([int], [], [None])), - (4,9--4,15)); - Typed - (Named - (SynIdent (b, None), false, None, - (4,17--4,18)), - LongIdent - (SynLongIdent ([int], [], [None])), - (4,17--4,23))], [(4,15--4,16)], (4,9--4,23)), - (4,8--4,24)), None, - Tuple - (false, - [Const (Int32 1, (4,27--4,28)); - Const (Int32 3, (4,30--4,31))], [(4,28--4,29)], - (4,27--4,31)), (4,8--4,24), Yes (4,4--4,31), - { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = Some (4,25--4,26) })], - LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Tuple - (false, - [Typed - (Named - (SynIdent (c, None), false, None, - (5,10--5,11)), - LongIdent - (SynLongIdent ([int], [], [None])), - (5,10--5,16)); - Typed - (Named - (SynIdent (d, None), false, None, - (5,18--5,19)), - LongIdent - (SynLongIdent ([int], [], [None])), - (5,18--5,24))], [(5,16--5,17)], - (5,10--5,24)), (5,9--5,25)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), - Tuple + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Tuple + (false, + [Typed + (Named + (SynIdent (a, None), false, None, + (4,9--4,10)), + LongIdent + (SynLongIdent ([int], [], [None])), + (4,9--4,15)); + Typed + (Named + (SynIdent (b, None), false, None, + (4,17--4,18)), + LongIdent + (SynLongIdent ([int], [], [None])), + (4,17--4,23))], [(4,15--4,16)], + (4,9--4,23)), (4,8--4,24)), None, + Tuple + (false, + [Const (Int32 1, (4,27--4,28)); + Const (Int32 3, (4,30--4,31))], [(4,28--4,29)], + (4,27--4,31)), (4,8--4,24), Yes (4,4--4,31), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,25--4,26) })] + Body = + LetOrUse + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo + ([], SynArgInfo ([], false, None)), None), + Paren + (Tuple + (false, + [Typed + (Named + (SynIdent (c, None), false, None, + (5,10--5,11)), + LongIdent + (SynLongIdent ([int], [], [None])), + (5,10--5,16)); + Typed + (Named + (SynIdent (d, None), false, None, + (5,18--5,19)), + LongIdent + (SynLongIdent ([int], [], [None])), + (5,18--5,24))], [(5,16--5,17)], + (5,10--5,24)), (5,9--5,25)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Tuple + (false, + [Const (Int32 1, (5,43--5,44)); + Const (Int32 3, (5,46--5,47))], + [(5,44--5,45)], (5,43--5,47)), + (5,36--5,47), + { YieldOrReturnKeyword = (5,36--5,42) }), + (5,34--5,49)), (5,28--5,49)), + (5,4--5,49), Yes (5,4--5,49), + { LeadingKeyword = LetBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,26--5,27) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent (false, - [Const (Int32 1, (5,43--5,44)); - Const (Int32 3, (5,46--5,47))], - [(5,44--5,45)], (5,43--5,47)), - (5,36--5,47), - { YieldOrReturnKeyword = (5,36--5,42) }), - (5,34--5,49)), (5,28--5,49)), (5,4--5,49), - Yes (5,4--5,49), - { LeadingKeyword = Let (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,26--5,27) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, - App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,21--6,22)), - App - (NonAtomic, false, - App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), - None, (6,17--6,18)), - App - (NonAtomic, false, - App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some - (OriginalNotation "+")]), - None, (6,13--6,14)), Ident a, - (6,11--6,14)), Ident b, - (6,11--6,16)), (6,11--6,18)), - Ident c, (6,11--6,20)), (6,11--6,22)), - Ident d, (6,11--6,24)), (6,4--6,24), - { YieldOrReturnKeyword = (6,4--6,10) }), - (5,4--6,24), { LetOrUseKeyword = (5,4--5,8) - InKeyword = None - EqualsRange = Some (5,26--5,27) }), - (4,4--6,24), { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = Some (4,25--4,26) }), - (3,6--7,1)), (3,0--7,1)), (3,0--7,1))], + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), + None, (6,21--6,22)), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), + None, (6,17--6,18)), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some + (OriginalNotation + "+")]), None, + (6,13--6,14)), Ident a, + (6,11--6,14)), Ident b, + (6,11--6,16)), (6,11--6,18)), + Ident c, (6,11--6,20)), (6,11--6,22)), + Ident d, (6,11--6,24)), (6,4--6,24), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (5,4--6,24) + Trivia = { InKeyword = None } } + Range = (4,4--6,24) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 04.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 04.fs.bsl index cf228ae258e..c20e6e5f6a5 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 04.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 04.fs.bsl @@ -11,34 +11,35 @@ ImplFile Tuple (false, [LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (a, None), false, None, (4,8--4,9)), - Some - (SynBindingReturnInfo - (LongIdent - (SynLongIdent ([int], [], [None])), - (4,11--4,14), [], - { ColonRange = Some (4,9--4,10) })), - Typed - (ArbitraryAfterError - ("localBinding2", (4,14--4,14)), - LongIdent (SynLongIdent ([int], [], [None])), - (4,14--4,14)), (4,8--4,9), Yes (4,4--4,14), - { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = None })], - ArbitraryAfterError ("declExpr3", (5,15--5,16)), - (4,4--5,16), { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = None }); Ident d], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo + ([], SynArgInfo ([], false, None)), None), + Named + (SynIdent (a, None), false, None, (4,8--4,9)), + Some + (SynBindingReturnInfo + (LongIdent + (SynLongIdent ([int], [], [None])), + (4,11--4,14), [], + { ColonRange = Some (4,9--4,10) })), + Typed + (ArbitraryAfterError + ("localBinding2", (4,14--4,14)), + LongIdent (SynLongIdent ([int], [], [None])), + (4,14--4,14)), (4,8--4,9), Yes (4,4--4,14), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = None })] + Body = + ArbitraryAfterError ("declExpr3", (5,15--5,16)) + Range = (4,4--5,16) + Trivia = { InKeyword = None } }; Ident d], [(5,15--5,16)], (4,4--5,18)), (3,6--5,47)), (3,0--5,47)), (3,0--5,47))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 05.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 05.fs.bsl index c25638c937b..6077e675f0a 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 05.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 05.fs.bsl @@ -5,61 +5,64 @@ ImplFile ([Module], false, NamedModule, [Expr (LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (x, None), false, None, (2,5--2,6)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (2,7--2,10), [], { ColonRange = Some (2,6--2,7) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (2,28--2,29)), - (2,21--2,29), - { YieldOrReturnKeyword = (2,21--2,27) }), - (2,19--2,31)), (2,13--2,31)), (2,0--2,31), - Yes (2,0--2,31), { LeadingKeyword = Let (2,0--2,4) - InlineKeyword = None - EqualsRange = Some (2,11--2,12) })], - LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Named - (SynIdent (y, None), false, None, (3,6--3,7)), - LongIdent (SynLongIdent ([int], [], [None])), - (3,6--3,11)), (3,5--3,12)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 2, (3,30--3,31)), - (3,23--3,31), - { YieldOrReturnKeyword = (3,23--3,29) }), - (3,21--3,33)), (3,15--3,33)), (3,0--3,33), - Yes (3,0--3,33), { LeadingKeyword = Let (3,0--3,4) - InlineKeyword = None - EqualsRange = Some (3,13--3,14) })], - ImplicitZero (3,33--3,33), (3,0--3,33), - { LetOrUseKeyword = (3,0--3,4) - InKeyword = None - EqualsRange = Some (3,13--3,14) }), (2,0--3,33), - { LetOrUseKeyword = (2,0--2,4) - InKeyword = None - EqualsRange = Some (2,11--2,12) }), (2,0--3,33))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (x, None), false, None, (2,5--2,6)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (2,7--2,10), [], { ColonRange = Some (2,6--2,7) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), Const (Int32 1, (2,28--2,29)), + (2,21--2,29), + { YieldOrReturnKeyword = (2,21--2,27) }), + (2,19--2,31)), (2,13--2,31)), (2,0--2,31), + Yes (2,0--2,31), { LeadingKeyword = LetBang (2,0--2,4) + InlineKeyword = None + EqualsRange = Some (2,11--2,12) })] + Body = + LetOrUse + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Named + (SynIdent (y, None), false, None, (3,6--3,7)), + LongIdent (SynLongIdent ([int], [], [None])), + (3,6--3,11)), (3,5--3,12)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 2, (3,30--3,31)), (3,23--3,31), + { YieldOrReturnKeyword = (3,23--3,29) }), + (3,21--3,33)), (3,15--3,33)), (3,0--3,33), + Yes (3,0--3,33), + { LeadingKeyword = LetBang (3,0--3,4) + InlineKeyword = None + EqualsRange = Some (3,13--3,14) })] + Body = ImplicitZero (3,33--3,33) + Range = (3,0--3,33) + Trivia = { InKeyword = None } } + Range = (2,0--3,33) + Trivia = { InKeyword = None } }, (2,0--3,33))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,33), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 06.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 06.fs.bsl index 78a44c56d3a..5fdb8c60c7e 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 06.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 06.fs.bsl @@ -5,59 +5,62 @@ ImplFile ([Module], false, NamedModule, [Expr (LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), Wild (2,5--2,6), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (2,7--2,10), [], { ColonRange = Some (2,6--2,7) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (2,28--2,29)), - (2,21--2,29), - { YieldOrReturnKeyword = (2,21--2,27) }), - (2,19--2,31)), (2,13--2,31)), (2,0--2,31), - Yes (2,0--2,31), { LeadingKeyword = Let (2,0--2,4) - InlineKeyword = None - EqualsRange = Some (2,11--2,12) })], - LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Wild (3,6--3,7), - LongIdent (SynLongIdent ([int], [], [None])), - (3,6--3,11)), (3,5--3,12)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 2, (3,30--3,31)), - (3,23--3,31), - { YieldOrReturnKeyword = (3,23--3,29) }), - (3,21--3,33)), (3,15--3,33)), (3,0--3,33), - Yes (3,0--3,33), { LeadingKeyword = Let (3,0--3,4) - InlineKeyword = None - EqualsRange = Some (3,13--3,14) })], - ImplicitZero (3,33--3,33), (3,0--3,33), - { LetOrUseKeyword = (3,0--3,4) - InKeyword = None - EqualsRange = Some (3,13--3,14) }), (2,0--3,33), - { LetOrUseKeyword = (2,0--2,4) - InKeyword = None - EqualsRange = Some (2,11--2,12) }), (2,0--3,33))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), Wild (2,5--2,6), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (2,7--2,10), [], { ColonRange = Some (2,6--2,7) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), Const (Int32 1, (2,28--2,29)), + (2,21--2,29), + { YieldOrReturnKeyword = (2,21--2,27) }), + (2,19--2,31)), (2,13--2,31)), (2,0--2,31), + Yes (2,0--2,31), { LeadingKeyword = LetBang (2,0--2,4) + InlineKeyword = None + EqualsRange = Some (2,11--2,12) })] + Body = + LetOrUse + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Wild (3,6--3,7), + LongIdent (SynLongIdent ([int], [], [None])), + (3,6--3,11)), (3,5--3,12)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 2, (3,30--3,31)), (3,23--3,31), + { YieldOrReturnKeyword = (3,23--3,29) }), + (3,21--3,33)), (3,15--3,33)), (3,0--3,33), + Yes (3,0--3,33), + { LeadingKeyword = LetBang (3,0--3,4) + InlineKeyword = None + EqualsRange = Some (3,13--3,14) })] + Body = ImplicitZero (3,33--3,33) + Range = (3,0--3,33) + Trivia = { InKeyword = None } } + Range = (2,0--3,33) + Trivia = { InKeyword = None } }, (2,0--3,33))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--3,33), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 07.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 07.fs.bsl index 429cc096f4f..c0c99a54dfb 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 07.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 07.fs.bsl @@ -9,38 +9,40 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Record - ([NamePatPairField - (SynLongIdent ([Name], [], [None]), - Some (3,17--3,18), (3,12--3,23), - Named - (SynIdent (name, None), false, None, - (3,19--3,23)), None)], (3,10--3,25)), - LongIdent (SynLongIdent ([Person], [], [None])), - (3,10--3,33)), (3,9--3,34)), None, - App - (Atomic, false, Ident asyncPerson, - Const (Unit, (3,48--3,50)), (3,37--3,50)), - (3,4--3,50), Yes (3,4--3,50), - { LeadingKeyword = Let (3,4--3,8) - InlineKeyword = None - EqualsRange = Some (3,35--3,36) })], - YieldOrReturn - ((false, true), Ident name, (5,4--5,15), - { YieldOrReturnKeyword = (5,4--5,10) }), (3,4--5,15), - { LetOrUseKeyword = (3,4--3,8) - InKeyword = None - EqualsRange = Some (3,35--3,36) }), (2,6--7,1)), - (2,0--7,1)), (2,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Record + ([NamePatPairField + (SynLongIdent ([Name], [], [None]), + Some (3,17--3,18), (3,12--3,23), + Named + (SynIdent (name, None), false, None, + (3,19--3,23)), None)], (3,10--3,25)), + LongIdent + (SynLongIdent ([Person], [], [None])), + (3,10--3,33)), (3,9--3,34)), None, + App + (Atomic, false, Ident asyncPerson, + Const (Unit, (3,48--3,50)), (3,37--3,50)), + (3,4--3,50), Yes (3,4--3,50), + { LeadingKeyword = LetBang (3,4--3,8) + InlineKeyword = None + EqualsRange = Some (3,35--3,36) })] + Body = + YieldOrReturn + ((false, true), Ident name, (5,4--5,15), + { YieldOrReturnKeyword = (5,4--5,10) }) + Range = (3,4--5,15) + Trivia = { InKeyword = None } }, (2,6--7,1)), (2,0--7,1)), + (2,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 08.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 08.fs.bsl index a8e603e6eaf..48c8b1f8d40 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 08.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 08.fs.bsl @@ -9,39 +9,41 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Record - ([NamePatPairField - (SynLongIdent ([Name], [], [None]), - Some (3,16--3,17), (3,11--3,22), - Named - (SynIdent (name, None), false, None, - (3,18--3,22)), None)], (3,9--3,24)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([Person], [], [None])), - (3,26--3,32), [], - { ColonRange = Some (3,24--3,25) })), - App - (Atomic, false, Ident asyncPerson, - Const (Unit, (3,46--3,48)), (3,35--3,48)), - (3,4--3,48), Yes (3,4--3,48), - { LeadingKeyword = Let (3,4--3,8) - InlineKeyword = None - EqualsRange = Some (3,33--3,34) })], - YieldOrReturn - ((false, true), Ident name, (4,4--4,15), - { YieldOrReturnKeyword = (4,4--4,10) }), (3,4--4,15), - { LetOrUseKeyword = (3,4--3,8) - InKeyword = None - EqualsRange = Some (3,33--3,34) }), (2,6--6,1)), - (2,0--6,1)), (2,0--6,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Record + ([NamePatPairField + (SynLongIdent ([Name], [], [None]), + Some (3,16--3,17), (3,11--3,22), + Named + (SynIdent (name, None), false, None, + (3,18--3,22)), None)], (3,9--3,24)), + Some + (SynBindingReturnInfo + (LongIdent + (SynLongIdent ([Person], [], [None])), + (3,26--3,32), [], + { ColonRange = Some (3,24--3,25) })), + App + (Atomic, false, Ident asyncPerson, + Const (Unit, (3,46--3,48)), (3,35--3,48)), + (3,4--3,48), Yes (3,4--3,48), + { LeadingKeyword = LetBang (3,4--3,8) + InlineKeyword = None + EqualsRange = Some (3,33--3,34) })] + Body = + YieldOrReturn + ((false, true), Ident name, (4,4--4,15), + { YieldOrReturnKeyword = (4,4--4,10) }) + Range = (3,4--4,15) + Trivia = { InKeyword = None } }, (2,6--6,1)), (2,0--6,1)), + (2,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 09.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 09.fs.bsl index ab423155185..fb9c7691150 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 09.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 09.fs.bsl @@ -9,35 +9,37 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value, None), false, None, - (3,16--3,21))], None, (3,10--3,21)), - (3,9--3,22)), None, - App - (Atomic, false, Ident asyncOption, - Const (Unit, (3,36--3,38)), (3,25--3,38)), - (3,4--3,38), Yes (3,4--3,38), - { LeadingKeyword = Let (3,4--3,8) - InlineKeyword = None - EqualsRange = Some (3,23--3,24) })], - YieldOrReturn - ((false, true), Ident value, (4,4--4,16), - { YieldOrReturnKeyword = (4,4--4,10) }), (3,4--4,16), - { LetOrUseKeyword = (3,4--3,8) - InKeyword = None - EqualsRange = Some (3,23--3,24) }), (2,6--5,1)), - (2,0--5,1)), (2,0--5,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (LongIdent + (SynLongIdent ([Union], [], [None]), None, + None, + Pats + [Named + (SynIdent (value, None), false, None, + (3,16--3,21))], None, (3,10--3,21)), + (3,9--3,22)), None, + App + (Atomic, false, Ident asyncOption, + Const (Unit, (3,36--3,38)), (3,25--3,38)), + (3,4--3,38), Yes (3,4--3,38), + { LeadingKeyword = LetBang (3,4--3,8) + InlineKeyword = None + EqualsRange = Some (3,23--3,24) })] + Body = + YieldOrReturn + ((false, true), Ident value, (4,4--4,16), + { YieldOrReturnKeyword = (4,4--4,10) }) + Range = (3,4--4,16) + Trivia = { InKeyword = None } }, (2,6--5,1)), (2,0--5,1)), + (2,0--5,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 10.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 10.fs.bsl index 1952891784e..82aa1291840 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 10.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 10.fs.bsl @@ -9,33 +9,34 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value, None), false, None, - (3,15--3,20))], None, (3,9--3,20)), None, - App - (Atomic, false, Ident asyncOption, - Const (Unit, (3,34--3,36)), (3,23--3,36)), - (3,4--3,36), Yes (3,4--3,36), - { LeadingKeyword = Let (3,4--3,8) - InlineKeyword = None - EqualsRange = Some (3,21--3,22) })], - YieldOrReturn - ((false, true), Ident value, (4,4--4,16), - { YieldOrReturnKeyword = (4,4--4,10) }), (3,4--4,16), - { LetOrUseKeyword = (3,4--3,8) - InKeyword = None - EqualsRange = Some (3,21--3,22) }), (2,6--5,1)), - (2,0--5,1)), (2,0--5,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + LongIdent + (SynLongIdent ([Union], [], [None]), None, None, + Pats + [Named + (SynIdent (value, None), false, None, + (3,15--3,20))], None, (3,9--3,20)), None, + App + (Atomic, false, Ident asyncOption, + Const (Unit, (3,34--3,36)), (3,23--3,36)), + (3,4--3,36), Yes (3,4--3,36), + { LeadingKeyword = LetBang (3,4--3,8) + InlineKeyword = None + EqualsRange = Some (3,21--3,22) })] + Body = + YieldOrReturn + ((false, true), Ident value, (4,4--4,16), + { YieldOrReturnKeyword = (4,4--4,10) }) + Range = (3,4--4,16) + Trivia = { InKeyword = None } }, (2,6--5,1)), (2,0--5,1)), + (2,0--5,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 11.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 11.fs.bsl index 91620f8a19d..cf69227574f 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 11.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 11.fs.bsl @@ -9,45 +9,47 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value, None), false, None, - (3,16--3,21))], None, (3,10--3,21)), - (3,9--3,22)), - Some - (SynBindingReturnInfo - (App - (LongIdent - (SynLongIdent ([option], [], [None])), - None, - [LongIdent - (SynLongIdent ([int], [], [None]))], [], - None, true, (3,24--3,34)), (3,24--3,34), [], - { ColonRange = Some (3,22--3,23) })), - App - (Atomic, false, Ident asyncOption, - Const (Unit, (3,48--3,50)), (3,37--3,50)), - (3,4--3,50), Yes (3,4--3,50), - { LeadingKeyword = Let (3,4--3,8) - InlineKeyword = None - EqualsRange = Some (3,35--3,36) })], - YieldOrReturn - ((false, true), Ident value, (4,4--4,16), - { YieldOrReturnKeyword = (4,4--4,10) }), (3,4--4,16), - { LetOrUseKeyword = (3,4--3,8) - InKeyword = None - EqualsRange = Some (3,35--3,36) }), (2,6--5,1)), - (2,0--5,1)), (2,0--5,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (LongIdent + (SynLongIdent ([Union], [], [None]), None, + None, + Pats + [Named + (SynIdent (value, None), false, None, + (3,16--3,21))], None, (3,10--3,21)), + (3,9--3,22)), + Some + (SynBindingReturnInfo + (App + (LongIdent + (SynLongIdent ([option], [], [None])), + None, + [LongIdent + (SynLongIdent ([int], [], [None]))], [], + None, true, (3,24--3,34)), (3,24--3,34), + [], { ColonRange = Some (3,22--3,23) })), + App + (Atomic, false, Ident asyncOption, + Const (Unit, (3,48--3,50)), (3,37--3,50)), + (3,4--3,50), Yes (3,4--3,50), + { LeadingKeyword = LetBang (3,4--3,8) + InlineKeyword = None + EqualsRange = Some (3,35--3,36) })] + Body = + YieldOrReturn + ((false, true), Ident value, (4,4--4,16), + { YieldOrReturnKeyword = (4,4--4,10) }) + Range = (3,4--4,16) + Trivia = { InKeyword = None } }, (2,6--5,1)), (2,0--5,1)), + (2,0--5,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 12.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 12.fs.bsl index 19b59f7f1da..f2fbd90c903 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 12.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 12.fs.bsl @@ -9,43 +9,44 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value, None), false, None, - (3,15--3,20))], None, (3,9--3,20)), - Some - (SynBindingReturnInfo - (App - (LongIdent - (SynLongIdent ([option], [], [None])), - None, - [LongIdent - (SynLongIdent ([int], [], [None]))], [], - None, true, (3,22--3,32)), (3,22--3,32), [], - { ColonRange = Some (3,20--3,21) })), - App - (Atomic, false, Ident asyncOption, - Const (Unit, (3,46--3,48)), (3,35--3,48)), - (3,4--3,48), Yes (3,4--3,48), - { LeadingKeyword = Let (3,4--3,8) - InlineKeyword = None - EqualsRange = Some (3,33--3,34) })], - YieldOrReturn - ((false, true), Ident value, (4,4--4,16), - { YieldOrReturnKeyword = (4,4--4,10) }), (3,4--4,16), - { LetOrUseKeyword = (3,4--3,8) - InKeyword = None - EqualsRange = Some (3,33--3,34) }), (2,6--5,1)), - (2,0--5,1)), (2,0--5,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + LongIdent + (SynLongIdent ([Union], [], [None]), None, None, + Pats + [Named + (SynIdent (value, None), false, None, + (3,15--3,20))], None, (3,9--3,20)), + Some + (SynBindingReturnInfo + (App + (LongIdent + (SynLongIdent ([option], [], [None])), + None, + [LongIdent + (SynLongIdent ([int], [], [None]))], [], + None, true, (3,22--3,32)), (3,22--3,32), + [], { ColonRange = Some (3,20--3,21) })), + App + (Atomic, false, Ident asyncOption, + Const (Unit, (3,46--3,48)), (3,35--3,48)), + (3,4--3,48), Yes (3,4--3,48), + { LeadingKeyword = LetBang (3,4--3,8) + InlineKeyword = None + EqualsRange = Some (3,33--3,34) })] + Body = + YieldOrReturn + ((false, true), Ident value, (4,4--4,16), + { YieldOrReturnKeyword = (4,4--4,10) }) + Range = (3,4--4,16) + Trivia = { InKeyword = None } }, (2,6--5,1)), (2,0--5,1)), + (2,0--5,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 14.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 14.fs.bsl index 87485698a0d..0bce3a97d5a 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 14.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 14.fs.bsl @@ -9,76 +9,78 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (As - (Named - (SynIdent (x, None), false, None, - (4,10--4,11)), - Named - (SynIdent (y, None), false, None, - (4,15--4,16)), (4,10--4,16)), (4,9--4,17)), - Some - (SynBindingReturnInfo - (FromParseError (4,18--4,18), (4,18--4,18), [], - { ColonRange = Some (4,17--4,18) })), - App - (Atomic, false, Ident asyncInt, - Const (Unit, (4,29--4,31)), (4,21--4,31)), - (4,4--4,31), Yes (4,4--4,31), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,19--4,20) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (As - (Named - (SynIdent (a, None), false, None, - (5,10--5,11)), - Named - (SynIdent (b, None), false, None, - (5,15--5,16)), (5,10--5,16)), (5,9--5,17)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([string], [], [None])), - (5,19--5,25), [], - { ColonRange = Some (5,17--5,18) })), - App - (Atomic, false, Ident asyncString, - Const (Unit, (5,39--5,41)), (5,28--5,41)), - (5,4--5,41), Yes (5,4--5,41), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,26--5,27) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (As + (Named + (SynIdent (x, None), false, None, + (4,10--4,11)), + Named + (SynIdent (y, None), false, None, + (4,15--4,16)), (4,10--4,16)), (4,9--4,17)), + Some + (SynBindingReturnInfo + (FromParseError (4,18--4,18), (4,18--4,18), [], + { ColonRange = Some (4,17--4,18) })), App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,13--6,14)), Ident x, (6,11--6,14)), - Ident b, (6,11--6,16)), (6,4--6,16), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,16), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,19--4,20) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + (Atomic, false, Ident asyncInt, + Const (Unit, (4,29--4,31)), (4,21--4,31)), + (4,4--4,31), Yes (4,4--4,31), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,19--4,20) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (As + (Named + (SynIdent (a, None), false, None, + (5,10--5,11)), + Named + (SynIdent (b, None), false, None, + (5,15--5,16)), (5,10--5,16)), (5,9--5,17)), + Some + (SynBindingReturnInfo + (LongIdent + (SynLongIdent ([string], [], [None])), + (5,19--5,25), [], + { ColonRange = Some (5,17--5,18) })), + App + (Atomic, false, Ident asyncString, + Const (Unit, (5,39--5,41)), (5,28--5,41)), + (5,4--5,41), Yes (5,4--5,41), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,26--5,27) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (6,13--6,14)), Ident x, (6,11--6,14)), + Ident b, (6,11--6,16)), (6,4--6,16), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,16) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 15.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 15.fs.bsl index e252e9d6393..f262515261c 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 15.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 15.fs.bsl @@ -9,50 +9,51 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (As - (Named - (SynIdent (x, None), false, None, - (4,10--4,11)), - Named - (SynIdent (y, None), false, None, - (4,15--4,16)), (4,10--4,16)), (4,9--4,17)), - Some - (SynBindingReturnInfo - (FromParseError (4,18--4,18), (4,18--4,18), [], - { ColonRange = Some (4,17--4,18) })), - App - (Atomic, false, Ident asyncString, - Const (Unit, (5,39--5,41)), (5,28--5,41)), - (4,4--5,41), Yes (4,4--5,41), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (5,26--5,27) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (As + (Named + (SynIdent (x, None), false, None, + (4,10--4,11)), + Named + (SynIdent (y, None), false, None, + (4,15--4,16)), (4,10--4,16)), (4,9--4,17)), + Some + (SynBindingReturnInfo + (FromParseError (4,18--4,18), (4,18--4,18), [], + { ColonRange = Some (4,17--4,18) })), App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,13--6,14)), Ident x, (6,11--6,14)), - Ident b, (6,11--6,16)), (6,4--6,16), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,16), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (5,26--5,27) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + (Atomic, false, Ident asyncString, + Const (Unit, (5,39--5,41)), (5,28--5,41)), + (4,4--5,41), Yes (4,4--5,41), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (5,26--5,27) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (6,13--6,14)), Ident x, (6,11--6,14)), + Ident b, (6,11--6,16)), (6,4--6,16), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,16) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 17.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 17.fs.bsl index b6adc9e3f2f..471ce05d432 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 17.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 17.fs.bsl @@ -23,42 +23,43 @@ ImplFile Const (Int32 1, (3,23--3,24)), (3,4--3,20), Yes (3,0--3,24), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,21--3,22) })], (3,0--3,24)); + EqualsRange = Some (3,21--3,22) })], (3,0--3,24), + { InKeyword = None }); Expr (LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (As - (LongIdent - (SynLongIdent ([Even], [], [None]), None, None, - Pats [], None, (5,6--5,10)), - Named - (SynIdent (x, None), false, None, (5,14--5,15)), - (5,6--5,15)), - LongIdent (SynLongIdent ([int], [], [None])), - (5,6--5,20)), (5,5--5,21)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 2, (5,39--5,40)), - (5,32--5,40), - { YieldOrReturnKeyword = (5,32--5,38) }), - (5,30--5,42)), (5,24--5,42)), (5,0--5,42), - Yes (5,0--5,42), { LeadingKeyword = Let (5,0--5,4) - InlineKeyword = None - EqualsRange = Some (5,22--5,23) })], - ImplicitZero (5,42--5,42), (5,0--5,42), - { LetOrUseKeyword = (5,0--5,4) - InKeyword = None - EqualsRange = Some (5,22--5,23) }), (5,0--5,42))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (As + (LongIdent + (SynLongIdent ([Even], [], [None]), None, None, + Pats [], None, (5,6--5,10)), + Named + (SynIdent (x, None), false, None, (5,14--5,15)), + (5,6--5,15)), + LongIdent (SynLongIdent ([int], [], [None])), + (5,6--5,20)), (5,5--5,21)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), Const (Int32 2, (5,39--5,40)), + (5,32--5,40), + { YieldOrReturnKeyword = (5,32--5,38) }), + (5,30--5,42)), (5,24--5,42)), (5,0--5,42), + Yes (5,0--5,42), { LeadingKeyword = LetBang (5,0--5,4) + InlineKeyword = None + EqualsRange = Some (5,22--5,23) })] + Body = ImplicitZero (5,42--5,42) + Range = (5,0--5,42) + Trivia = { InKeyword = None } }, (5,0--5,42))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,42), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 18.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 18.fs.bsl index 0b62badd88e..cb42eb3bdb5 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 18.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 18.fs.bsl @@ -26,41 +26,43 @@ ImplFile (3,4--3,13), Yes (3,0--3,22), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,19--3,20) })], (3,0--3,22)); + EqualsRange = Some (3,19--3,20) })], (3,0--3,22), + { InKeyword = None }); Expr (LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - As - (LongIdent - (SynLongIdent ([Even], [], [None]), None, None, - Pats [], None, (5,5--5,9)), - Named (SynIdent (x, None), false, None, (5,13--5,14)), - (5,5--5,14)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (5,16--5,19), [], { ColonRange = Some (5,14--5,15) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 2, (5,37--5,38)), - (5,30--5,38), - { YieldOrReturnKeyword = (5,30--5,36) }), - (5,28--5,40)), (5,22--5,40)), (5,0--5,40), - Yes (5,0--5,40), { LeadingKeyword = Let (5,0--5,4) - InlineKeyword = None - EqualsRange = Some (5,20--5,21) })], - ImplicitZero (5,40--5,40), (5,0--5,40), - { LetOrUseKeyword = (5,0--5,4) - InKeyword = None - EqualsRange = Some (5,20--5,21) }), (5,0--5,40))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + As + (LongIdent + (SynLongIdent ([Even], [], [None]), None, None, + Pats [], None, (5,5--5,9)), + Named (SynIdent (x, None), false, None, (5,13--5,14)), + (5,5--5,14)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (5,16--5,19), [], + { ColonRange = Some (5,14--5,15) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), Const (Int32 2, (5,37--5,38)), + (5,30--5,38), + { YieldOrReturnKeyword = (5,30--5,36) }), + (5,28--5,40)), (5,22--5,40)), (5,0--5,40), + Yes (5,0--5,40), { LeadingKeyword = LetBang (5,0--5,4) + InlineKeyword = None + EqualsRange = Some (5,20--5,21) })] + Body = ImplicitZero (5,40--5,40) + Range = (5,0--5,40) + Trivia = { InKeyword = None } }, (5,0--5,40))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--5,40), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 19.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 19.fs.bsl index cb6025c1cb0..7d6a002bdc9 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 19.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 19.fs.bsl @@ -9,73 +9,77 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (As - (LongIdent - (SynLongIdent ([Even], [], [None]), None, - None, Pats [], None, (4,9--4,13)), - Named - (SynIdent (x, None), false, None, - (4,17--4,18)), (4,9--4,18)), - LongIdent (SynLongIdent ([int], [], [None])), - (4,9--4,23)), (4,8--4,24)), None, - Const (Int32 1, (4,27--4,28)), (4,8--4,24), - Yes (4,4--4,28), { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = Some (4,25--4,26) })], - LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (As - (LongIdent - (SynLongIdent ([Even], [], [None]), - None, None, Pats [], None, - (5,10--5,14)), - Named - (SynIdent (x, None), false, None, - (5,18--5,19)), (5,10--5,19)), - LongIdent (SynLongIdent ([int], [], [None])), - (5,10--5,24)), (5,9--5,25)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), - Const (Int32 2, (5,43--5,44)), - (5,36--5,44), - { YieldOrReturnKeyword = (5,36--5,42) }), - (5,34--5,46)), (5,28--5,46)), (5,4--5,46), - Yes (5,4--5,46), - { LeadingKeyword = Let (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,26--5,27) })], - YieldOrReturn - ((false, true), Ident x, (6,4--6,12), - { YieldOrReturnKeyword = (6,4--6,10) }), - (5,4--6,12), { LetOrUseKeyword = (5,4--5,8) - InKeyword = None - EqualsRange = Some (5,26--5,27) }), - (4,4--6,12), { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = Some (4,25--4,26) }), - (3,6--7,1)), (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (As + (LongIdent + (SynLongIdent ([Even], [], [None]), None, + None, Pats [], None, (4,9--4,13)), + Named + (SynIdent (x, None), false, None, + (4,17--4,18)), (4,9--4,18)), + LongIdent (SynLongIdent ([int], [], [None])), + (4,9--4,23)), (4,8--4,24)), None, + Const (Int32 1, (4,27--4,28)), (4,8--4,24), + Yes (4,4--4,28), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,25--4,26) })] + Body = + LetOrUse + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo + ([], SynArgInfo ([], false, None)), None), + Paren + (Typed + (As + (LongIdent + (SynLongIdent ([Even], [], [None]), + None, None, Pats [], None, + (5,10--5,14)), + Named + (SynIdent (x, None), false, None, + (5,18--5,19)), (5,10--5,19)), + LongIdent + (SynLongIdent ([int], [], [None])), + (5,10--5,24)), (5,9--5,25)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 2, (5,43--5,44)), + (5,36--5,44), + { YieldOrReturnKeyword = (5,36--5,42) }), + (5,34--5,46)), (5,28--5,46)), + (5,4--5,46), Yes (5,4--5,46), + { LeadingKeyword = LetBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,26--5,27) })] + Body = + YieldOrReturn + ((false, true), Ident x, (6,4--6,12), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (5,4--6,12) + Trivia = { InKeyword = None } } + Range = (4,4--6,12) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 20.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 20.fs.bsl index 9177dc08cb8..fbf23cdeee7 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 20.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 20.fs.bsl @@ -9,77 +9,80 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - As - (LongIdent - (SynLongIdent ([Even], [], [None]), None, None, - Pats [], None, (4,8--4,12)), - Named - (SynIdent (x, None), false, None, (4,16--4,17)), - (4,8--4,17)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (4,19--4,22), [], - { ColonRange = Some (4,17--4,18) })), - Typed - (Const (Int32 1, (4,25--4,26)), - LongIdent (SynLongIdent ([int], [], [None])), - (4,25--4,26)), (4,8--4,17), Yes (4,4--4,26), - { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = Some (4,23--4,24) })], - LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - As - (LongIdent - (SynLongIdent ([Even], [], [None]), None, - None, Pats [], None, (5,9--5,13)), - Named - (SynIdent (x, None), false, None, - (5,17--5,18)), (5,9--5,18)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (5,20--5,23), [], - { ColonRange = Some (5,18--5,19) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), - Const (Int32 2, (5,41--5,42)), - (5,34--5,42), - { YieldOrReturnKeyword = (5,34--5,40) }), - (5,32--5,44)), (5,26--5,44)), (5,4--5,44), - Yes (5,4--5,44), - { LeadingKeyword = Let (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,24--5,25) })], - YieldOrReturn - ((false, true), Ident x, (6,4--6,12), - { YieldOrReturnKeyword = (6,4--6,10) }), - (5,4--6,12), { LetOrUseKeyword = (5,4--5,8) - InKeyword = None - EqualsRange = Some (5,24--5,25) }), - (4,4--6,12), { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = Some (4,23--4,24) }), - (3,6--7,1)), (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + As + (LongIdent + (SynLongIdent ([Even], [], [None]), None, None, + Pats [], None, (4,8--4,12)), + Named + (SynIdent (x, None), false, None, (4,16--4,17)), + (4,8--4,17)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (4,19--4,22), [], + { ColonRange = Some (4,17--4,18) })), + Typed + (Const (Int32 1, (4,25--4,26)), + LongIdent (SynLongIdent ([int], [], [None])), + (4,25--4,26)), (4,8--4,17), Yes (4,4--4,26), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,23--4,24) })] + Body = + LetOrUse + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo + ([], SynArgInfo ([], false, None)), None), + As + (LongIdent + (SynLongIdent ([Even], [], [None]), None, + None, Pats [], None, (5,9--5,13)), + Named + (SynIdent (x, None), false, None, + (5,17--5,18)), (5,9--5,18)), + Some + (SynBindingReturnInfo + (LongIdent + (SynLongIdent ([int], [], [None])), + (5,20--5,23), [], + { ColonRange = Some (5,18--5,19) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 2, (5,41--5,42)), + (5,34--5,42), + { YieldOrReturnKeyword = (5,34--5,40) }), + (5,32--5,44)), (5,26--5,44)), + (5,4--5,44), Yes (5,4--5,44), + { LeadingKeyword = LetBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,24--5,25) })] + Body = + YieldOrReturn + ((false, true), Ident x, (6,4--6,12), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (5,4--6,12) + Trivia = { InKeyword = None } } + Range = (4,4--6,12) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang 21.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang 21.fs.bsl index bfbbb3ea841..10aaea3548d 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang 21.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang 21.fs.bsl @@ -9,39 +9,42 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Named - (SynIdent (x, None), false, None, (4,9--4,10)), - LongIdent (SynLongIdent ([string], [], [None])), - (4,9--4,18)), (4,8--4,19)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (4,21--4,24), [], - { ColonRange = Some (4,19--4,20) })), - Typed - (Const (Int32 2, (4,27--4,28)), - LongIdent (SynLongIdent ([int], [], [None])), - (4,27--4,28)), (4,8--4,19), Yes (4,4--4,28), - { LeadingKeyword = Let (4,4--4,7) - InlineKeyword = None - EqualsRange = Some (4,25--4,26) })], - YieldOrReturn - ((false, true), Ident x, (5,4--5,12), - { YieldOrReturnKeyword = (5,4--5,10) }), (4,4--5,12), - { LetOrUseKeyword = (4,4--4,7) - InKeyword = None - EqualsRange = Some (4,25--4,26) }), (3,6--6,1)), - (3,0--6,1)), (3,0--6,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Named + (SynIdent (x, None), false, None, + (4,9--4,10)), + LongIdent + (SynLongIdent ([string], [], [None])), + (4,9--4,18)), (4,8--4,19)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (4,21--4,24), [], + { ColonRange = Some (4,19--4,20) })), + Typed + (Const (Int32 2, (4,27--4,28)), + LongIdent (SynLongIdent ([int], [], [None])), + (4,27--4,28)), (4,8--4,19), Yes (4,4--4,28), + { LeadingKeyword = Let (4,4--4,7) + InlineKeyword = None + EqualsRange = Some (4,25--4,26) })] + Body = + YieldOrReturn + ((false, true), Ident x, (5,4--5,12), + { YieldOrReturnKeyword = (5,4--5,10) }) + Range = (4,4--5,12) + Trivia = { InKeyword = None } }, (3,6--6,1)), (3,0--6,1)), + (3,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 01.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 01.fs.bsl index 17749b3e300..823c0eb3e83 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 01.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 01.fs.bsl @@ -10,64 +10,69 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (res, None), false, None, (4,9--4,12)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (4,14--4,17), [], - { ColonRange = Some (4,12--4,13) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (4,35--4,36)), - (4,28--4,36), - { YieldOrReturnKeyword = (4,28--4,34) }), - (4,26--4,38)), (4,20--4,38)), (4,4--4,38), - Yes (4,4--4,38), { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,18--4,19) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (res2, None), false, None, (5,9--5,13)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (5,15--5,18), [], - { ColonRange = Some (5,13--5,14) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 2, (5,36--5,37)), - (5,29--5,37), - { YieldOrReturnKeyword = (5,29--5,35) }), - (5,27--5,39)), (5,21--5,39)), (5,4--5,39), - Yes (5,4--5,39), { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,19--5,20) })], - YieldOrReturn - ((false, true), Ident res, (6,4--6,14), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,14), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,18--4,19) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (res, None), false, None, (4,9--4,12)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (4,14--4,17), [], + { ColonRange = Some (4,12--4,13) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 1, (4,35--4,36)), + (4,28--4,36), + { YieldOrReturnKeyword = (4,28--4,34) }), + (4,26--4,38)), (4,20--4,38)), (4,4--4,38), + Yes (4,4--4,38), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,18--4,19) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (res2, None), false, None, (5,9--5,13)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (5,15--5,18), [], + { ColonRange = Some (5,13--5,14) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 2, (5,36--5,37)), + (5,29--5,37), + { YieldOrReturnKeyword = (5,29--5,35) }), + (5,27--5,39)), (5,21--5,39)), (5,4--5,39), + Yes (5,4--5,39), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,19--5,20) })] + Body = + YieldOrReturn + ((false, true), Ident res, (6,4--6,14), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,14) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 02.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 02.fs.bsl index c37abd28a89..9513c074c63 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 02.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 02.fs.bsl @@ -10,64 +10,69 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Named - (SynIdent (res, None), false, None, - (4,10--4,13)), - LongIdent (SynLongIdent ([int], [], [None])), - (4,10--4,18)), (4,9--4,19)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (4,37--4,38)), - (4,30--4,38), - { YieldOrReturnKeyword = (4,30--4,36) }), - (4,28--4,40)), (4,22--4,40)), (4,4--4,40), - Yes (4,4--4,40), { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,20--4,21) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Named - (SynIdent (res2, None), false, None, - (5,10--5,14)), - LongIdent (SynLongIdent ([int], [], [None])), - (5,10--5,19)), (5,9--5,20)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 2, (5,38--5,39)), - (5,31--5,39), - { YieldOrReturnKeyword = (5,31--5,37) }), - (5,29--5,41)), (5,23--5,41)), (5,4--5,41), - Yes (5,4--5,41), { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,21--5,22) })], - YieldOrReturn - ((false, true), Ident res, (6,4--6,14), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,14), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,20--4,21) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Named + (SynIdent (res, None), false, None, + (4,10--4,13)), + LongIdent (SynLongIdent ([int], [], [None])), + (4,10--4,18)), (4,9--4,19)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 1, (4,37--4,38)), + (4,30--4,38), + { YieldOrReturnKeyword = (4,30--4,36) }), + (4,28--4,40)), (4,22--4,40)), (4,4--4,40), + Yes (4,4--4,40), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,20--4,21) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Named + (SynIdent (res2, None), false, None, + (5,10--5,14)), + LongIdent (SynLongIdent ([int], [], [None])), + (5,10--5,19)), (5,9--5,20)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 2, (5,38--5,39)), + (5,31--5,39), + { YieldOrReturnKeyword = (5,31--5,37) }), + (5,29--5,41)), (5,23--5,41)), (5,4--5,41), + Yes (5,4--5,41), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,21--5,22) })] + Body = + YieldOrReturn + ((false, true), Ident res, (6,4--6,14), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,14) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 03.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 03.fs.bsl index a3e3c97d298..a6200d4ef85 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 03.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 03.fs.bsl @@ -10,69 +10,71 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Record - ([NamePatPairField - (SynLongIdent ([Name], [], [None]), - Some (4,17--4,18), (4,12--4,23), - Named - (SynIdent (name, None), false, None, - (4,19--4,23)), - Some ((4,23--4,24), Some (4,24))); - NamePatPairField - (SynLongIdent ([Age], [], [None]), - Some (4,29--4,30), (4,25--4,34), - Named - (SynIdent (age, None), false, None, - (4,31--4,34)), None)], (4,10--4,36)), - LongIdent (SynLongIdent ([Person], [], [None])), - (4,10--4,44)), (4,9--4,45)), None, - App - (Atomic, false, Ident asyncPerson, - Const (Unit, (4,59--4,61)), (4,48--4,61)), - (4,4--4,61), Yes (4,4--4,61), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,46--4,47) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Record - ([NamePatPairField - (SynLongIdent ([Id], [], [None]), - Some (5,15--5,16), (5,12--5,19), - Named - (SynIdent (id, None), false, None, - (5,17--5,19)), None)], (5,10--5,21)), - LongIdent (SynLongIdent ([User], [], [None])), - (5,10--5,27)), (5,9--5,28)), None, - App - (Atomic, false, Ident asyncUser, - Const (Unit, (5,40--5,42)), (5,31--5,42)), - (5,4--5,42), Yes (5,4--5,42), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,29--5,30) })], - YieldOrReturn - ((false, true), Ident name, (6,4--6,15), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,15), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,46--4,47) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Record + ([NamePatPairField + (SynLongIdent ([Name], [], [None]), + Some (4,17--4,18), (4,12--4,23), + Named + (SynIdent (name, None), false, None, + (4,19--4,23)), + Some ((4,23--4,24), Some (4,24))); + NamePatPairField + (SynLongIdent ([Age], [], [None]), + Some (4,29--4,30), (4,25--4,34), + Named + (SynIdent (age, None), false, None, + (4,31--4,34)), None)], (4,10--4,36)), + LongIdent + (SynLongIdent ([Person], [], [None])), + (4,10--4,44)), (4,9--4,45)), None, + App + (Atomic, false, Ident asyncPerson, + Const (Unit, (4,59--4,61)), (4,48--4,61)), + (4,4--4,61), Yes (4,4--4,61), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,46--4,47) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Record + ([NamePatPairField + (SynLongIdent ([Id], [], [None]), + Some (5,15--5,16), (5,12--5,19), + Named + (SynIdent (id, None), false, None, + (5,17--5,19)), None)], (5,10--5,21)), + LongIdent (SynLongIdent ([User], [], [None])), + (5,10--5,27)), (5,9--5,28)), None, + App + (Atomic, false, Ident asyncUser, + Const (Unit, (5,40--5,42)), (5,31--5,42)), + (5,4--5,42), Yes (5,4--5,42), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,29--5,30) })] + Body = + YieldOrReturn + ((false, true), Ident name, (6,4--6,15), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,15) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 04.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 04.fs.bsl index c50f2a3c6ab..d5b8d25eecc 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 04.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 04.fs.bsl @@ -10,71 +10,73 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Record - ([NamePatPairField - (SynLongIdent ([Name], [], [None]), - Some (4,16--4,17), (4,11--4,22), - Named - (SynIdent (name, None), false, None, - (4,18--4,22)), - Some ((4,22--4,23), Some (4,23))); - NamePatPairField - (SynLongIdent ([Age], [], [None]), - Some (4,28--4,29), (4,24--4,33), - Named - (SynIdent (age, None), false, None, - (4,30--4,33)), None)], (4,9--4,35)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([Person], [], [None])), - (4,37--4,43), [], - { ColonRange = Some (4,35--4,36) })), - App - (Atomic, false, Ident asyncPerson, - Const (Unit, (4,57--4,59)), (4,46--4,59)), - (4,4--4,59), Yes (4,4--4,59), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,44--4,45) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Record - ([NamePatPairField - (SynLongIdent ([Id], [], [None]), - Some (5,14--5,15), (5,11--5,18), - Named - (SynIdent (id, None), false, None, - (5,16--5,18)), None)], (5,9--5,20)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([User], [], [None])), - (5,22--5,26), [], - { ColonRange = Some (5,20--5,21) })), - App - (Atomic, false, Ident asyncUser, - Const (Unit, (5,38--5,40)), (5,29--5,40)), - (5,4--5,40), Yes (5,4--5,40), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,27--5,28) })], - YieldOrReturn - ((false, true), Ident name, (6,4--6,15), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,15), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,44--4,45) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Record + ([NamePatPairField + (SynLongIdent ([Name], [], [None]), + Some (4,16--4,17), (4,11--4,22), + Named + (SynIdent (name, None), false, None, + (4,18--4,22)), + Some ((4,22--4,23), Some (4,23))); + NamePatPairField + (SynLongIdent ([Age], [], [None]), + Some (4,28--4,29), (4,24--4,33), + Named + (SynIdent (age, None), false, None, + (4,30--4,33)), None)], (4,9--4,35)), + Some + (SynBindingReturnInfo + (LongIdent + (SynLongIdent ([Person], [], [None])), + (4,37--4,43), [], + { ColonRange = Some (4,35--4,36) })), + App + (Atomic, false, Ident asyncPerson, + Const (Unit, (4,57--4,59)), (4,46--4,59)), + (4,4--4,59), Yes (4,4--4,59), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,44--4,45) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Record + ([NamePatPairField + (SynLongIdent ([Id], [], [None]), + Some (5,14--5,15), (5,11--5,18), + Named + (SynIdent (id, None), false, None, + (5,16--5,18)), None)], (5,9--5,20)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([User], [], [None])), + (5,22--5,26), [], + { ColonRange = Some (5,20--5,21) })), + App + (Atomic, false, Ident asyncUser, + Const (Unit, (5,38--5,40)), (5,29--5,40)), + (5,4--5,40), Yes (5,4--5,40), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,27--5,28) })] + Body = + YieldOrReturn + ((false, true), Ident name, (6,4--6,15), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,15) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 05.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 05.fs.bsl index 4a48b37dd02..8061024f183 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 05.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 05.fs.bsl @@ -10,70 +10,72 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Record - ([NamePatPairField - (SynLongIdent ([Name], [], [None]), - Some (4,17--4,18), (4,12--4,23), - Named - (SynIdent (name, None), false, None, - (4,19--4,23)), - Some ((4,23--4,24), Some (4,24))); - NamePatPairField - (SynLongIdent ([Age], [], [None]), - Some (4,29--4,30), (4,25--4,34), - Named - (SynIdent (age, None), false, None, - (4,31--4,34)), None)], (4,10--4,36)), - LongIdent (SynLongIdent ([Person], [], [None])), - (4,10--4,44)), (4,9--4,45)), None, - App - (Atomic, false, Ident asyncPerson, - Const (Unit, (4,59--4,61)), (4,48--4,61)), - (4,4--4,61), Yes (4,4--4,61), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,46--4,47) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Record - ([NamePatPairField - (SynLongIdent ([Id], [], [None]), - Some (5,14--5,15), (5,11--5,18), - Named - (SynIdent (id, None), false, None, - (5,16--5,18)), None)], (5,9--5,20)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([User], [], [None])), - (5,22--5,26), [], - { ColonRange = Some (5,20--5,21) })), - App - (Atomic, false, Ident asyncUser, - Const (Unit, (5,38--5,40)), (5,29--5,40)), - (5,4--5,40), Yes (5,4--5,40), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,27--5,28) })], - YieldOrReturn - ((false, true), Ident name, (6,4--6,15), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,15), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,46--4,47) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Record + ([NamePatPairField + (SynLongIdent ([Name], [], [None]), + Some (4,17--4,18), (4,12--4,23), + Named + (SynIdent (name, None), false, None, + (4,19--4,23)), + Some ((4,23--4,24), Some (4,24))); + NamePatPairField + (SynLongIdent ([Age], [], [None]), + Some (4,29--4,30), (4,25--4,34), + Named + (SynIdent (age, None), false, None, + (4,31--4,34)), None)], (4,10--4,36)), + LongIdent + (SynLongIdent ([Person], [], [None])), + (4,10--4,44)), (4,9--4,45)), None, + App + (Atomic, false, Ident asyncPerson, + Const (Unit, (4,59--4,61)), (4,48--4,61)), + (4,4--4,61), Yes (4,4--4,61), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,46--4,47) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Record + ([NamePatPairField + (SynLongIdent ([Id], [], [None]), + Some (5,14--5,15), (5,11--5,18), + Named + (SynIdent (id, None), false, None, + (5,16--5,18)), None)], (5,9--5,20)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([User], [], [None])), + (5,22--5,26), [], + { ColonRange = Some (5,20--5,21) })), + App + (Atomic, false, Ident asyncUser, + Const (Unit, (5,38--5,40)), (5,29--5,40)), + (5,4--5,40), Yes (5,4--5,40), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,27--5,28) })] + Body = + YieldOrReturn + ((false, true), Ident name, (6,4--6,15), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,15) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 06.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 06.fs.bsl index b22648e5d9f..90ec6bafb79 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 06.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 06.fs.bsl @@ -10,67 +10,70 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value, None), false, None, - (4,16--4,21))], None, (4,10--4,21)), - (4,9--4,22)), None, - App - (Atomic, false, Ident asyncOption, - Const (Unit, (4,36--4,38)), (4,25--4,38)), - (4,4--4,38), Yes (4,4--4,38), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,23--4,24) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value2, None), false, None, - (5,16--5,22))], None, (5,10--5,22)), - (5,9--5,23)), None, - App - (Atomic, false, Ident asyncOption, - Const (Unit, (5,37--5,39)), (5,26--5,39)), - (5,4--5,39), Yes (5,4--5,39), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,24--5,25) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (LongIdent + (SynLongIdent ([Union], [], [None]), None, + None, + Pats + [Named + (SynIdent (value, None), false, None, + (4,16--4,21))], None, (4,10--4,21)), + (4,9--4,22)), None, App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,17--6,18)), Ident value, (6,11--6,18)), - Ident value2, (6,11--6,25)), (6,4--6,25), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,25), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,23--4,24) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + (Atomic, false, Ident asyncOption, + Const (Unit, (4,36--4,38)), (4,25--4,38)), + (4,4--4,38), Yes (4,4--4,38), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,23--4,24) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (LongIdent + (SynLongIdent ([Union], [], [None]), None, + None, + Pats + [Named + (SynIdent (value2, None), false, None, + (5,16--5,22))], None, (5,10--5,22)), + (5,9--5,23)), None, + App + (Atomic, false, Ident asyncOption, + Const (Unit, (5,37--5,39)), (5,26--5,39)), + (5,4--5,39), Yes (5,4--5,39), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,24--5,25) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (6,17--6,18)), Ident value, (6,11--6,18)), + Ident value2, (6,11--6,25)), (6,4--6,25), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,25) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 07.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 07.fs.bsl index 433e0905db4..75d2b0f68c3 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 07.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 07.fs.bsl @@ -10,63 +10,64 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value, None), false, None, - (4,15--4,20))], None, (4,9--4,20)), None, - App - (Atomic, false, Ident asyncOption, - Const (Unit, (4,34--4,36)), (4,23--4,36)), - (4,4--4,36), Yes (4,4--4,36), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,21--4,22) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value2, None), false, None, - (5,15--5,21))], None, (5,9--5,21)), None, - App - (Atomic, false, Ident asyncOption, - Const (Unit, (5,35--5,37)), (5,24--5,37)), - (5,4--5,37), Yes (5,4--5,37), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,22--5,23) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + LongIdent + (SynLongIdent ([Union], [], [None]), None, None, + Pats + [Named + (SynIdent (value, None), false, None, + (4,15--4,20))], None, (4,9--4,20)), None, App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,17--6,18)), Ident value, (6,11--6,18)), - Ident value2, (6,11--6,25)), (6,4--6,25), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,25), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,21--4,22) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + (Atomic, false, Ident asyncOption, + Const (Unit, (4,34--4,36)), (4,23--4,36)), + (4,4--4,36), Yes (4,4--4,36), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,21--4,22) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + LongIdent + (SynLongIdent ([Union], [], [None]), None, None, + Pats + [Named + (SynIdent (value2, None), false, None, + (5,15--5,21))], None, (5,9--5,21)), None, + App + (Atomic, false, Ident asyncOption, + Const (Unit, (5,35--5,37)), (5,24--5,37)), + (5,4--5,37), Yes (5,4--5,37), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,22--5,23) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (6,17--6,18)), Ident value, (6,11--6,18)), + Ident value2, (6,11--6,25)), (6,4--6,25), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,25) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 08.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 08.fs.bsl index 6086dd750c9..fb352a0fb1e 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 08.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 08.fs.bsl @@ -10,87 +10,90 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value, None), false, None, - (4,16--4,21))], None, (4,10--4,21)), - (4,9--4,22)), - Some - (SynBindingReturnInfo - (App - (LongIdent - (SynLongIdent ([option], [], [None])), - None, - [LongIdent - (SynLongIdent ([int], [], [None]))], [], - None, true, (4,24--4,34)), (4,24--4,34), [], - { ColonRange = Some (4,22--4,23) })), - App - (Atomic, false, Ident asyncOption, - Const (Unit, (4,48--4,50)), (4,37--4,50)), - (4,4--4,50), Yes (4,4--4,50), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,35--4,36) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value2, None), false, None, - (5,16--5,22))], None, (5,10--5,22)), - (5,9--5,23)), - Some - (SynBindingReturnInfo - (App - (LongIdent - (SynLongIdent ([option], [], [None])), - None, - [LongIdent - (SynLongIdent ([int], [], [None]))], [], - None, true, (5,25--5,35)), (5,25--5,35), [], - { ColonRange = Some (5,23--5,24) })), - App - (Atomic, false, Ident asyncOption, - Const (Unit, (5,49--5,51)), (5,38--5,51)), - (5,4--5,51), Yes (5,4--5,51), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,36--5,37) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (LongIdent + (SynLongIdent ([Union], [], [None]), None, + None, + Pats + [Named + (SynIdent (value, None), false, None, + (4,16--4,21))], None, (4,10--4,21)), + (4,9--4,22)), + Some + (SynBindingReturnInfo + (App + (LongIdent + (SynLongIdent ([option], [], [None])), + None, + [LongIdent + (SynLongIdent ([int], [], [None]))], [], + None, true, (4,24--4,34)), (4,24--4,34), + [], { ColonRange = Some (4,22--4,23) })), App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,17--6,18)), Ident value, (6,11--6,18)), - Ident value2, (6,11--6,25)), (6,4--6,25), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,25), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,35--4,36) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + (Atomic, false, Ident asyncOption, + Const (Unit, (4,48--4,50)), (4,37--4,50)), + (4,4--4,50), Yes (4,4--4,50), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,35--4,36) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (LongIdent + (SynLongIdent ([Union], [], [None]), None, + None, + Pats + [Named + (SynIdent (value2, None), false, None, + (5,16--5,22))], None, (5,10--5,22)), + (5,9--5,23)), + Some + (SynBindingReturnInfo + (App + (LongIdent + (SynLongIdent ([option], [], [None])), + None, + [LongIdent + (SynLongIdent ([int], [], [None]))], [], + None, true, (5,25--5,35)), (5,25--5,35), + [], { ColonRange = Some (5,23--5,24) })), + App + (Atomic, false, Ident asyncOption, + Const (Unit, (5,49--5,51)), (5,38--5,51)), + (5,4--5,51), Yes (5,4--5,51), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,36--5,37) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (6,17--6,18)), Ident value, (6,11--6,18)), + Ident value2, (6,11--6,25)), (6,4--6,25), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,25) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 09.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 09.fs.bsl index 688a32c991e..f41a4e2c3fd 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 09.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 09.fs.bsl @@ -10,83 +10,84 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value, None), false, None, - (4,15--4,20))], None, (4,9--4,20)), - Some - (SynBindingReturnInfo - (App - (LongIdent - (SynLongIdent ([option], [], [None])), - None, - [LongIdent - (SynLongIdent ([int], [], [None]))], [], - None, true, (4,22--4,32)), (4,22--4,32), [], - { ColonRange = Some (4,20--4,21) })), - App - (Atomic, false, Ident asyncOption, - Const (Unit, (4,46--4,48)), (4,35--4,48)), - (4,4--4,48), Yes (4,4--4,48), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,33--4,34) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - LongIdent - (SynLongIdent ([Union], [], [None]), None, None, - Pats - [Named - (SynIdent (value2, None), false, None, - (5,15--5,21))], None, (5,9--5,21)), - Some - (SynBindingReturnInfo - (App - (LongIdent - (SynLongIdent ([option], [], [None])), - None, - [LongIdent - (SynLongIdent ([int], [], [None]))], [], - None, true, (5,23--5,33)), (5,23--5,33), [], - { ColonRange = Some (5,21--5,22) })), - App - (Atomic, false, Ident asyncOption, - Const (Unit, (5,47--5,49)), (5,36--5,49)), - (5,4--5,49), Yes (5,4--5,49), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,34--5,35) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + LongIdent + (SynLongIdent ([Union], [], [None]), None, None, + Pats + [Named + (SynIdent (value, None), false, None, + (4,15--4,20))], None, (4,9--4,20)), + Some + (SynBindingReturnInfo + (App + (LongIdent + (SynLongIdent ([option], [], [None])), + None, + [LongIdent + (SynLongIdent ([int], [], [None]))], [], + None, true, (4,22--4,32)), (4,22--4,32), + [], { ColonRange = Some (4,20--4,21) })), App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,17--6,18)), Ident value, (6,11--6,18)), - Ident value2, (6,11--6,25)), (6,4--6,25), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,25), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,33--4,34) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + (Atomic, false, Ident asyncOption, + Const (Unit, (4,46--4,48)), (4,35--4,48)), + (4,4--4,48), Yes (4,4--4,48), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,33--4,34) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + LongIdent + (SynLongIdent ([Union], [], [None]), None, None, + Pats + [Named + (SynIdent (value2, None), false, None, + (5,15--5,21))], None, (5,9--5,21)), + Some + (SynBindingReturnInfo + (App + (LongIdent + (SynLongIdent ([option], [], [None])), + None, + [LongIdent + (SynLongIdent ([int], [], [None]))], [], + None, true, (5,23--5,33)), (5,23--5,33), + [], { ColonRange = Some (5,21--5,22) })), + App + (Atomic, false, Ident asyncOption, + Const (Unit, (5,47--5,49)), (5,36--5,49)), + (5,4--5,49), Yes (5,4--5,49), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,34--5,35) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (6,17--6,18)), Ident value, (6,11--6,18)), + Ident value2, (6,11--6,25)), (6,4--6,25), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,25) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 10.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 10.fs.bsl index 27e96d1da50..495ae788362 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 10.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 10.fs.bsl @@ -10,77 +10,79 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (As - (Named - (SynIdent (x, None), false, None, - (4,10--4,11)), - Named - (SynIdent (y, None), false, None, - (4,15--4,16)), (4,10--4,16)), (4,9--4,17)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (4,19--4,22), [], - { ColonRange = Some (4,17--4,18) })), - App - (Atomic, false, Ident asyncInt, - Const (Unit, (4,33--4,35)), (4,25--4,35)), - (4,4--4,35), Yes (4,4--4,35), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,23--4,24) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (As - (Named - (SynIdent (a, None), false, None, - (5,10--5,11)), - Named - (SynIdent (b, None), false, None, - (5,15--5,16)), (5,10--5,16)), (5,9--5,17)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([string], [], [None])), - (5,19--5,25), [], - { ColonRange = Some (5,17--5,18) })), - App - (Atomic, false, Ident asyncString, - Const (Unit, (5,39--5,41)), (5,28--5,41)), - (5,4--5,41), Yes (5,4--5,41), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,26--5,27) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (As + (Named + (SynIdent (x, None), false, None, + (4,10--4,11)), + Named + (SynIdent (y, None), false, None, + (4,15--4,16)), (4,10--4,16)), (4,9--4,17)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (4,19--4,22), [], + { ColonRange = Some (4,17--4,18) })), App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,13--6,14)), Ident x, (6,11--6,14)), - Ident b, (6,11--6,16)), (6,4--6,16), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,16), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,23--4,24) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + (Atomic, false, Ident asyncInt, + Const (Unit, (4,33--4,35)), (4,25--4,35)), + (4,4--4,35), Yes (4,4--4,35), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,23--4,24) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (As + (Named + (SynIdent (a, None), false, None, + (5,10--5,11)), + Named + (SynIdent (b, None), false, None, + (5,15--5,16)), (5,10--5,16)), (5,9--5,17)), + Some + (SynBindingReturnInfo + (LongIdent + (SynLongIdent ([string], [], [None])), + (5,19--5,25), [], + { ColonRange = Some (5,17--5,18) })), + App + (Atomic, false, Ident asyncString, + Const (Unit, (5,39--5,41)), (5,28--5,41)), + (5,4--5,41), Yes (5,4--5,41), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,26--5,27) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (6,13--6,14)), Ident x, (6,11--6,14)), + Ident b, (6,11--6,16)), (6,4--6,16), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,16) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 11.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 11.fs.bsl index f3d45337e72..c3dde5628f3 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 11.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 11.fs.bsl @@ -10,73 +10,75 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - As - (Named - (SynIdent (x, None), false, None, (4,9--4,10)), - Named - (SynIdent (y, None), false, None, (4,14--4,15)), - (4,9--4,15)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (4,17--4,20), [], - { ColonRange = Some (4,15--4,16) })), - App - (Atomic, false, Ident asyncInt, - Const (Unit, (4,31--4,33)), (4,23--4,33)), - (4,4--4,33), Yes (4,4--4,33), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,21--4,22) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - As - (Named - (SynIdent (a, None), false, None, (5,9--5,10)), - Named - (SynIdent (b, None), false, None, (5,14--5,15)), - (5,9--5,15)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([string], [], [None])), - (5,17--5,23), [], - { ColonRange = Some (5,15--5,16) })), - App - (Atomic, false, Ident asyncString, - Const (Unit, (5,37--5,39)), (5,26--5,39)), - (5,4--5,39), Yes (5,4--5,39), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,24--5,25) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + As + (Named + (SynIdent (x, None), false, None, (4,9--4,10)), + Named + (SynIdent (y, None), false, None, (4,14--4,15)), + (4,9--4,15)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (4,17--4,20), [], + { ColonRange = Some (4,15--4,16) })), App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,13--6,14)), Ident x, (6,11--6,14)), - Ident b, (6,11--6,16)), (6,4--6,16), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,16), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,21--4,22) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + (Atomic, false, Ident asyncInt, + Const (Unit, (4,31--4,33)), (4,23--4,33)), + (4,4--4,33), Yes (4,4--4,33), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,21--4,22) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + As + (Named + (SynIdent (a, None), false, None, (5,9--5,10)), + Named + (SynIdent (b, None), false, None, (5,14--5,15)), + (5,9--5,15)), + Some + (SynBindingReturnInfo + (LongIdent + (SynLongIdent ([string], [], [None])), + (5,17--5,23), [], + { ColonRange = Some (5,15--5,16) })), + App + (Atomic, false, Ident asyncString, + Const (Unit, (5,37--5,39)), (5,26--5,39)), + (5,4--5,39), Yes (5,4--5,39), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,24--5,25) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (6,13--6,14)), Ident x, (6,11--6,14)), + Ident b, (6,11--6,16)), (6,4--6,16), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,16) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 12.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 12.fs.bsl index f2e9ded50b8..b4e302ba1fa 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 12.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 12.fs.bsl @@ -10,63 +10,64 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - As - (Named - (SynIdent (x, None), false, None, (4,9--4,10)), - Named - (SynIdent (y, None), false, None, (4,14--4,15)), - (4,9--4,15)), None, - App - (Atomic, false, Ident asyncInt, - Const (Unit, (4,26--4,28)), (4,18--4,28)), - (4,4--4,28), Yes (4,4--4,28), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,16--4,17) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - As - (Named - (SynIdent (a, None), false, None, (5,9--5,10)), - Named - (SynIdent (b, None), false, None, (5,14--5,15)), - (5,9--5,15)), None, - App - (Atomic, false, Ident asyncString, - Const (Unit, (5,29--5,31)), (5,18--5,31)), - (5,4--5,31), Yes (5,4--5,31), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,16--5,17) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + As + (Named + (SynIdent (x, None), false, None, (4,9--4,10)), + Named + (SynIdent (y, None), false, None, (4,14--4,15)), + (4,9--4,15)), None, App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,13--6,14)), Ident x, (6,11--6,14)), - Ident b, (6,11--6,16)), (6,4--6,16), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,16), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,16--4,17) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + (Atomic, false, Ident asyncInt, + Const (Unit, (4,26--4,28)), (4,18--4,28)), + (4,4--4,28), Yes (4,4--4,28), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,16--4,17) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + As + (Named + (SynIdent (a, None), false, None, (5,9--5,10)), + Named + (SynIdent (b, None), false, None, (5,14--5,15)), + (5,9--5,15)), None, + App + (Atomic, false, Ident asyncString, + Const (Unit, (5,29--5,31)), (5,18--5,31)), + (5,4--5,31), Yes (5,4--5,31), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,16--5,17) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (6,13--6,14)), Ident x, (6,11--6,14)), + Ident b, (6,11--6,16)), (6,4--6,16), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,16) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 13.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 13.fs.bsl index 2fcf04dc901..d7716431a9d 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 13.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 13.fs.bsl @@ -10,76 +10,78 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (ArrayOrList - (true, - [Named - (SynIdent (first, None), false, None, - (4,13--4,18)); - Named - (SynIdent (second, None), false, None, - (4,20--4,26))], (4,10--4,29)), - App - (LongIdent - (SynLongIdent ([array], [], [None])), None, - [LongIdent - (SynLongIdent ([int], [], [None]))], [], - None, true, (4,31--4,40)), (4,10--4,40)), - (4,9--4,41)), None, - App - (Atomic, false, Ident asyncArray, - Const (Unit, (4,54--4,56)), (4,44--4,56)), - (4,4--4,56), Yes (4,4--4,56), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,42--4,43) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (ListCons - (Named - (SynIdent (head, None), false, None, - (5,10--5,14)), - Typed - (Named - (SynIdent (tail, None), false, None, - (5,18--5,22)), - App - (LongIdent - (SynLongIdent ([list], [], [None])), - None, - [LongIdent - (SynLongIdent ([string], [], [None]))], - [], None, true, (5,24--5,35)), - (5,18--5,35)), (5,10--5,35), - { ColonColonRange = (5,15--5,17) }), - (5,9--5,36)), None, - App - (Atomic, false, Ident asyncList, - Const (Unit, (5,48--5,50)), (5,39--5,50)), - (5,4--5,50), Yes (5,4--5,50), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,37--5,38) })], - YieldOrReturn - ((false, true), Ident first, (6,4--6,16), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,16), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,42--4,43) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (ArrayOrList + (true, + [Named + (SynIdent (first, None), false, None, + (4,13--4,18)); + Named + (SynIdent (second, None), false, None, + (4,20--4,26))], (4,10--4,29)), + App + (LongIdent + (SynLongIdent ([array], [], [None])), + None, + [LongIdent + (SynLongIdent ([int], [], [None]))], [], + None, true, (4,31--4,40)), (4,10--4,40)), + (4,9--4,41)), None, + App + (Atomic, false, Ident asyncArray, + Const (Unit, (4,54--4,56)), (4,44--4,56)), + (4,4--4,56), Yes (4,4--4,56), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,42--4,43) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (ListCons + (Named + (SynIdent (head, None), false, None, + (5,10--5,14)), + Typed + (Named + (SynIdent (tail, None), false, None, + (5,18--5,22)), + App + (LongIdent + (SynLongIdent ([list], [], [None])), + None, + [LongIdent + (SynLongIdent ([string], [], [None]))], + [], None, true, (5,24--5,35)), + (5,18--5,35)), (5,10--5,35), + { ColonColonRange = (5,15--5,17) }), + (5,9--5,36)), None, + App + (Atomic, false, Ident asyncList, + Const (Unit, (5,48--5,50)), (5,39--5,50)), + (5,4--5,50), Yes (5,4--5,50), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,37--5,38) })] + Body = + YieldOrReturn + ((false, true), Ident first, (6,4--6,16), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,16) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 14.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 14.fs.bsl index 361bf9c9074..c7eb2d36e34 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 14.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 14.fs.bsl @@ -10,73 +10,78 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - ArrayOrList - (true, - [Named - (SynIdent (first, None), false, None, - (4,12--4,17)); - Named - (SynIdent (second, None), false, None, - (4,19--4,25))], (4,9--4,28)), - Some - (SynBindingReturnInfo - (App - (LongIdent - (SynLongIdent ([array], [], [None])), None, - [LongIdent - (SynLongIdent ([int], [], [None]))], [], - None, true, (4,30--4,39)), (4,30--4,39), [], - { ColonRange = Some (4,28--4,29) })), - App - (Atomic, false, Ident asyncArray, - Const (Unit, (4,52--4,54)), (4,42--4,54)), - (4,4--4,54), Yes (4,4--4,54), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,40--4,41) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - ListCons - (Named - (SynIdent (head, None), false, None, (5,9--5,13)), - Named - (SynIdent (tail, None), false, None, - (5,17--5,21)), (5,9--5,21), - { ColonColonRange = (5,14--5,16) }), - Some - (SynBindingReturnInfo - (App - (LongIdent - (SynLongIdent ([list], [], [None])), None, - [LongIdent - (SynLongIdent ([string], [], [None]))], - [], None, true, (5,23--5,34)), (5,23--5,34), - [], { ColonRange = Some (5,21--5,22) })), - App - (Atomic, false, Ident asyncList, - Const (Unit, (5,46--5,48)), (5,37--5,48)), - (5,4--5,48), Yes (5,4--5,48), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,35--5,36) })], - YieldOrReturn - ((false, true), Ident first, (6,4--6,16), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,16), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,40--4,41) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + ArrayOrList + (true, + [Named + (SynIdent (first, None), false, None, + (4,12--4,17)); + Named + (SynIdent (second, None), false, None, + (4,19--4,25))], (4,9--4,28)), + Some + (SynBindingReturnInfo + (App + (LongIdent + (SynLongIdent ([array], [], [None])), + None, + [LongIdent + (SynLongIdent ([int], [], [None]))], [], + None, true, (4,30--4,39)), (4,30--4,39), + [], { ColonRange = Some (4,28--4,29) })), + App + (Atomic, false, Ident asyncArray, + Const (Unit, (4,52--4,54)), (4,42--4,54)), + (4,4--4,54), Yes (4,4--4,54), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,40--4,41) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + ListCons + (Named + (SynIdent (head, None), false, None, + (5,9--5,13)), + Named + (SynIdent (tail, None), false, None, + (5,17--5,21)), (5,9--5,21), + { ColonColonRange = (5,14--5,16) }), + Some + (SynBindingReturnInfo + (App + (LongIdent + (SynLongIdent ([list], [], [None])), + None, + [LongIdent + (SynLongIdent ([string], [], [None]))], + [], None, true, (5,23--5,34)), + (5,23--5,34), [], + { ColonRange = Some (5,21--5,22) })), + App + (Atomic, false, Ident asyncList, + Const (Unit, (5,46--5,48)), (5,37--5,48)), + (5,4--5,48), Yes (5,4--5,48), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,35--5,36) })] + Body = + YieldOrReturn + ((false, true), Ident first, (6,4--6,16), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,16) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 15.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 15.fs.bsl index e3ab36d1f96..374bc3be770 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 15.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 15.fs.bsl @@ -12,47 +12,49 @@ ImplFile Tuple (false, [LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Tuple - (false, - [Named - (SynIdent (x, None), false, None, - (4,10--4,11)); - Named - (SynIdent (y, None), false, None, - (4,13--4,14))], [(4,11--4,12)], - (4,10--4,14)), (4,9--4,15)), - Some - (SynBindingReturnInfo - (Tuple - (false, - [Type - (LongIdent - (SynLongIdent ([int], [], [None]))); - Star (4,21--4,22); - Type - (LongIdent - (SynLongIdent ([int], [], [None])))], - (4,17--4,26)), (4,17--4,26), [], - { ColonRange = Some (4,15--4,16) })), - App - (Atomic, false, Ident asyncInt, - Const (Unit, (4,37--4,39)), (4,29--4,39)), - (4,4--4,39), Yes (4,4--4,39), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,27--4,28) })], - ImplicitZero (4,39--4,39), (4,4--5,16), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,27--4,28) }); Ident y], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo + ([], SynArgInfo ([], false, None)), None), + Paren + (Tuple + (false, + [Named + (SynIdent (x, None), false, None, + (4,10--4,11)); + Named + (SynIdent (y, None), false, None, + (4,13--4,14))], [(4,11--4,12)], + (4,10--4,14)), (4,9--4,15)), + Some + (SynBindingReturnInfo + (Tuple + (false, + [Type + (LongIdent + (SynLongIdent + ([int], [], [None]))); + Star (4,21--4,22); + Type + (LongIdent + (SynLongIdent + ([int], [], [None])))], + (4,17--4,26)), (4,17--4,26), [], + { ColonRange = Some (4,15--4,16) })), + App + (Atomic, false, Ident asyncInt, + Const (Unit, (4,37--4,39)), (4,29--4,39)), + (4,4--4,39), Yes (4,4--4,39), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,27--4,28) })] + Body = ImplicitZero (4,39--4,39) + Range = (4,4--5,16) + Trivia = { InKeyword = None } }; Ident y], [(5,15--5,16)], (4,4--5,18)), (3,6--7,1)), (3,0--7,1)), (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 16.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 16.fs.bsl index 074eaa322f6..050f08f938d 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 16.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 16.fs.bsl @@ -10,81 +10,82 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Tuple - (false, - [Named - (SynIdent (x, None), false, None, - (4,10--4,11)); - Named - (SynIdent (y, None), false, None, - (4,13--4,14))], [(4,11--4,12)], - (4,10--4,14)), (4,9--4,15)), - Some - (SynBindingReturnInfo - (Tuple - (false, - [Type - (LongIdent - (SynLongIdent ([int], [], [None]))); - Star (4,21--4,22); - Type - (LongIdent - (SynLongIdent ([int], [], [None])))], - (4,17--4,26)), (4,17--4,26), [], - { ColonRange = Some (4,15--4,16) })), - App - (Atomic, false, Ident asyncInt, - Const (Unit, (4,37--4,39)), (4,29--4,39)), - (4,4--4,39), Yes (4,4--4,39), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,27--4,28) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Tuple - (false, - [Typed - (Named - (SynIdent (x, None), false, None, - (5,10--5,11)), - LongIdent - (SynLongIdent ([int], [], [None])), - (5,10--5,16)); - Typed - (Named - (SynIdent (y, None), false, None, - (5,18--5,19)), - LongIdent - (SynLongIdent ([int], [], [None])), - (5,18--5,24))], [(5,16--5,17)], - (5,10--5,24)), (5,9--5,25)), None, - App - (Atomic, false, Ident asyncInt, - Const (Unit, (5,36--5,38)), (5,28--5,38)), - (5,4--5,38), Yes (5,4--5,38), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,26--5,27) })], - YieldOrReturn - ((false, true), Const (Unit, (6,11--6,13)), (6,4--6,13), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,13), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,27--4,28) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Tuple + (false, + [Named + (SynIdent (x, None), false, None, + (4,10--4,11)); + Named + (SynIdent (y, None), false, None, + (4,13--4,14))], [(4,11--4,12)], + (4,10--4,14)), (4,9--4,15)), + Some + (SynBindingReturnInfo + (Tuple + (false, + [Type + (LongIdent + (SynLongIdent ([int], [], [None]))); + Star (4,21--4,22); + Type + (LongIdent + (SynLongIdent ([int], [], [None])))], + (4,17--4,26)), (4,17--4,26), [], + { ColonRange = Some (4,15--4,16) })), + App + (Atomic, false, Ident asyncInt, + Const (Unit, (4,37--4,39)), (4,29--4,39)), + (4,4--4,39), Yes (4,4--4,39), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,27--4,28) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Tuple + (false, + [Typed + (Named + (SynIdent (x, None), false, None, + (5,10--5,11)), + LongIdent + (SynLongIdent ([int], [], [None])), + (5,10--5,16)); + Typed + (Named + (SynIdent (y, None), false, None, + (5,18--5,19)), + LongIdent + (SynLongIdent ([int], [], [None])), + (5,18--5,24))], [(5,16--5,17)], + (5,10--5,24)), (5,9--5,25)), None, + App + (Atomic, false, Ident asyncInt, + Const (Unit, (5,36--5,38)), (5,28--5,38)), + (5,4--5,38), Yes (5,4--5,38), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,26--5,27) })] + Body = + YieldOrReturn + ((false, true), Const (Unit, (6,11--6,13)), + (6,4--6,13), { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,13) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 17.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 17.fs.bsl index c8267cda094..4bfca2a23fc 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 17.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 17.fs.bsl @@ -10,86 +10,87 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Tuple - (false, - [Named - (SynIdent (x, None), false, None, - (4,10--4,11)); - Named - (SynIdent (y, None), false, None, - (4,13--4,14))], [(4,11--4,12)], - (4,10--4,14)), (4,9--4,15)), - Some - (SynBindingReturnInfo - (Tuple - (false, - [Type - (LongIdent - (SynLongIdent ([int], [], [None]))); - Star (4,21--4,22); - Type - (LongIdent - (SynLongIdent ([int], [], [None])))], - (4,17--4,26)), (4,17--4,26), [], - { ColonRange = Some (4,15--4,16) })), - App - (Atomic, false, Ident asyncInt, - Const (Unit, (4,37--4,39)), (4,29--4,39)), - (4,4--4,39), Yes (4,4--4,39), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,27--4,28) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Tuple - (false, - [Named - (SynIdent (x, None), false, None, - (5,10--5,11)); - Named - (SynIdent (y, None), false, None, - (5,13--5,14))], [(5,11--5,12)], - (5,10--5,14)), (5,9--5,15)), - Some - (SynBindingReturnInfo - (Tuple - (false, - [Type - (LongIdent - (SynLongIdent ([int], [], [None]))); - Star (5,21--5,22); - Type - (LongIdent - (SynLongIdent ([int], [], [None])))], - (5,17--5,26)), (5,17--5,26), [], - { ColonRange = Some (5,15--5,16) })), - App - (Atomic, false, Ident asyncInt, - Const (Unit, (5,37--5,39)), (5,29--5,39)), - (5,4--5,39), Yes (5,4--5,39), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,27--5,28) })], - YieldOrReturn - ((false, true), Const (Unit, (6,11--6,13)), (6,4--6,13), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,13), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,27--4,28) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Tuple + (false, + [Named + (SynIdent (x, None), false, None, + (4,10--4,11)); + Named + (SynIdent (y, None), false, None, + (4,13--4,14))], [(4,11--4,12)], + (4,10--4,14)), (4,9--4,15)), + Some + (SynBindingReturnInfo + (Tuple + (false, + [Type + (LongIdent + (SynLongIdent ([int], [], [None]))); + Star (4,21--4,22); + Type + (LongIdent + (SynLongIdent ([int], [], [None])))], + (4,17--4,26)), (4,17--4,26), [], + { ColonRange = Some (4,15--4,16) })), + App + (Atomic, false, Ident asyncInt, + Const (Unit, (4,37--4,39)), (4,29--4,39)), + (4,4--4,39), Yes (4,4--4,39), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,27--4,28) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Tuple + (false, + [Named + (SynIdent (x, None), false, None, + (5,10--5,11)); + Named + (SynIdent (y, None), false, None, + (5,13--5,14))], [(5,11--5,12)], + (5,10--5,14)), (5,9--5,15)), + Some + (SynBindingReturnInfo + (Tuple + (false, + [Type + (LongIdent + (SynLongIdent ([int], [], [None]))); + Star (5,21--5,22); + Type + (LongIdent + (SynLongIdent ([int], [], [None])))], + (5,17--5,26)), (5,17--5,26), [], + { ColonRange = Some (5,15--5,16) })), + App + (Atomic, false, Ident asyncInt, + Const (Unit, (5,37--5,39)), (5,29--5,39)), + (5,4--5,39), Yes (5,4--5,39), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,27--5,28) })] + Body = + YieldOrReturn + ((false, true), Const (Unit, (6,11--6,13)), + (6,4--6,13), { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,13) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 18.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 18.fs.bsl index e6deb827d1a..96300387ee2 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 18.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 18.fs.bsl @@ -10,76 +10,77 @@ ImplFile ComputationExpr (false, LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (As - (Named - (SynIdent (x, None), false, None, - (4,10--4,11)), - Named - (SynIdent (y, None), false, None, - (4,15--4,16)), (4,10--4,16)), (4,9--4,17)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (4,19--4,22), [], - { ColonRange = Some (4,17--4,18) })), - App - (Atomic, false, Ident asyncInt, - Const (Unit, (4,33--4,35)), (4,25--4,35)), - (4,4--4,35), Yes (4,4--4,35), - { LeadingKeyword = Let (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,23--4,24) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (As - (Named - (SynIdent (a, None), false, None, - (5,10--5,11)), - Named - (SynIdent (b, None), false, None, - (5,15--5,16)), (5,10--5,16)), (5,9--5,17)), - Some - (SynBindingReturnInfo - (FromParseError (5,18--5,18), (5,18--5,18), [], - { ColonRange = Some (5,17--5,18) })), - App - (Atomic, false, Ident asyncString, - Const (Unit, (5,32--5,34)), (5,21--5,34)), - (5,4--5,34), Yes (5,4--5,34), - { LeadingKeyword = And (5,4--5,8) - InlineKeyword = None - EqualsRange = Some (5,19--5,20) })], - YieldOrReturn - ((false, true), - App - (NonAtomic, false, + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (As + (Named + (SynIdent (x, None), false, None, + (4,10--4,11)), + Named + (SynIdent (y, None), false, None, + (4,15--4,16)), (4,10--4,16)), (4,9--4,17)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (4,19--4,22), [], + { ColonRange = Some (4,17--4,18) })), App - (NonAtomic, true, - LongIdent - (false, - SynLongIdent - ([op_Addition], [], - [Some (OriginalNotation "+")]), None, - (6,13--6,14)), Ident x, (6,11--6,14)), - Ident b, (6,11--6,16)), (6,4--6,16), - { YieldOrReturnKeyword = (6,4--6,10) }), (4,4--6,16), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,23--4,24) }), (3,6--7,1)), - (3,0--7,1)), (3,0--7,1))], + (Atomic, false, Ident asyncInt, + Const (Unit, (4,33--4,35)), (4,25--4,35)), + (4,4--4,35), Yes (4,4--4,35), + { LeadingKeyword = LetBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,23--4,24) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (As + (Named + (SynIdent (a, None), false, None, + (5,10--5,11)), + Named + (SynIdent (b, None), false, None, + (5,15--5,16)), (5,10--5,16)), (5,9--5,17)), + Some + (SynBindingReturnInfo + (FromParseError (5,18--5,18), (5,18--5,18), [], + { ColonRange = Some (5,17--5,18) })), + App + (Atomic, false, Ident asyncString, + Const (Unit, (5,32--5,34)), (5,21--5,34)), + (5,4--5,34), Yes (5,4--5,34), + { LeadingKeyword = AndBang (5,4--5,8) + InlineKeyword = None + EqualsRange = Some (5,19--5,20) })] + Body = + YieldOrReturn + ((false, true), + App + (NonAtomic, false, + App + (NonAtomic, true, + LongIdent + (false, + SynLongIdent + ([op_Addition], [], + [Some (OriginalNotation "+")]), None, + (6,13--6,14)), Ident x, (6,11--6,14)), + Ident b, (6,11--6,16)), (6,4--6,16), + { YieldOrReturnKeyword = (6,4--6,10) }) + Range = (4,4--6,16) + Trivia = { InKeyword = None } }, (3,6--7,1)), (3,0--7,1)), + (3,0--7,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--7,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 19.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 19.fs.bsl index 9a92b29b73f..c12a5081026 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 19.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed LetBang AndBang 19.fs.bsl @@ -10,70 +10,77 @@ ImplFile ComputationExpr (false, LetOrUse - (true, false, true, false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (a, None), false, None, (4,12--4,13)), - None, Const (Int32 3, (4,16--4,17)), (4,12--4,13), - Yes (4,4--4,17), - { LeadingKeyword = LetRec ((4,4--4,7), (4,8--4,11)) - InlineKeyword = None - EqualsRange = Some (4,14--4,15) }); - SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((5,8), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (b, None), false, None, (5,8--5,9)), - None, Const (Int32 5, (5,12--5,13)), (5,8--5,9), - Yes (5,4--5,13), { LeadingKeyword = And (5,4--5,7) - InlineKeyword = None - EqualsRange = Some (5,10--5,11) })], - LetOrUse - (false, false, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (a, None), false, None, (6,9--6,10)), - None, Const (Int32 3, (6,13--6,14)), (6,4--6,14), - Yes (6,4--6,14), - { LeadingKeyword = Let (6,4--6,8) - InlineKeyword = None - EqualsRange = Some (6,11--6,12) }); - SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (b, None), false, None, (7,9--7,10)), - None, Const (Int32 5, (7,13--7,14)), (7,4--7,14), - Yes (7,4--7,14), - { LeadingKeyword = And (7,4--7,8) - InlineKeyword = None - EqualsRange = Some (7,11--7,12) })], - YieldOrReturn - ((false, true), Const (Unit, (8,11--8,13)), - (8,4--8,13), { YieldOrReturnKeyword = (8,4--8,10) }), - (6,4--8,13), { LetOrUseKeyword = (6,4--6,8) - InKeyword = None - EqualsRange = Some (6,11--6,12) }), - (4,4--8,13), { LetOrUseKeyword = (4,4--4,11) - InKeyword = None - EqualsRange = Some (4,14--4,15) }), - (3,6--9,1)), (3,0--9,1)), (3,0--9,1))], + { IsRecursive = true + Bindings = + [SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((4,4), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (a, None), false, None, (4,12--4,13)), + None, Const (Int32 3, (4,16--4,17)), (4,12--4,13), + Yes (4,4--4,17), + { LeadingKeyword = LetRec ((4,4--4,7), (4,8--4,11)) + InlineKeyword = None + EqualsRange = Some (4,14--4,15) }); + SynBinding + (None, Normal, false, false, [], + PreXmlDoc ((5,8), FSharp.Compiler.Xml.XmlDocCollector), + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (b, None), false, None, (5,8--5,9)), + None, Const (Int32 5, (5,12--5,13)), (5,8--5,9), + Yes (5,4--5,13), + { LeadingKeyword = And (5,4--5,7) + InlineKeyword = None + EqualsRange = Some (5,10--5,11) })] + Body = + LetOrUse + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo + ([], SynArgInfo ([], false, None)), None), + Named + (SynIdent (a, None), false, None, + (6,9--6,10)), None, + Const (Int32 3, (6,13--6,14)), (6,4--6,14), + Yes (6,4--6,14), + { LeadingKeyword = LetBang (6,4--6,8) + InlineKeyword = None + EqualsRange = Some (6,11--6,12) }); + SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo + ([], SynArgInfo ([], false, None)), None), + Named + (SynIdent (b, None), false, None, + (7,9--7,10)), None, + Const (Int32 5, (7,13--7,14)), (7,4--7,14), + Yes (7,4--7,14), + { LeadingKeyword = AndBang (7,4--7,8) + InlineKeyword = None + EqualsRange = Some (7,11--7,12) })] + Body = + YieldOrReturn + ((false, true), Const (Unit, (8,11--8,13)), + (8,4--8,13), + { YieldOrReturnKeyword = (8,4--8,10) }) + Range = (6,4--8,13) + Trivia = { InKeyword = None } } + Range = (4,4--8,13) + Trivia = { InKeyword = None } }, (3,6--9,1)), (3,0--9,1)), + (3,0--9,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--9,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed UseBang 01.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed UseBang 01.fs.bsl index e37cc274965..e890d891b15 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed UseBang 01.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed UseBang 01.fs.bsl @@ -9,39 +9,42 @@ ImplFile ComputationExpr (false, LetOrUse - (false, true, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (res, None), false, None, (4,9--4,12)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (4,14--4,17), [], - { ColonRange = Some (4,12--4,13) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (4,35--4,36)), - (4,28--4,36), - { YieldOrReturnKeyword = (4,28--4,34) }), - (4,26--4,38)), (4,20--4,38)), (4,4--4,38), - Yes (4,4--4,38), { LeadingKeyword = Use (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,18--4,19) })], - YieldOrReturn - ((false, true), Ident res, (5,4--5,14), - { YieldOrReturnKeyword = (5,4--5,10) }), (4,4--5,14), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,18--4,19) }), (3,6--6,1)), - (3,0--6,1)), (3,0--6,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (res, None), false, None, (4,9--4,12)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (4,14--4,17), [], + { ColonRange = Some (4,12--4,13) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 1, (4,35--4,36)), + (4,28--4,36), + { YieldOrReturnKeyword = (4,28--4,34) }), + (4,26--4,38)), (4,20--4,38)), (4,4--4,38), + Yes (4,4--4,38), + { LeadingKeyword = UseBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,18--4,19) })] + Body = + YieldOrReturn + ((false, true), Ident res, (5,4--5,14), + { YieldOrReturnKeyword = (5,4--5,10) }) + Range = (4,4--5,14) + Trivia = { InKeyword = None } }, (3,6--6,1)), (3,0--6,1)), + (3,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed UseBang 02.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed UseBang 02.fs.bsl index 7289171327f..4ab2cb82cd7 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed UseBang 02.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed UseBang 02.fs.bsl @@ -9,39 +9,42 @@ ImplFile ComputationExpr (false, LetOrUse - (false, true, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Named - (SynIdent (res, None), false, None, - (4,10--4,13)), - LongIdent (SynLongIdent ([int], [], [None])), - (4,10--4,18)), (4,9--4,19)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (4,37--4,38)), - (4,30--4,38), - { YieldOrReturnKeyword = (4,30--4,36) }), - (4,28--4,40)), (4,22--4,40)), (4,4--4,40), - Yes (4,4--4,40), { LeadingKeyword = Use (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,20--4,21) })], - YieldOrReturn - ((false, true), Ident res, (5,4--5,14), - { YieldOrReturnKeyword = (5,4--5,10) }), (4,4--5,14), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,20--4,21) }), (3,6--6,1)), - (3,0--6,1)), (3,0--6,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Named + (SynIdent (res, None), false, None, + (4,10--4,13)), + LongIdent (SynLongIdent ([int], [], [None])), + (4,10--4,18)), (4,9--4,19)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 1, (4,37--4,38)), + (4,30--4,38), + { YieldOrReturnKeyword = (4,30--4,36) }), + (4,28--4,40)), (4,22--4,40)), (4,4--4,40), + Yes (4,4--4,40), + { LeadingKeyword = UseBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,20--4,21) })] + Body = + YieldOrReturn + ((false, true), Ident res, (5,4--5,14), + { YieldOrReturnKeyword = (5,4--5,10) }) + Range = (4,4--5,14) + Trivia = { InKeyword = None } }, (3,6--6,1)), (3,0--6,1)), + (3,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed UseBang 03.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed UseBang 03.fs.bsl index b60bc19b2ff..84acda1bbff 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed UseBang 03.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed UseBang 03.fs.bsl @@ -5,61 +5,64 @@ ImplFile ([Module], false, NamedModule, [Expr (LetOrUse - (false, true, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (x, None), false, None, (3,5--3,6)), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (3,7--3,10), [], { ColonRange = Some (3,6--3,7) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (3,28--3,29)), - (3,21--3,29), - { YieldOrReturnKeyword = (3,21--3,27) }), - (3,19--3,31)), (3,13--3,31)), (3,0--3,31), - Yes (3,0--3,31), { LeadingKeyword = Use (3,0--3,4) - InlineKeyword = None - EqualsRange = Some (3,11--3,12) })], - LetOrUse - (false, true, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Named - (SynIdent (y, None), false, None, (4,6--4,7)), - LongIdent (SynLongIdent ([int], [], [None])), - (4,6--4,11)), (4,5--4,12)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 2, (4,30--4,31)), - (4,23--4,31), - { YieldOrReturnKeyword = (4,23--4,29) }), - (4,21--4,33)), (4,15--4,33)), (4,0--4,33), - Yes (4,0--4,33), { LeadingKeyword = Use (4,0--4,4) - InlineKeyword = None - EqualsRange = Some (4,13--4,14) })], - ImplicitZero (4,33--4,33), (4,0--4,33), - { LetOrUseKeyword = (4,0--4,4) - InKeyword = None - EqualsRange = Some (4,13--4,14) }), (3,0--4,33), - { LetOrUseKeyword = (3,0--3,4) - InKeyword = None - EqualsRange = Some (3,11--3,12) }), (3,0--4,33))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named (SynIdent (x, None), false, None, (3,5--3,6)), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (3,7--3,10), [], { ColonRange = Some (3,6--3,7) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), Const (Int32 1, (3,28--3,29)), + (3,21--3,29), + { YieldOrReturnKeyword = (3,21--3,27) }), + (3,19--3,31)), (3,13--3,31)), (3,0--3,31), + Yes (3,0--3,31), { LeadingKeyword = UseBang (3,0--3,4) + InlineKeyword = None + EqualsRange = Some (3,11--3,12) })] + Body = + LetOrUse + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Named + (SynIdent (y, None), false, None, (4,6--4,7)), + LongIdent (SynLongIdent ([int], [], [None])), + (4,6--4,11)), (4,5--4,12)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 2, (4,30--4,31)), (4,23--4,31), + { YieldOrReturnKeyword = (4,23--4,29) }), + (4,21--4,33)), (4,15--4,33)), (4,0--4,33), + Yes (4,0--4,33), + { LeadingKeyword = UseBang (4,0--4,4) + InlineKeyword = None + EqualsRange = Some (4,13--4,14) })] + Body = ImplicitZero (4,33--4,33) + Range = (4,0--4,33) + Trivia = { InKeyword = None } } + Range = (3,0--4,33) + Trivia = { InKeyword = None } }, (3,0--4,33))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--4,33), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed UseBang 04.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed UseBang 04.fs.bsl index c69ff41b570..dc98ea19353 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed UseBang 04.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed UseBang 04.fs.bsl @@ -5,59 +5,62 @@ ImplFile ([Module], false, NamedModule, [Expr (LetOrUse - (false, true, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), Wild (3,5--3,6), - Some - (SynBindingReturnInfo - (LongIdent (SynLongIdent ([int], [], [None])), - (3,7--3,10), [], { ColonRange = Some (3,6--3,7) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (3,28--3,29)), - (3,21--3,29), - { YieldOrReturnKeyword = (3,21--3,27) }), - (3,19--3,31)), (3,13--3,31)), (3,0--3,31), - Yes (3,0--3,31), { LeadingKeyword = Use (3,0--3,4) - InlineKeyword = None - EqualsRange = Some (3,11--3,12) })], - LetOrUse - (false, true, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Paren - (Typed - (Wild (4,6--4,7), - LongIdent (SynLongIdent ([int], [], [None])), - (4,6--4,11)), (4,5--4,12)), None, - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 2, (4,30--4,31)), - (4,23--4,31), - { YieldOrReturnKeyword = (4,23--4,29) }), - (4,21--4,33)), (4,15--4,33)), (4,0--4,33), - Yes (4,0--4,33), { LeadingKeyword = Use (4,0--4,4) - InlineKeyword = None - EqualsRange = Some (4,13--4,14) })], - ImplicitZero (4,33--4,33), (4,0--4,33), - { LetOrUseKeyword = (4,0--4,4) - InKeyword = None - EqualsRange = Some (4,13--4,14) }), (3,0--4,33), - { LetOrUseKeyword = (3,0--3,4) - InKeyword = None - EqualsRange = Some (3,11--3,12) }), (3,0--4,33))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, SynValInfo ([], SynArgInfo ([], false, None)), + None), Wild (3,5--3,6), + Some + (SynBindingReturnInfo + (LongIdent (SynLongIdent ([int], [], [None])), + (3,7--3,10), [], { ColonRange = Some (3,6--3,7) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), Const (Int32 1, (3,28--3,29)), + (3,21--3,29), + { YieldOrReturnKeyword = (3,21--3,27) }), + (3,19--3,31)), (3,13--3,31)), (3,0--3,31), + Yes (3,0--3,31), { LeadingKeyword = UseBang (3,0--3,4) + InlineKeyword = None + EqualsRange = Some (3,11--3,12) })] + Body = + LetOrUse + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Paren + (Typed + (Wild (4,6--4,7), + LongIdent (SynLongIdent ([int], [], [None])), + (4,6--4,11)), (4,5--4,12)), None, + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 2, (4,30--4,31)), (4,23--4,31), + { YieldOrReturnKeyword = (4,23--4,29) }), + (4,21--4,33)), (4,15--4,33)), (4,0--4,33), + Yes (4,0--4,33), + { LeadingKeyword = UseBang (4,0--4,4) + InlineKeyword = None + EqualsRange = Some (4,13--4,14) })] + Body = ImplicitZero (4,33--4,33) + Range = (4,0--4,33) + Trivia = { InKeyword = None } } + Range = (3,0--4,33) + Trivia = { InKeyword = None } }, (3,0--4,33))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--4,33), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/SynType/Typed UseBang 05.fs.bsl b/tests/service/data/SyntaxTree/SynType/Typed UseBang 05.fs.bsl index 945d32adab2..2ac1878b1e7 100644 --- a/tests/service/data/SyntaxTree/SynType/Typed UseBang 05.fs.bsl +++ b/tests/service/data/SyntaxTree/SynType/Typed UseBang 05.fs.bsl @@ -9,38 +9,41 @@ ImplFile ComputationExpr (false, LetOrUse - (false, true, true, true, - [SynBinding - (None, Normal, false, false, [], PreXmlDocEmpty, - SynValData - (None, - SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named - (SynIdent (res, None), false, None, (4,9--4,12)), - Some - (SynBindingReturnInfo - (FromParseError (4,13--4,13), (4,13--4,13), [], - { ColonRange = Some (4,12--4,13) })), - App - (NonAtomic, false, Ident async, - ComputationExpr - (false, - YieldOrReturn - ((false, true), Const (Int32 1, (4,31--4,32)), - (4,24--4,32), - { YieldOrReturnKeyword = (4,24--4,30) }), - (4,22--4,34)), (4,16--4,34)), (4,4--4,34), - Yes (4,4--4,34), { LeadingKeyword = Use (4,4--4,8) - InlineKeyword = None - EqualsRange = Some (4,14--4,15) })], - YieldOrReturn - ((false, true), Ident res, (5,4--5,14), - { YieldOrReturnKeyword = (5,4--5,10) }), (4,4--5,14), - { LetOrUseKeyword = (4,4--4,8) - InKeyword = None - EqualsRange = Some (4,14--4,15) }), (3,6--6,1)), - (3,0--6,1)), (3,0--6,1))], + { IsRecursive = false + Bindings = + [SynBinding + (None, Normal, false, false, [], PreXmlDocEmpty, + SynValData + (None, + SynValInfo ([], SynArgInfo ([], false, None)), + None), + Named + (SynIdent (res, None), false, None, (4,9--4,12)), + Some + (SynBindingReturnInfo + (FromParseError (4,13--4,13), (4,13--4,13), [], + { ColonRange = Some (4,12--4,13) })), + App + (NonAtomic, false, Ident async, + ComputationExpr + (false, + YieldOrReturn + ((false, true), + Const (Int32 1, (4,31--4,32)), + (4,24--4,32), + { YieldOrReturnKeyword = (4,24--4,30) }), + (4,22--4,34)), (4,16--4,34)), (4,4--4,34), + Yes (4,4--4,34), + { LeadingKeyword = UseBang (4,4--4,8) + InlineKeyword = None + EqualsRange = Some (4,14--4,15) })] + Body = + YieldOrReturn + ((false, true), Ident res, (5,4--5,14), + { YieldOrReturnKeyword = (5,4--5,10) }) + Range = (4,4--5,14) + Trivia = { InKeyword = None } }, (3,6--6,1)), (3,0--6,1)), + (3,0--6,1))], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--6,1), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/Deeply Indented Type 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Deeply Indented Type 01.fs.bsl index 10723d4529c..a5d38e13ca0 100644 --- a/tests/service/data/SyntaxTree/Type/Deeply Indented Type 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Deeply Indented Type 01.fs.bsl @@ -58,9 +58,9 @@ ImplFile { LeadingKeyword = Let (9,16--9,19) InlineKeyword = None EqualsRange = Some (9,22--9,23) })], - (9,16--9,25))], false, (8,12--9,25), - { ModuleKeyword = Some (8,12--8,18) - EqualsRange = Some (8,32--8,33) }); + (9,16--9,25), { InKeyword = None })], false, + (8,12--9,25), { ModuleKeyword = Some (8,12--8,18) + EqualsRange = Some (8,32--8,33) }); Exception (SynExceptionDefn (SynExceptionDefnRepr diff --git a/tests/service/data/SyntaxTree/Type/Inline IL With Type 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Inline IL With Type 01.fs.bsl index 195ff908d8f..357f581f362 100644 --- a/tests/service/data/SyntaxTree/Type/Inline IL With Type 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Inline IL With Type 01.fs.bsl @@ -33,7 +33,7 @@ ImplFile (3,11--3,25), NoneAtLet, { LeadingKeyword = Let (3,0--3,3) InlineKeyword = Some (3,4--3,10) EqualsRange = Some (3,31--3,32) })], - (3,0--4,26)); + (3,0--4,26), { InKeyword = None }); Types ([SynTypeDefn (SynComponentInfo diff --git a/tests/service/data/SyntaxTree/Type/Keywords In Strings 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Keywords In Strings 01.fs.bsl index f42d3f23ed7..de2137341ef 100644 --- a/tests/service/data/SyntaxTree/Type/Keywords In Strings 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Keywords In Strings 01.fs.bsl @@ -31,7 +31,7 @@ ImplFile { LeadingKeyword = Let (5,4--5,7) InlineKeyword = None EqualsRange = Some (5,16--5,17) })], false, false, - (5,4--5,44)); + (5,4--5,44), { InKeyword = None }); Member (SynBinding (None, Normal, false, false, [], diff --git a/tests/service/data/SyntaxTree/Type/Let Inside Class 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Let Inside Class 01.fs.bsl index b677479348f..c7eddf540a5 100644 --- a/tests/service/data/SyntaxTree/Type/Let Inside Class 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Let Inside Class 01.fs.bsl @@ -31,7 +31,7 @@ ImplFile { LeadingKeyword = Let (5,4--5,7) InlineKeyword = None EqualsRange = Some (5,21--5,22) })], false, false, - (5,4--5,25)); + (5,4--5,25), { InKeyword = None }); Member (SynBinding (None, Normal, false, false, [], diff --git a/tests/service/data/SyntaxTree/Type/Module After Do Binding 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module After Do Binding 01.fs.bsl index fa44a076bea..feda58cda85 100644 --- a/tests/service/data/SyntaxTree/Type/Module After Do Binding 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module After Do Binding 01.fs.bsl @@ -32,7 +32,7 @@ ImplFile NoneAtDo, { LeadingKeyword = Do (5,4--5,6) InlineKeyword = None EqualsRange = None })], false, false, - (5,4--5,29))], (5,4--5,29)), [], + (5,4--5,29), { InKeyword = None })], (5,4--5,29)), [], Some (ImplicitCtor (None, [], Const (Unit, (4,12--4,14)), None, @@ -59,7 +59,7 @@ ImplFile Yes (7,8--7,23), { LeadingKeyword = Let (7,8--7,11) InlineKeyword = None EqualsRange = Some (7,19--7,20) })], - (7,8--7,23))], false, (6,4--7,23), + (7,8--7,23), { InKeyword = None })], false, (6,4--7,23), { ModuleKeyword = Some (6,4--6,10) EqualsRange = Some (6,13--6,14) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/Type/Module After Inherit 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module After Inherit 01.fs.bsl index 79d4155fcbd..644860bccd4 100644 --- a/tests/service/data/SyntaxTree/Type/Module After Inherit 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module After Inherit 01.fs.bsl @@ -66,7 +66,7 @@ ImplFile Yes (10,8--10,17), { LeadingKeyword = Let (10,8--10,11) InlineKeyword = None EqualsRange = Some (10,14--10,15) })], - (10,8--10,17))], false, (9,4--10,17), + (10,8--10,17), { InKeyword = None })], false, (9,4--10,17), { ModuleKeyword = Some (9,4--9,10) EqualsRange = Some (9,25--9,26) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/Type/Module After Members 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module After Members 01.fs.bsl index bb9dc70cb4a..28b3548fe66 100644 --- a/tests/service/data/SyntaxTree/Type/Module After Members 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module After Members 01.fs.bsl @@ -97,7 +97,7 @@ ImplFile Yes (9,8--9,23), { LeadingKeyword = Let (9,8--9,11) InlineKeyword = None EqualsRange = Some (9,19--9,20) })], - (9,8--9,23))], false, (8,4--9,23), + (9,8--9,23), { InKeyword = None })], false, (8,4--9,23), { ModuleKeyword = Some (8,4--8,10) EqualsRange = Some (8,25--8,26) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/Type/Module After Static Members 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module After Static Members 01.fs.bsl index 9cafebb4709..15115ecfedc 100644 --- a/tests/service/data/SyntaxTree/Type/Module After Static Members 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module After Static Members 01.fs.bsl @@ -60,7 +60,7 @@ ImplFile Yes (8,8--8,17), { LeadingKeyword = Let (8,8--8,11) InlineKeyword = None EqualsRange = Some (8,14--8,15) })], - (8,8--8,17))], false, (7,4--8,17), + (8,8--8,17), { InKeyword = None })], false, (7,4--8,17), { ModuleKeyword = Some (7,4--7,10) EqualsRange = Some (7,25--7,26) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/Type/Module And Exception Interleaved With Members 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module And Exception Interleaved With Members 01.fs.bsl index 807b6497ad1..8f92eb2c87b 100644 --- a/tests/service/data/SyntaxTree/Type/Module And Exception Interleaved With Members 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module And Exception Interleaved With Members 01.fs.bsl @@ -57,7 +57,7 @@ ImplFile Yes (7,8--7,17), { LeadingKeyword = Let (7,8--7,11) InlineKeyword = None EqualsRange = Some (7,14--7,15) })], - (7,8--7,17))], false, (6,4--7,17), + (7,8--7,17), { InKeyword = None })], false, (6,4--7,17), { ModuleKeyword = Some (6,4--6,10) EqualsRange = Some (6,14--6,15) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/Type/Module And Type After Do Binding 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module And Type After Do Binding 01.fs.bsl index bb3cb97c749..6e7606cc734 100644 --- a/tests/service/data/SyntaxTree/Type/Module And Type After Do Binding 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module And Type After Do Binding 01.fs.bsl @@ -31,7 +31,7 @@ ImplFile NoneAtDo, { LeadingKeyword = Do (5,4--5,6) InlineKeyword = None EqualsRange = None })], false, false, - (5,4--6,22))], (5,4--6,22)), [], + (5,4--6,22), { InKeyword = None })], (5,4--6,22)), [], Some (ImplicitCtor (None, [], Const (Unit, (4,16--4,18)), None, @@ -71,7 +71,7 @@ ImplFile Yes (11,8--11,17), { LeadingKeyword = Let (11,8--11,11) InlineKeyword = None EqualsRange = Some (11,14--11,15) })], - (11,8--11,17))], false, (10,4--11,17), + (11,8--11,17), { InKeyword = None })], false, (10,4--11,17), { ModuleKeyword = Some (10,4--10,10) EqualsRange = Some (10,26--10,27) }); Open diff --git a/tests/service/data/SyntaxTree/Type/Module And Type Inside Type 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module And Type Inside Type 01.fs.bsl index e111610ed72..8a885013e07 100644 --- a/tests/service/data/SyntaxTree/Type/Module And Type Inside Type 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module And Type Inside Type 01.fs.bsl @@ -32,7 +32,7 @@ ImplFile Yes (6,8--6,23), { LeadingKeyword = Let (6,8--6,11) InlineKeyword = None EqualsRange = Some (6,19--6,20) })], - (6,8--6,23))], false, (5,4--6,23), + (6,8--6,23), { InKeyword = None })], false, (5,4--6,23), { ModuleKeyword = Some (5,4--5,10) EqualsRange = Some (5,25--5,26) }); Types diff --git a/tests/service/data/SyntaxTree/Type/Module At Module Level 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module At Module Level 01.fs.bsl index 7f34575084d..64f3e9a1f48 100644 --- a/tests/service/data/SyntaxTree/Type/Module At Module Level 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module At Module Level 01.fs.bsl @@ -59,7 +59,7 @@ ImplFile Yes (8,4--8,14), { LeadingKeyword = Let (8,4--8,7) InlineKeyword = None EqualsRange = Some (8,10--8,11) })], - (8,4--8,14))], false, (7,0--8,14), + (8,4--8,14), { InKeyword = None })], false, (7,0--8,14), { ModuleKeyword = Some (7,0--7,6) EqualsRange = Some (7,19--7,20) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/Type/Module At Type Column 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module At Type Column 01.fs.bsl index 9a0f25f37fd..c8750dbc0a7 100644 --- a/tests/service/data/SyntaxTree/Type/Module At Type Column 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module At Type Column 01.fs.bsl @@ -59,9 +59,10 @@ ImplFile Const (Int32 1, (8,12--8,13)), (8,8--8,9), Yes (8,4--8,13), { LeadingKeyword = Let (8,4--8,7) InlineKeyword = None - EqualsRange = Some (8,10--8,11) })], (8,4--8,13))], - false, (7,0--8,13), { ModuleKeyword = Some (7,0--7,6) - EqualsRange = Some (7,9--7,10) })], + EqualsRange = Some (8,10--8,11) })], (8,4--8,13), + { InKeyword = None })], false, (7,0--8,13), + { ModuleKeyword = Some (7,0--7,6) + EqualsRange = Some (7,9--7,10) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (2,0--8,13), { LeadingKeyword = Module (2,0--2,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/Module Between Constructors 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module Between Constructors 01.fs.bsl index 5034df6344b..def37df2059 100644 --- a/tests/service/data/SyntaxTree/Type/Module Between Constructors 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module Between Constructors 01.fs.bsl @@ -83,7 +83,7 @@ ImplFile Yes (8,8--8,17), { LeadingKeyword = Let (8,8--8,11) InlineKeyword = None EqualsRange = Some (8,14--8,15) })], - (8,8--8,17))], false, (7,4--8,17), + (8,8--8,17), { InKeyword = None })], false, (7,4--8,17), { ModuleKeyword = Some (7,4--7,10) EqualsRange = Some (7,25--7,26) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/Type/Module Inside Class 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module Inside Class 01.fs.bsl index 61191bc287b..da0eeb70c26 100644 --- a/tests/service/data/SyntaxTree/Type/Module Inside Class 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module Inside Class 01.fs.bsl @@ -72,9 +72,10 @@ ImplFile (7,12--7,16), NoneAtLet, { LeadingKeyword = Let (7,8--7,11) InlineKeyword = None - EqualsRange = Some (7,17--7,18) })], (7,8--7,21))], - false, (6,4--7,21), { ModuleKeyword = Some (6,4--6,10) - EqualsRange = Some (6,14--6,15) })], + EqualsRange = Some (7,17--7,18) })], (7,8--7,21), + { InKeyword = None })], false, (6,4--7,21), + { ModuleKeyword = Some (6,4--6,10) + EqualsRange = Some (6,14--6,15) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (2,0--7,21), { LeadingKeyword = Module (2,0--2,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/Module Inside Class With Constructor 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module Inside Class With Constructor 01.fs.bsl index b343a4bfd88..f61b8d0da80 100644 --- a/tests/service/data/SyntaxTree/Type/Module Inside Class With Constructor 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module Inside Class With Constructor 01.fs.bsl @@ -54,7 +54,7 @@ ImplFile Yes (6,8--6,23), { LeadingKeyword = Let (6,8--6,11) InlineKeyword = None EqualsRange = Some (6,19--6,20) })], - (6,8--6,23))], false, (5,4--6,23), + (6,8--6,23), { InKeyword = None })], false, (5,4--6,23), { ModuleKeyword = Some (5,4--5,10) EqualsRange = Some (5,26--5,27) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/Type/Module Inside Delegate 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module Inside Delegate 01.fs.bsl index 02ce751defb..89330c2e3c9 100644 --- a/tests/service/data/SyntaxTree/Type/Module Inside Delegate 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module Inside Delegate 01.fs.bsl @@ -81,7 +81,7 @@ ImplFile Yes (6,8--6,17), { LeadingKeyword = Let (6,8--6,11) InlineKeyword = None EqualsRange = Some (6,14--6,15) })], - (6,8--6,17))], false, (5,4--6,17), + (6,8--6,17), { InKeyword = None })], false, (5,4--6,17), { ModuleKeyword = Some (5,4--5,10) EqualsRange = Some (5,25--5,26) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/Type/Module Inside Interface 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module Inside Interface 01.fs.bsl index 4894de15039..25a1e2ee23b 100644 --- a/tests/service/data/SyntaxTree/Type/Module Inside Interface 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module Inside Interface 01.fs.bsl @@ -59,9 +59,10 @@ ImplFile (7,12--7,16), NoneAtLet, { LeadingKeyword = Let (7,8--7,11) InlineKeyword = None - EqualsRange = Some (7,17--7,18) })], (7,8--7,21))], - false, (6,4--7,21), { ModuleKeyword = Some (6,4--6,10) - EqualsRange = Some (6,13--6,14) })], + EqualsRange = Some (7,17--7,18) })], (7,8--7,21), + { InKeyword = None })], false, (6,4--7,21), + { ModuleKeyword = Some (6,4--6,10) + EqualsRange = Some (6,13--6,14) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (2,0--7,21), { LeadingKeyword = Module (2,0--2,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/Module Inside Nested Type 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module Inside Nested Type 01.fs.bsl index fa6bc697236..69502f842e4 100644 --- a/tests/service/data/SyntaxTree/Type/Module Inside Nested Type 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module Inside Nested Type 01.fs.bsl @@ -53,13 +53,13 @@ ImplFile { LeadingKeyword = Let (9,16--9,19) InlineKeyword = None EqualsRange = Some (9,22--9,23) })], - (9,16--9,25))], false, (8,12--9,25), - { ModuleKeyword = Some (8,12--8,18) - EqualsRange = Some (8,33--8,34) })], false, (5,4--9,25), - { ModuleKeyword = Some (5,4--5,10) - EqualsRange = Some (5,18--5,19) })], false, (4,0--9,25), - { ModuleKeyword = Some (4,0--4,6) - EqualsRange = Some (4,14--4,15) })], + (9,16--9,25), { InKeyword = None })], false, + (8,12--9,25), { ModuleKeyword = Some (8,12--8,18) + EqualsRange = Some (8,33--8,34) })], false, + (5,4--9,25), { ModuleKeyword = Some (5,4--5,10) + EqualsRange = Some (5,18--5,19) })], false, + (4,0--9,25), { ModuleKeyword = Some (4,0--4,6) + EqualsRange = Some (4,14--4,15) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (2,0--9,25), { LeadingKeyword = Module (2,0--2,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/Module Inside Record 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module Inside Record 01.fs.bsl index 51daf2093d3..49bb21bfb20 100644 --- a/tests/service/data/SyntaxTree/Type/Module Inside Record 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module Inside Record 01.fs.bsl @@ -43,9 +43,10 @@ ImplFile (7,12--7,16), NoneAtLet, { LeadingKeyword = Let (7,8--7,11) InlineKeyword = None - EqualsRange = Some (7,17--7,18) })], (7,8--7,21))], - false, (6,4--7,21), { ModuleKeyword = Some (6,4--6,10) - EqualsRange = Some (6,14--6,15) })], + EqualsRange = Some (7,17--7,18) })], (7,8--7,21), + { InKeyword = None })], false, (6,4--7,21), + { ModuleKeyword = Some (6,4--6,10) + EqualsRange = Some (6,14--6,15) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (2,0--7,21), { LeadingKeyword = Module (2,0--2,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/Module Inside Union 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module Inside Union 01.fs.bsl index c49a40c24b3..5b239279ff4 100644 --- a/tests/service/data/SyntaxTree/Type/Module Inside Union 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module Inside Union 01.fs.bsl @@ -45,9 +45,10 @@ ImplFile (8,12--8,16), NoneAtLet, { LeadingKeyword = Let (8,8--8,11) InlineKeyword = None - EqualsRange = Some (8,17--8,18) })], (8,8--8,21))], - false, (7,4--8,21), { ModuleKeyword = Some (7,4--7,10) - EqualsRange = Some (7,14--7,15) })], + EqualsRange = Some (8,17--8,18) })], (8,8--8,21), + { InKeyword = None })], false, (7,4--8,21), + { ModuleKeyword = Some (7,4--7,10) + EqualsRange = Some (7,14--7,15) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (2,0--8,21), { LeadingKeyword = Module (2,0--2,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/Module Less Indented 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module Less Indented 01.fs.bsl index 7471af68c2f..f8a33abb0ef 100644 --- a/tests/service/data/SyntaxTree/Type/Module Less Indented 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module Less Indented 01.fs.bsl @@ -58,9 +58,10 @@ ImplFile Const (Int32 1, (8,12--8,13)), (8,8--8,9), Yes (8,4--8,13), { LeadingKeyword = Let (8,4--8,7) InlineKeyword = None - EqualsRange = Some (8,10--8,11) })], (8,4--8,13))], - false, (7,0--8,13), { ModuleKeyword = Some (7,0--7,6) - EqualsRange = Some (7,19--7,20) })], + EqualsRange = Some (8,10--8,11) })], (8,4--8,13), + { InKeyword = None })], false, (7,0--8,13), + { ModuleKeyword = Some (7,0--7,6) + EqualsRange = Some (7,19--7,20) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (2,0--8,13), { LeadingKeyword = Module (2,0--2,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/Module Same Indentation 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module Same Indentation 01.fs.bsl index 9b9908dbd51..4b5f37845d7 100644 --- a/tests/service/data/SyntaxTree/Type/Module Same Indentation 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module Same Indentation 01.fs.bsl @@ -59,7 +59,7 @@ ImplFile Yes (9,4--9,14), { LeadingKeyword = Let (9,4--9,7) InlineKeyword = None EqualsRange = Some (9,10--9,11) })], - (9,4--9,14))], false, (8,0--9,14), + (9,4--9,14), { InKeyword = None })], false, (8,0--9,14), { ModuleKeyword = Some (8,0--8,6) EqualsRange = Some (8,9--8,10) }); Types diff --git a/tests/service/data/SyntaxTree/Type/Module With Semicolon Delimiter 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Module With Semicolon Delimiter 01.fs.bsl index f3af1f613ca..a32fe9a3cc2 100644 --- a/tests/service/data/SyntaxTree/Type/Module With Semicolon Delimiter 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Module With Semicolon Delimiter 01.fs.bsl @@ -39,7 +39,7 @@ ImplFile Yes (7,8--7,17), { LeadingKeyword = Let (7,8--7,11) InlineKeyword = None EqualsRange = Some (7,14--7,15) })], - (7,8--7,17))], false, (6,4--7,17), + (7,8--7,17), { InKeyword = None })], false, (6,4--7,17), { ModuleKeyword = Some (6,4--6,10) EqualsRange = Some (6,32--6,33) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, diff --git a/tests/service/data/SyntaxTree/Type/Nested Module Hierarchy 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Nested Module Hierarchy 01.fs.bsl index 14fa4838071..5e9f1664abd 100644 --- a/tests/service/data/SyntaxTree/Type/Nested Module Hierarchy 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Nested Module Hierarchy 01.fs.bsl @@ -52,15 +52,15 @@ ImplFile { LeadingKeyword = Let (9,20--9,23) InlineKeyword = None EqualsRange = Some (9,26--9,27) })], - (9,20--9,29))], false, (8,16--9,29), - { ModuleKeyword = Some (8,16--8,22) - EqualsRange = Some (8,37--8,38) })], false, - (6,8--9,29), { ModuleKeyword = Some (6,8--6,14) - EqualsRange = Some (6,22--6,23) })], false, - (5,4--9,29), { ModuleKeyword = Some (5,4--5,10) - EqualsRange = Some (5,18--5,19) })], false, - (4,0--9,29), { ModuleKeyword = Some (4,0--4,6) - EqualsRange = Some (4,14--4,15) })], + (9,20--9,29), { InKeyword = None })], false, + (8,16--9,29), { ModuleKeyword = Some (8,16--8,22) + EqualsRange = Some (8,37--8,38) })], + false, (6,8--9,29), { ModuleKeyword = Some (6,8--6,14) + EqualsRange = Some (6,22--6,23) })], + false, (5,4--9,29), { ModuleKeyword = Some (5,4--5,10) + EqualsRange = Some (5,18--5,19) })], + false, (4,0--9,29), { ModuleKeyword = Some (4,0--4,6) + EqualsRange = Some (4,14--4,15) })], PreXmlDoc ((2,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (2,0--9,29), { LeadingKeyword = Module (2,0--2,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/One Line With Semicolons 01.fs.bsl b/tests/service/data/SyntaxTree/Type/One Line With Semicolons 01.fs.bsl index 6d4170c7795..f7d8eebe54c 100644 --- a/tests/service/data/SyntaxTree/Type/One Line With Semicolons 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/One Line With Semicolons 01.fs.bsl @@ -62,7 +62,7 @@ ImplFile (4,70--4,74), NoneAtLet, { LeadingKeyword = Let (4,66--4,69) InlineKeyword = None EqualsRange = Some (4,75--4,76) })], - (4,66--4,79)); + (4,66--4,79), { InKeyword = None }); Open (ModuleOrNamespace (SynLongIdent ([System], [], [None]), (4,86--4,92)), diff --git a/tests/service/data/SyntaxTree/Type/Record 01.fs.bsl b/tests/service/data/SyntaxTree/Type/Record 01.fs.bsl index ce490f4890d..50126fc6544 100644 --- a/tests/service/data/SyntaxTree/Type/Record 01.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Record 01.fs.bsl @@ -38,7 +38,8 @@ ImplFile Const (Unit, (9,10--9,12)), (9,4--9,7), Yes (9,0--9,12), { LeadingKeyword = Let (9,0--9,3) InlineKeyword = None - EqualsRange = Some (9,8--9,9) })], (9,0--9,12))], + EqualsRange = Some (9,8--9,9) })], (9,0--9,12), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--9,12), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/Record 02.fs.bsl b/tests/service/data/SyntaxTree/Type/Record 02.fs.bsl index 2805bef72c4..986cadf5de9 100644 --- a/tests/service/data/SyntaxTree/Type/Record 02.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Record 02.fs.bsl @@ -39,7 +39,8 @@ ImplFile Const (Unit, (9,10--9,12)), (9,4--9,7), Yes (9,0--9,12), { LeadingKeyword = Let (9,0--9,3) InlineKeyword = None - EqualsRange = Some (9,8--9,9) })], (9,0--9,12))], + EqualsRange = Some (9,8--9,9) })], (9,0--9,12), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--9,12), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = [] diff --git a/tests/service/data/SyntaxTree/Type/SynTypeTupleWithStruct.fs.bsl b/tests/service/data/SyntaxTree/Type/SynTypeTupleWithStruct.fs.bsl index 2091682bac4..a1c7db8a6dc 100644 --- a/tests/service/data/SyntaxTree/Type/SynTypeTupleWithStruct.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/SynTypeTupleWithStruct.fs.bsl @@ -31,8 +31,9 @@ ImplFile (2,7--2,25)), (2,28--2,30)), (2,4--2,5), Yes (2,0--2,30), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,26--2,27) })], (2,0--2,30))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,26--2,27) })], (2,0--2,30), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/Type/SynTypeTupleWithStructRecovery.fs.bsl b/tests/service/data/SyntaxTree/Type/SynTypeTupleWithStructRecovery.fs.bsl index 243e4f59db4..a2e63034dd5 100644 --- a/tests/service/data/SyntaxTree/Type/SynTypeTupleWithStructRecovery.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/SynTypeTupleWithStructRecovery.fs.bsl @@ -31,11 +31,12 @@ ImplFile (2,7--2,24)), (2,27--2,29)), (2,4--2,5), Yes (2,0--2,29), { LeadingKeyword = Let (2,0--2,3) InlineKeyword = None - EqualsRange = Some (2,25--2,26) })], (2,0--2,29))], - PreXmlDocEmpty, [], None, (2,0--3,0), { LeadingKeyword = None })], - (true, true), { ConditionalDirectives = [] - WarnDirectives = [] - CodeComments = [] }, set [])) + EqualsRange = Some (2,25--2,26) })], (2,0--2,29), + { InKeyword = None })], PreXmlDocEmpty, [], None, (2,0--3,0), + { LeadingKeyword = None })], (true, true), + { ConditionalDirectives = [] + WarnDirectives = [] + CodeComments = [] }, set [])) (2,25)-(2,26) parse error Unexpected symbol '=' in binding. Expected ')' or other token. (2,14)-(2,15) parse error Unmatched '(' diff --git a/tests/service/data/SyntaxTree/Type/Union 08.fs.bsl b/tests/service/data/SyntaxTree/Type/Union 08.fs.bsl index f018775dd8a..82fde979587 100644 --- a/tests/service/data/SyntaxTree/Type/Union 08.fs.bsl +++ b/tests/service/data/SyntaxTree/Type/Union 08.fs.bsl @@ -40,9 +40,10 @@ ImplFile (7,8--7,12), NoneAtLet, { LeadingKeyword = Let (7,4--7,7) InlineKeyword = None - EqualsRange = Some (7,13--7,14) })], (7,4--7,17))], - false, (6,0--7,17), { ModuleKeyword = Some (6,0--6,6) - EqualsRange = Some (6,18--6,19) }); + EqualsRange = Some (7,13--7,14) })], (7,4--7,17), + { InKeyword = None })], false, (6,0--7,17), + { ModuleKeyword = Some (6,0--6,6) + EqualsRange = Some (6,18--6,19) }); Types ([SynTypeDefn (SynComponentInfo diff --git a/tests/service/data/SyntaxTree/UnionCase/Missing keyword of.fs.bsl b/tests/service/data/SyntaxTree/UnionCase/Missing keyword of.fs.bsl index 88799b9de0d..2e9707e1462 100644 --- a/tests/service/data/SyntaxTree/UnionCase/Missing keyword of.fs.bsl +++ b/tests/service/data/SyntaxTree/UnionCase/Missing keyword of.fs.bsl @@ -15,7 +15,8 @@ ImplFile Const (Unit, (3,8--3,10)), (3,4--3,5), Yes (3,0--3,10), { LeadingKeyword = Let (3,0--3,3) InlineKeyword = None - EqualsRange = Some (3,6--3,7) })], (3,0--3,10)); + EqualsRange = Some (3,6--3,7) })], (3,0--3,10), + { InKeyword = None }); Types ([SynTypeDefn (SynComponentInfo @@ -79,7 +80,8 @@ ImplFile Const (Unit, (11,8--11,10)), (11,4--11,5), Yes (11,0--11,10), { LeadingKeyword = Let (11,0--11,3) InlineKeyword = None - EqualsRange = Some (11,6--11,7) })], (11,0--11,10))], + EqualsRange = Some (11,6--11,7) })], (11,0--11,10), + { InKeyword = None })], PreXmlDoc ((1,0), FSharp.Compiler.Xml.XmlDocCollector), [], None, (1,0--11,10), { LeadingKeyword = Module (1,0--1,6) })], (true, true), { ConditionalDirectives = []