diff --git a/src/AddIns/BackendBindings/Boo/NRefactoryToBooConverter/Project/ConvertVisitorLINQ.cs b/src/AddIns/BackendBindings/Boo/NRefactoryToBooConverter/Project/ConvertVisitorLINQ.cs index aa6ed46122..df0c858753 100644 --- a/src/AddIns/BackendBindings/Boo/NRefactoryToBooConverter/Project/ConvertVisitorLINQ.cs +++ b/src/AddIns/BackendBindings/Boo/NRefactoryToBooConverter/Project/ConvertVisitorLINQ.cs @@ -34,12 +34,6 @@ namespace NRefactoryToBooConverter return null; } - public object VisitQueryExpressionIntoClause(QueryExpressionIntoClause queryExpressionIntoClause, object data) - { - AddError(queryExpressionIntoClause, "QueryExpressionIntoClause is not supported."); - return null; - } - public object VisitQueryExpressionOrderClause(QueryExpressionOrderClause queryExpressionOrderClause, object data) { AddError(queryExpressionOrderClause, "QueryExpressionOrderClause is not supported."); diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs index c7f359e760..de72639276 100644 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs +++ b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs @@ -1171,11 +1171,6 @@ namespace ICSharpCode.PythonBinding return null; } - public object VisitQueryExpressionIntoClause(QueryExpressionIntoClause queryExpressionIntoClause, object data) - { - return null; - } - public object VisitQueryExpressionJoinClause(QueryExpressionJoinClause queryExpressionJoinClause, object data) { return null; diff --git a/src/AddIns/Misc/CodeCoverage/Project/CodeCoverage.csproj b/src/AddIns/Misc/CodeCoverage/Project/CodeCoverage.csproj index 9dd0f3db4d..5ec5903455 100644 --- a/src/AddIns/Misc/CodeCoverage/Project/CodeCoverage.csproj +++ b/src/AddIns/Misc/CodeCoverage/Project/CodeCoverage.csproj @@ -119,4 +119,4 @@ - + \ No newline at end of file diff --git a/src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/Expressions/NotImplementedAstVisitor.cs b/src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/Expressions/NotImplementedAstVisitor.cs index 8abf239d6a..cc1015c093 100644 --- a/src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/Expressions/NotImplementedAstVisitor.cs +++ b/src/AddIns/Misc/Debugger/Debugger.AddIn/Project/Src/Expressions/NotImplementedAstVisitor.cs @@ -393,11 +393,6 @@ namespace Debugger.AddIn throw new NotImplementedException("QueryExpressionGroupClause"); } - public virtual object VisitQueryExpressionIntoClause(QueryExpressionIntoClause queryExpressionIntoClause, object data) - { - throw new NotImplementedException("QueryExpressionIntoClause"); - } - public virtual object VisitQueryExpressionJoinClause(QueryExpressionJoinClause queryExpressionJoinClause, object data) { throw new NotImplementedException("QueryExpressionJoinClause"); diff --git a/src/Libraries/NRefactory/NRefactoryASTGenerator/AST/Expressions.cs b/src/Libraries/NRefactory/NRefactoryASTGenerator/AST/Expressions.cs index 9665d7ae13..045b1adc31 100644 --- a/src/Libraries/NRefactory/NRefactoryASTGenerator/AST/Expressions.cs +++ b/src/Libraries/NRefactory/NRefactoryASTGenerator/AST/Expressions.cs @@ -261,17 +261,14 @@ namespace NRefactoryASTGenerator.Ast /// QueryExpressionFromClause fromClause; + bool isQueryContinuation; + List middleClauses; /// /// C# only. /// QueryExpressionClause selectOrGroupClause; - - /// - /// C# only. - /// - QueryExpressionIntoClause intoClause; } [ImplementNullable] @@ -378,12 +375,4 @@ namespace NRefactoryASTGenerator.Ast QueryExpressionJoinVBClause joinClause; List intoVariables; } - - [ImplementNullable(NullableImplementation.Shadow)] - class QueryExpressionIntoClause : QueryExpressionClause { - [QuestionMarkDefault] - string intoIdentifier; - - QueryExpression continuedQuery; - } } diff --git a/src/Libraries/NRefactory/NRefactoryASTGenerator/Main.cs b/src/Libraries/NRefactory/NRefactoryASTGenerator/Main.cs index 7a1f1aded7..d57354b1fa 100644 --- a/src/Libraries/NRefactory/NRefactoryASTGenerator/Main.cs +++ b/src/Libraries/NRefactory/NRefactoryASTGenerator/Main.cs @@ -381,7 +381,7 @@ namespace NRefactoryASTGenerator p.SetStatements.Add(new CodeSnippetStatement("\t\t\t\tif (!" +field.Name+".IsNull) "+field.Name+".Parent = this;")); } } - foreach (ConstructorInfo ctor in type.GetConstructors()) { + foreach (ConstructorInfo ctor in type.GetConstructors(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance)) { CodeConstructor c = new CodeConstructor(); if (type.IsAbstract) c.Attributes = MemberAttributes.Family; diff --git a/src/Libraries/NRefactory/Project/Src/Ast/Generated.cs b/src/Libraries/NRefactory/Project/Src/Ast/Generated.cs index 02db5f41e1..f060198dc6 100644 --- a/src/Libraries/NRefactory/Project/Src/Ast/Generated.cs +++ b/src/Libraries/NRefactory/Project/Src/Ast/Generated.cs @@ -1573,12 +1573,6 @@ namespace ICSharpCode.NRefactory.Ast { initializer = Expression.Null; } - public bool HasAddRegion { - get { - return !addRegion.IsNull; - } - } - public bool HasRemoveRegion { get { return !removeRegion.IsNull; @@ -1591,6 +1585,12 @@ namespace ICSharpCode.NRefactory.Ast { } } + public bool HasAddRegion { + get { + return !addRegion.IsNull; + } + } + public override object AcceptVisitor(IAstVisitor visitor, object data) { return visitor.VisitEventDeclaration(this, data); } @@ -2299,18 +2299,6 @@ namespace ICSharpCode.NRefactory.Ast { elseIfSections = new List(); } - public bool HasElseIfSections { - get { - return elseIfSections.Count > 0; - } - } - - public bool HasElseStatements { - get { - return falseStatement.Count > 0; - } - } - public IfElseStatement(Expression condition, Statement trueStatement) : this(condition) { @@ -2327,6 +2315,18 @@ namespace ICSharpCode.NRefactory.Ast { if (falseStatement != null) falseStatement.Parent = this; } + public bool HasElseStatements { + get { + return falseStatement.Count > 0; + } + } + + public bool HasElseIfSections { + get { + return elseIfSections.Count > 0; + } + } + public override object AcceptVisitor(IAstVisitor visitor, object data) { return visitor.VisitIfElseStatement(this, data); } @@ -2440,9 +2440,9 @@ namespace ICSharpCode.NRefactory.Ast { setRegion = PropertySetRegion.Null; } - public bool IsWriteOnly { + public bool IsReadOnly { get { - return !HasGetRegion && HasSetRegion; + return HasGetRegion && !HasSetRegion; } } @@ -2458,9 +2458,9 @@ namespace ICSharpCode.NRefactory.Ast { } } - public bool IsReadOnly { + public bool IsWriteOnly { get { - return HasGetRegion && !HasSetRegion; + return !HasGetRegion && HasSetRegion; } } @@ -3368,12 +3368,6 @@ public Location ExtendedEndLocation { get; set; } } } - public bool IsWriteOnly { - get { - return !HasGetRegion && HasSetRegion; - } - } - public bool HasSetRegion { get { return !setRegion.IsNull; @@ -3398,6 +3392,12 @@ public Location ExtendedEndLocation { get; set; } } } + public bool IsWriteOnly { + get { + return !HasGetRegion && HasSetRegion; + } + } + public override object AcceptVisitor(IAstVisitor visitor, object data) { return visitor.VisitPropertyDeclaration(this, data); } @@ -3539,12 +3539,12 @@ public Location ExtendedEndLocation { get; set; } QueryExpressionFromClause fromClause; + bool isQueryContinuation; + List middleClauses; QueryExpressionClause selectOrGroupClause; - QueryExpressionIntoClause intoClause; - public QueryExpressionFromClause FromClause { get { return fromClause; @@ -3555,6 +3555,15 @@ public Location ExtendedEndLocation { get; set; } } } + public bool IsQueryContinuation { + get { + return isQueryContinuation; + } + set { + isQueryContinuation = value; + } + } + public List MiddleClauses { get { return middleClauses; @@ -3574,21 +3583,10 @@ public Location ExtendedEndLocation { get; set; } } } - public QueryExpressionIntoClause IntoClause { - get { - return intoClause; - } - set { - intoClause = value ?? QueryExpressionIntoClause.Null; - if (!intoClause.IsNull) intoClause.Parent = this; - } - } - public QueryExpression() { fromClause = QueryExpressionFromClause.Null; middleClauses = new List(); selectOrGroupClause = QueryExpressionClause.Null; - intoClause = QueryExpressionIntoClause.Null; } public new static QueryExpression Null { @@ -3602,8 +3600,8 @@ public Location ExtendedEndLocation { get; set; } } public override string ToString() { - return string.Format("[QueryExpression FromClause={0} MiddleClauses={1} SelectOrGroupClause={2} IntoCla" + - "use={3}]", FromClause, GetCollectionString(MiddleClauses), SelectOrGroupClause, IntoClause); + return string.Format("[QueryExpression FromClause={0} IsQueryContinuation={1} MiddleClauses={2} SelectO" + + "rGroupClause={3}]", FromClause, IsQueryContinuation, GetCollectionString(MiddleClauses), SelectOrGroupClause); } } @@ -3680,6 +3678,9 @@ public Location ExtendedEndLocation { get; set; } public abstract class QueryExpressionClause : AbstractNode, INullable { + protected QueryExpressionClause() { + } + public virtual bool IsNull { get { return false; @@ -3800,6 +3801,12 @@ public Location ExtendedEndLocation { get; set; } if (!inExpression.IsNull) inExpression.Parent = this; } } + + protected QueryExpressionFromOrJoinClause() { + type = TypeReference.Null; + identifier = "?"; + inExpression = Expression.Null; + } } public class QueryExpressionGroupClause : QueryExpressionClause { @@ -3932,70 +3939,6 @@ public Location ExtendedEndLocation { get; set; } } } - public class QueryExpressionIntoClause : QueryExpressionClause { - - string intoIdentifier; - - QueryExpression continuedQuery; - - public string IntoIdentifier { - get { - return intoIdentifier; - } - set { - intoIdentifier = string.IsNullOrEmpty(value) ? "?" : value; - } - } - - public QueryExpression ContinuedQuery { - get { - return continuedQuery; - } - set { - continuedQuery = value ?? QueryExpression.Null; - if (!continuedQuery.IsNull) continuedQuery.Parent = this; - } - } - - public QueryExpressionIntoClause() { - intoIdentifier = "?"; - continuedQuery = QueryExpression.Null; - } - - public new static QueryExpressionIntoClause Null { - get { - return NullQueryExpressionIntoClause.Instance; - } - } - - public override object AcceptVisitor(IAstVisitor visitor, object data) { - return visitor.VisitQueryExpressionIntoClause(this, data); - } - - public override string ToString() { - return string.Format("[QueryExpressionIntoClause IntoIdentifier={0} ContinuedQuery={1}]", IntoIdentifier, ContinuedQuery); - } - } - - internal sealed class NullQueryExpressionIntoClause : QueryExpressionIntoClause { - - internal static NullQueryExpressionIntoClause Instance = new NullQueryExpressionIntoClause(); - - public override bool IsNull { - get { - return true; - } - } - - public override object AcceptVisitor(IAstVisitor visitor, object data) { - return null; - } - - public override string ToString() { - return "[NullQueryExpressionIntoClause]"; - } - } - public class QueryExpressionJoinClause : QueryExpressionFromOrJoinClause { Expression onExpression; @@ -5416,15 +5359,15 @@ public UsingDeclaration(string @namespace, TypeReference alias) { usings = new L Statement = statement; } - public bool IsYieldReturn { + public bool IsYieldBreak { get { - return statement is ReturnStatement; + return statement is BreakStatement; } } - public bool IsYieldBreak { + public bool IsYieldReturn { get { - return statement is BreakStatement; + return statement is ReturnStatement; } } diff --git a/src/Libraries/NRefactory/Project/Src/IAstVisitor.cs b/src/Libraries/NRefactory/Project/Src/IAstVisitor.cs index 8ba4e7eb86..547db016e9 100644 --- a/src/Libraries/NRefactory/Project/Src/IAstVisitor.cs +++ b/src/Libraries/NRefactory/Project/Src/IAstVisitor.cs @@ -177,8 +177,6 @@ namespace ICSharpCode.NRefactory { object VisitQueryExpressionGroupVBClause(QueryExpressionGroupVBClause queryExpressionGroupVBClause, object data); - object VisitQueryExpressionIntoClause(QueryExpressionIntoClause queryExpressionIntoClause, object data); - object VisitQueryExpressionJoinClause(QueryExpressionJoinClause queryExpressionJoinClause, object data); object VisitQueryExpressionJoinConditionVB(QueryExpressionJoinConditionVB queryExpressionJoinConditionVB, object data); diff --git a/src/Libraries/NRefactory/Project/Src/Parser/CSharp/Parser.cs b/src/Libraries/NRefactory/Project/Src/Parser/CSharp/Parser.cs index 6210e5ebf3..53310ac66a 100644 --- a/src/Libraries/NRefactory/Project/Src/Parser/CSharp/Parser.cs +++ b/src/Libraries/NRefactory/Project/Src/Parser/CSharp/Parser.cs @@ -4720,10 +4720,12 @@ out fromClause); q.FromClause = fromClause; QueryExpressionBody( #line 2360 "cs.ATG" -q); +ref q); #line 2361 "cs.ATG" q.EndLocation = t.EndLocation; + outExpr = q; /* set outExpr to q again if QueryExpressionBody changed it (can happen with 'into' clauses) */ + } void ShortedLambdaExpression( @@ -5511,331 +5513,328 @@ out t); } void QueryExpressionFromClause( -#line 2364 "cs.ATG" +#line 2366 "cs.ATG" out QueryExpressionFromClause fc) { -#line 2365 "cs.ATG" +#line 2367 "cs.ATG" fc = new QueryExpressionFromClause(); fc.StartLocation = la.Location; Expect(137); QueryExpressionFromOrJoinClause( -#line 2369 "cs.ATG" +#line 2371 "cs.ATG" fc); -#line 2370 "cs.ATG" +#line 2372 "cs.ATG" fc.EndLocation = t.EndLocation; } void QueryExpressionBody( -#line 2400 "cs.ATG" -QueryExpression q) { +#line 2402 "cs.ATG" +ref QueryExpression q) { -#line 2401 "cs.ATG" +#line 2403 "cs.ATG" QueryExpressionFromClause fromClause; QueryExpressionWhereClause whereClause; QueryExpressionLetClause letClause; QueryExpressionJoinClause joinClause; QueryExpressionOrderClause orderClause; QueryExpressionSelectClause selectClause; QueryExpressionGroupClause groupClause; - QueryExpressionIntoClause intoClause; while (StartOf(39)) { if (la.kind == 137) { QueryExpressionFromClause( -#line 2408 "cs.ATG" +#line 2409 "cs.ATG" out fromClause); -#line 2408 "cs.ATG" +#line 2409 "cs.ATG" SafeAdd(q, q.MiddleClauses, fromClause); } else if (la.kind == 127) { QueryExpressionWhereClause( -#line 2409 "cs.ATG" +#line 2410 "cs.ATG" out whereClause); -#line 2409 "cs.ATG" +#line 2410 "cs.ATG" SafeAdd(q, q.MiddleClauses, whereClause); } else if (la.kind == 141) { QueryExpressionLetClause( -#line 2410 "cs.ATG" +#line 2411 "cs.ATG" out letClause); -#line 2410 "cs.ATG" +#line 2411 "cs.ATG" SafeAdd(q, q.MiddleClauses, letClause); } else if (la.kind == 142) { QueryExpressionJoinClause( -#line 2411 "cs.ATG" +#line 2412 "cs.ATG" out joinClause); -#line 2411 "cs.ATG" +#line 2412 "cs.ATG" SafeAdd(q, q.MiddleClauses, joinClause); } else { QueryExpressionOrderByClause( -#line 2412 "cs.ATG" +#line 2413 "cs.ATG" out orderClause); -#line 2412 "cs.ATG" +#line 2413 "cs.ATG" SafeAdd(q, q.MiddleClauses, orderClause); } } if (la.kind == 133) { QueryExpressionSelectClause( -#line 2414 "cs.ATG" +#line 2415 "cs.ATG" out selectClause); -#line 2414 "cs.ATG" +#line 2415 "cs.ATG" q.SelectOrGroupClause = selectClause; } else if (la.kind == 134) { QueryExpressionGroupClause( -#line 2415 "cs.ATG" +#line 2416 "cs.ATG" out groupClause); -#line 2415 "cs.ATG" +#line 2416 "cs.ATG" q.SelectOrGroupClause = groupClause; } else SynErr(219); if (la.kind == 136) { QueryExpressionIntoClause( -#line 2417 "cs.ATG" -out intoClause); - -#line 2417 "cs.ATG" - q.IntoClause = intoClause; +#line 2418 "cs.ATG" +ref q); } } void QueryExpressionFromOrJoinClause( -#line 2390 "cs.ATG" +#line 2392 "cs.ATG" QueryExpressionFromOrJoinClause fjc) { -#line 2391 "cs.ATG" +#line 2393 "cs.ATG" TypeReference type; Expression expr; -#line 2393 "cs.ATG" +#line 2395 "cs.ATG" fjc.Type = null; if ( -#line 2394 "cs.ATG" +#line 2396 "cs.ATG" IsLocalVarDecl()) { Type( -#line 2394 "cs.ATG" +#line 2396 "cs.ATG" out type); -#line 2394 "cs.ATG" +#line 2396 "cs.ATG" fjc.Type = type; } Identifier(); -#line 2395 "cs.ATG" +#line 2397 "cs.ATG" fjc.Identifier = t.val; Expect(81); Expr( -#line 2397 "cs.ATG" +#line 2399 "cs.ATG" out expr); -#line 2397 "cs.ATG" +#line 2399 "cs.ATG" fjc.InExpression = expr; } void QueryExpressionJoinClause( -#line 2373 "cs.ATG" +#line 2375 "cs.ATG" out QueryExpressionJoinClause jc) { -#line 2374 "cs.ATG" +#line 2376 "cs.ATG" jc = new QueryExpressionJoinClause(); jc.StartLocation = la.Location; Expression expr; Expect(142); QueryExpressionFromOrJoinClause( -#line 2379 "cs.ATG" +#line 2381 "cs.ATG" jc); Expect(143); Expr( -#line 2381 "cs.ATG" +#line 2383 "cs.ATG" out expr); -#line 2381 "cs.ATG" +#line 2383 "cs.ATG" jc.OnExpression = expr; Expect(144); Expr( -#line 2383 "cs.ATG" +#line 2385 "cs.ATG" out expr); -#line 2383 "cs.ATG" +#line 2385 "cs.ATG" jc.EqualsExpression = expr; if (la.kind == 136) { lexer.NextToken(); Identifier(); -#line 2385 "cs.ATG" +#line 2387 "cs.ATG" jc.IntoIdentifier = t.val; } -#line 2387 "cs.ATG" +#line 2389 "cs.ATG" jc.EndLocation = t.EndLocation; } void QueryExpressionWhereClause( -#line 2420 "cs.ATG" +#line 2421 "cs.ATG" out QueryExpressionWhereClause wc) { -#line 2421 "cs.ATG" +#line 2422 "cs.ATG" Expression expr; wc = new QueryExpressionWhereClause(); wc.StartLocation = la.Location; Expect(127); Expr( -#line 2424 "cs.ATG" +#line 2425 "cs.ATG" out expr); -#line 2424 "cs.ATG" +#line 2425 "cs.ATG" wc.Condition = expr; -#line 2425 "cs.ATG" +#line 2426 "cs.ATG" wc.EndLocation = t.EndLocation; } void QueryExpressionLetClause( -#line 2428 "cs.ATG" +#line 2429 "cs.ATG" out QueryExpressionLetClause wc) { -#line 2429 "cs.ATG" +#line 2430 "cs.ATG" Expression expr; wc = new QueryExpressionLetClause(); wc.StartLocation = la.Location; Expect(141); Identifier(); -#line 2432 "cs.ATG" +#line 2433 "cs.ATG" wc.Identifier = t.val; Expect(3); Expr( -#line 2434 "cs.ATG" +#line 2435 "cs.ATG" out expr); -#line 2434 "cs.ATG" +#line 2435 "cs.ATG" wc.Expression = expr; -#line 2435 "cs.ATG" +#line 2436 "cs.ATG" wc.EndLocation = t.EndLocation; } void QueryExpressionOrderByClause( -#line 2438 "cs.ATG" +#line 2439 "cs.ATG" out QueryExpressionOrderClause oc) { -#line 2439 "cs.ATG" +#line 2440 "cs.ATG" QueryExpressionOrdering ordering; oc = new QueryExpressionOrderClause(); oc.StartLocation = la.Location; Expect(140); QueryExpressionOrdering( -#line 2442 "cs.ATG" +#line 2443 "cs.ATG" out ordering); -#line 2442 "cs.ATG" +#line 2443 "cs.ATG" SafeAdd(oc, oc.Orderings, ordering); while (la.kind == 14) { lexer.NextToken(); QueryExpressionOrdering( -#line 2444 "cs.ATG" +#line 2445 "cs.ATG" out ordering); -#line 2444 "cs.ATG" +#line 2445 "cs.ATG" SafeAdd(oc, oc.Orderings, ordering); } -#line 2446 "cs.ATG" +#line 2447 "cs.ATG" oc.EndLocation = t.EndLocation; } void QueryExpressionSelectClause( -#line 2459 "cs.ATG" +#line 2460 "cs.ATG" out QueryExpressionSelectClause sc) { -#line 2460 "cs.ATG" +#line 2461 "cs.ATG" Expression expr; sc = new QueryExpressionSelectClause(); sc.StartLocation = la.Location; Expect(133); Expr( -#line 2463 "cs.ATG" +#line 2464 "cs.ATG" out expr); -#line 2463 "cs.ATG" +#line 2464 "cs.ATG" sc.Projection = expr; -#line 2464 "cs.ATG" +#line 2465 "cs.ATG" sc.EndLocation = t.EndLocation; } void QueryExpressionGroupClause( -#line 2467 "cs.ATG" +#line 2468 "cs.ATG" out QueryExpressionGroupClause gc) { -#line 2468 "cs.ATG" +#line 2469 "cs.ATG" Expression expr; gc = new QueryExpressionGroupClause(); gc.StartLocation = la.Location; Expect(134); Expr( -#line 2471 "cs.ATG" +#line 2472 "cs.ATG" out expr); -#line 2471 "cs.ATG" +#line 2472 "cs.ATG" gc.Projection = expr; Expect(135); Expr( -#line 2473 "cs.ATG" +#line 2474 "cs.ATG" out expr); -#line 2473 "cs.ATG" +#line 2474 "cs.ATG" gc.GroupBy = expr; -#line 2474 "cs.ATG" +#line 2475 "cs.ATG" gc.EndLocation = t.EndLocation; } void QueryExpressionIntoClause( -#line 2477 "cs.ATG" -out QueryExpressionIntoClause ic) { - #line 2478 "cs.ATG" - ic = new QueryExpressionIntoClause(); ic.StartLocation = la.Location; +ref QueryExpression q) { + +#line 2479 "cs.ATG" + QueryExpression firstQuery = q; + QueryExpression continuedQuery = new QueryExpression(); + continuedQuery.StartLocation = q.StartLocation; + firstQuery.EndLocation = la.Location; + continuedQuery.FromClause = new QueryExpressionFromClause(); + continuedQuery.FromClause.StartLocation = la.Location; + // nest firstQuery inside continuedQuery. + continuedQuery.FromClause.InExpression = firstQuery; + continuedQuery.IsQueryContinuation = true; + q = continuedQuery; + Expect(136); Identifier(); -#line 2481 "cs.ATG" - ic.IntoIdentifier = t.val; - -#line 2482 "cs.ATG" - ic.ContinuedQuery = new QueryExpression(); +#line 2492 "cs.ATG" + continuedQuery.FromClause.Identifier = t.val; -#line 2483 "cs.ATG" - ic.ContinuedQuery.StartLocation = la.Location; +#line 2493 "cs.ATG" + continuedQuery.FromClause.EndLocation = t.EndLocation; QueryExpressionBody( -#line 2484 "cs.ATG" -ic.ContinuedQuery); - -#line 2485 "cs.ATG" - ic.ContinuedQuery.EndLocation = t.EndLocation; - -#line 2486 "cs.ATG" - ic.EndLocation = t.EndLocation; +#line 2494 "cs.ATG" +ref q); } void QueryExpressionOrdering( -#line 2449 "cs.ATG" +#line 2450 "cs.ATG" out QueryExpressionOrdering ordering) { -#line 2450 "cs.ATG" +#line 2451 "cs.ATG" Expression expr; ordering = new QueryExpressionOrdering(); ordering.StartLocation = la.Location; Expr( -#line 2452 "cs.ATG" +#line 2453 "cs.ATG" out expr); -#line 2452 "cs.ATG" +#line 2453 "cs.ATG" ordering.Criteria = expr; if (la.kind == 138 || la.kind == 139) { if (la.kind == 138) { lexer.NextToken(); -#line 2453 "cs.ATG" +#line 2454 "cs.ATG" ordering.Direction = QueryExpressionOrderingDirection.Ascending; } else { lexer.NextToken(); -#line 2454 "cs.ATG" +#line 2455 "cs.ATG" ordering.Direction = QueryExpressionOrderingDirection.Descending; } } -#line 2456 "cs.ATG" +#line 2457 "cs.ATG" ordering.EndLocation = t.EndLocation; } diff --git a/src/Libraries/NRefactory/Project/Src/Parser/CSharp/cs.ATG b/src/Libraries/NRefactory/Project/Src/Parser/CSharp/cs.ATG index b469fde990..793a61da0f 100644 --- a/src/Libraries/NRefactory/Project/Src/Parser/CSharp/cs.ATG +++ b/src/Libraries/NRefactory/Project/Src/Parser/CSharp/cs.ATG @@ -2357,8 +2357,10 @@ QueryExpression .) = QueryExpressionFromClause (. q.FromClause = fromClause; .) - QueryExpressionBody - (. q.EndLocation = t.EndLocation; .) + QueryExpressionBody + (. q.EndLocation = t.EndLocation; + outExpr = q; /* set outExpr to q again if QueryExpressionBody changed it (can happen with 'into' clauses) */ + .) . QueryExpressionFromClause @@ -2397,12 +2399,11 @@ QueryExpressionFromOrJoinClause Expr (. fjc.InExpression = expr; .) . -QueryExpressionBody +QueryExpressionBody (. QueryExpressionFromClause fromClause; QueryExpressionWhereClause whereClause; QueryExpressionLetClause letClause; QueryExpressionJoinClause joinClause; QueryExpressionOrderClause orderClause; QueryExpressionSelectClause selectClause; QueryExpressionGroupClause groupClause; - QueryExpressionIntoClause intoClause; .) = { ( QueryExpressionFromClause (. SafeAdd(q, q.MiddleClauses, fromClause); .) @@ -2414,7 +2415,7 @@ QueryExpressionBody ( QueryExpressionSelectClause (. q.SelectOrGroupClause = selectClause; .) | QueryExpressionGroupClause (. q.SelectOrGroupClause = groupClause; .) ) - [ QueryExpressionIntoClause (. q.IntoClause = intoClause; .) ] + [ QueryExpressionIntoClause ] . QueryExpressionWhereClause @@ -2474,16 +2475,23 @@ QueryExpressionGroupClause (. gc.EndLocation = t.EndLocation; .) . -QueryExpressionIntoClause -(. ic = new QueryExpressionIntoClause(); ic.StartLocation = la.Location; .) +QueryExpressionIntoClause +(. QueryExpression firstQuery = q; + QueryExpression continuedQuery = new QueryExpression(); + continuedQuery.StartLocation = q.StartLocation; + firstQuery.EndLocation = la.Location; + continuedQuery.FromClause = new QueryExpressionFromClause(); + continuedQuery.FromClause.StartLocation = la.Location; + // nest firstQuery inside continuedQuery. + continuedQuery.FromClause.InExpression = firstQuery; + continuedQuery.IsQueryContinuation = true; + q = continuedQuery; +.) = "into" - Identifier (. ic.IntoIdentifier = t.val; .) - (. ic.ContinuedQuery = new QueryExpression(); .) - (. ic.ContinuedQuery.StartLocation = la.Location; .) - QueryExpressionBody - (. ic.ContinuedQuery.EndLocation = t.EndLocation; .) - (. ic.EndLocation = t.EndLocation; .) + Identifier (. continuedQuery.FromClause.Identifier = t.val; .) + (. continuedQuery.FromClause.EndLocation = t.EndLocation; .) + QueryExpressionBody . /* allow usage of context sensitive keywords as identifiers */ diff --git a/src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/CSharpOutputVisitor.cs b/src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/CSharpOutputVisitor.cs index 242dbb0793..1bf8da9f85 100644 --- a/src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/CSharpOutputVisitor.cs +++ b/src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/CSharpOutputVisitor.cs @@ -2618,11 +2618,20 @@ namespace ICSharpCode.NRefactory.PrettyPrinter public override object TrackedVisitQueryExpression(QueryExpression queryExpression, object data) { + if (queryExpression.IsQueryContinuation) { + queryExpression.FromClause.InExpression.AcceptVisitor(this, data); + } outputFormatter.IndentationLevel++; - queryExpression.FromClause.AcceptVisitor(this, data); + if (queryExpression.IsQueryContinuation) { + outputFormatter.Space(); + outputFormatter.PrintToken(Tokens.Into); + outputFormatter.Space(); + outputFormatter.PrintIdentifier(queryExpression.FromClause.Identifier); + } else { + queryExpression.FromClause.AcceptVisitor(this, data); + } queryExpression.MiddleClauses.ForEach(PrintClause); PrintClause(queryExpression.SelectOrGroupClause); - PrintClause(queryExpression.IntoClause); outputFormatter.IndentationLevel--; return null; } @@ -2697,15 +2706,6 @@ namespace ICSharpCode.NRefactory.PrettyPrinter return groupClause.GroupBy.AcceptVisitor(this, data); } - public override object TrackedVisitQueryExpressionIntoClause(QueryExpressionIntoClause intoClause, object data) - { - outputFormatter.PrintToken(Tokens.Into); - outputFormatter.Space(); - outputFormatter.PrintIdentifier(intoClause.IntoIdentifier); - outputFormatter.Space(); - return intoClause.ContinuedQuery.AcceptVisitor(this, data); - } - public override object TrackedVisitQueryExpressionOrderClause(QueryExpressionOrderClause queryExpressionOrderClause, object data) { outputFormatter.PrintToken(Tokens.Orderby); diff --git a/src/Libraries/NRefactory/Project/Src/PrettyPrinter/VBNet/VBNetOutputVisitor.cs b/src/Libraries/NRefactory/Project/Src/PrettyPrinter/VBNet/VBNetOutputVisitor.cs index cefc1dc841..a7509a03a4 100644 --- a/src/Libraries/NRefactory/Project/Src/PrettyPrinter/VBNet/VBNetOutputVisitor.cs +++ b/src/Libraries/NRefactory/Project/Src/PrettyPrinter/VBNet/VBNetOutputVisitor.cs @@ -2848,11 +2848,18 @@ namespace ICSharpCode.NRefactory.PrettyPrinter public override object TrackedVisitQueryExpression(QueryExpression queryExpression, object data) { + if (queryExpression.IsQueryContinuation) { + queryExpression.FromClause.InExpression.AcceptVisitor(this, data); + } outputFormatter.IndentationLevel++; - queryExpression.FromClause.AcceptVisitor(this, data); + if (queryExpression.IsQueryContinuation) { + outputFormatter.PrintToken(Tokens.Into); + outputFormatter.PrintIdentifier(queryExpression.FromClause.Identifier); + } else { + queryExpression.FromClause.AcceptVisitor(this, data); + } queryExpression.MiddleClauses.ForEach(PrintClause); PrintClause(queryExpression.SelectOrGroupClause); - PrintClause(queryExpression.IntoClause); outputFormatter.IndentationLevel--; return null; } @@ -2927,15 +2934,6 @@ namespace ICSharpCode.NRefactory.PrettyPrinter return groupClause.GroupBy.AcceptVisitor(this, data); } - public override object TrackedVisitQueryExpressionIntoClause(QueryExpressionIntoClause intoClause, object data) - { - outputFormatter.PrintText("Into"); - outputFormatter.Space(); - outputFormatter.PrintIdentifier(intoClause.IntoIdentifier); - outputFormatter.Space(); - return intoClause.ContinuedQuery.AcceptVisitor(this, data); - } - public override object TrackedVisitQueryExpressionOrderClause(QueryExpressionOrderClause queryExpressionOrderClause, object data) { outputFormatter.PrintText("Order By"); diff --git a/src/Libraries/NRefactory/Project/Src/Visitors/AbstractASTVisitor.cs b/src/Libraries/NRefactory/Project/Src/Visitors/AbstractASTVisitor.cs index 049090fca4..7fd81f3b7a 100644 --- a/src/Libraries/NRefactory/Project/Src/Visitors/AbstractASTVisitor.cs +++ b/src/Libraries/NRefactory/Project/Src/Visitors/AbstractASTVisitor.cs @@ -841,14 +841,12 @@ namespace ICSharpCode.NRefactory.Visitors { Debug.Assert((queryExpression.FromClause != null)); Debug.Assert((queryExpression.MiddleClauses != null)); Debug.Assert((queryExpression.SelectOrGroupClause != null)); - Debug.Assert((queryExpression.IntoClause != null)); queryExpression.FromClause.AcceptVisitor(this, data); foreach (QueryExpressionClause o in queryExpression.MiddleClauses) { Debug.Assert(o != null); o.AcceptVisitor(this, data); } - queryExpression.SelectOrGroupClause.AcceptVisitor(this, data); - return queryExpression.IntoClause.AcceptVisitor(this, data); + return queryExpression.SelectOrGroupClause.AcceptVisitor(this, data); } public virtual object VisitQueryExpressionAggregateClause(QueryExpressionAggregateClause queryExpressionAggregateClause, object data) { @@ -921,12 +919,6 @@ namespace ICSharpCode.NRefactory.Visitors { return null; } - public virtual object VisitQueryExpressionIntoClause(QueryExpressionIntoClause queryExpressionIntoClause, object data) { - Debug.Assert((queryExpressionIntoClause != null)); - Debug.Assert((queryExpressionIntoClause.ContinuedQuery != null)); - return queryExpressionIntoClause.ContinuedQuery.AcceptVisitor(this, data); - } - public virtual object VisitQueryExpressionJoinClause(QueryExpressionJoinClause queryExpressionJoinClause, object data) { Debug.Assert((queryExpressionJoinClause != null)); Debug.Assert((queryExpressionJoinClause.Type != null)); diff --git a/src/Libraries/NRefactory/Project/Src/Visitors/AbstractAstTransformer.cs b/src/Libraries/NRefactory/Project/Src/Visitors/AbstractAstTransformer.cs index 87e6639dc6..2782211873 100644 --- a/src/Libraries/NRefactory/Project/Src/Visitors/AbstractAstTransformer.cs +++ b/src/Libraries/NRefactory/Project/Src/Visitors/AbstractAstTransformer.cs @@ -1546,7 +1546,6 @@ namespace ICSharpCode.NRefactory.Visitors { Debug.Assert((queryExpression.FromClause != null)); Debug.Assert((queryExpression.MiddleClauses != null)); Debug.Assert((queryExpression.SelectOrGroupClause != null)); - Debug.Assert((queryExpression.IntoClause != null)); nodeStack.Push(queryExpression.FromClause); queryExpression.FromClause.AcceptVisitor(this, data); queryExpression.FromClause = ((QueryExpressionFromClause)(nodeStack.Pop())); @@ -1564,9 +1563,6 @@ namespace ICSharpCode.NRefactory.Visitors { nodeStack.Push(queryExpression.SelectOrGroupClause); queryExpression.SelectOrGroupClause.AcceptVisitor(this, data); queryExpression.SelectOrGroupClause = ((QueryExpressionClause)(nodeStack.Pop())); - nodeStack.Push(queryExpression.IntoClause); - queryExpression.IntoClause.AcceptVisitor(this, data); - queryExpression.IntoClause = ((QueryExpressionIntoClause)(nodeStack.Pop())); return null; } @@ -1696,15 +1692,6 @@ namespace ICSharpCode.NRefactory.Visitors { return null; } - public virtual object VisitQueryExpressionIntoClause(QueryExpressionIntoClause queryExpressionIntoClause, object data) { - Debug.Assert((queryExpressionIntoClause != null)); - Debug.Assert((queryExpressionIntoClause.ContinuedQuery != null)); - nodeStack.Push(queryExpressionIntoClause.ContinuedQuery); - queryExpressionIntoClause.ContinuedQuery.AcceptVisitor(this, data); - queryExpressionIntoClause.ContinuedQuery = ((QueryExpression)(nodeStack.Pop())); - return null; - } - public virtual object VisitQueryExpressionJoinClause(QueryExpressionJoinClause queryExpressionJoinClause, object data) { Debug.Assert((queryExpressionJoinClause != null)); Debug.Assert((queryExpressionJoinClause.Type != null)); diff --git a/src/Libraries/NRefactory/Project/Src/Visitors/LookupTableVisitor.cs b/src/Libraries/NRefactory/Project/Src/Visitors/LookupTableVisitor.cs index 447c480bef..d8e14d483a 100644 --- a/src/Libraries/NRefactory/Project/Src/Visitors/LookupTableVisitor.cs +++ b/src/Libraries/NRefactory/Project/Src/Visitors/LookupTableVisitor.cs @@ -150,9 +150,7 @@ namespace ICSharpCode.NRefactory.Visitors Location GetQueryVariableEndScope(QueryExpression queryExpression) { - return queryExpression.IntoClause.IsNull - ? queryExpression.EndLocation - : queryExpression.IntoClause.StartLocation; + return queryExpression.EndLocation; } public override object VisitQueryExpressionFromClause(QueryExpressionFromClause fromClause, object data) @@ -163,26 +161,6 @@ namespace ICSharpCode.NRefactory.Visitors return base.VisitQueryExpressionFromClause(fromClause, data); } - public override object VisitQueryExpressionIntoClause(QueryExpressionIntoClause intoClause, object data) - { - QueryExpression parentExpression = intoClause.Parent as QueryExpression; - if (parentExpression != null) { - Expression initializer = null; - var selectClause = parentExpression.SelectOrGroupClause as QueryExpressionSelectClause; - if (selectClause != null) { - initializer = selectClause.Projection; - } else { - var groupByClause = parentExpression.SelectOrGroupClause as QueryExpressionGroupClause; - if (groupByClause != null) - initializer = groupByClause.Projection; - } - AddVariable(null, intoClause.IntoIdentifier, - intoClause.StartLocation, GetQueryVariableEndScope(intoClause.ContinuedQuery), - false, false, initializer, null); - } - return base.VisitQueryExpressionIntoClause(intoClause, data); - } - public override object VisitQueryExpressionJoinClause(QueryExpressionJoinClause joinClause, object data) { if (string.IsNullOrEmpty(joinClause.IntoIdentifier)) { diff --git a/src/Libraries/NRefactory/Project/Src/Visitors/NodeTrackingAstVisitor.cs b/src/Libraries/NRefactory/Project/Src/Visitors/NodeTrackingAstVisitor.cs index 5598c78d79..dc1c0ebcba 100644 --- a/src/Libraries/NRefactory/Project/Src/Visitors/NodeTrackingAstVisitor.cs +++ b/src/Libraries/NRefactory/Project/Src/Visitors/NodeTrackingAstVisitor.cs @@ -598,13 +598,6 @@ namespace ICSharpCode.NRefactory.Visitors { return result; } - public sealed override object VisitQueryExpressionIntoClause(QueryExpressionIntoClause queryExpressionIntoClause, object data) { - this.BeginVisit(queryExpressionIntoClause); - object result = this.TrackedVisitQueryExpressionIntoClause(queryExpressionIntoClause, data); - this.EndVisit(queryExpressionIntoClause); - return result; - } - public sealed override object VisitQueryExpressionJoinClause(QueryExpressionJoinClause queryExpressionJoinClause, object data) { this.BeginVisit(queryExpressionJoinClause); object result = this.TrackedVisitQueryExpressionJoinClause(queryExpressionJoinClause, data); @@ -1209,10 +1202,6 @@ namespace ICSharpCode.NRefactory.Visitors { return base.VisitQueryExpressionGroupVBClause(queryExpressionGroupVBClause, data); } - public virtual object TrackedVisitQueryExpressionIntoClause(QueryExpressionIntoClause queryExpressionIntoClause, object data) { - return base.VisitQueryExpressionIntoClause(queryExpressionIntoClause, data); - } - public virtual object TrackedVisitQueryExpressionJoinClause(QueryExpressionJoinClause queryExpressionJoinClause, object data) { return base.VisitQueryExpressionJoinClause(queryExpressionJoinClause, data); } diff --git a/src/SharpDevelop.Tests.sln b/src/SharpDevelop.Tests.sln index fb3b757d7a..9a05748d40 100644 --- a/src/SharpDevelop.Tests.sln +++ b/src/SharpDevelop.Tests.sln @@ -1,128 +1,134 @@  Microsoft Visual Studio Solution File, Format Version 10.00 # Visual Studio 2008 -# SharpDevelop 3.0.0.3638 +# SharpDevelop 3.0.0.3652 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AddIns", "AddIns", "{14A277EE-7DF1-4529-B639-7D1EF334C1C5}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceToolkit.Tests", "AddIns\Misc\ResourceToolkit\Test\ResourceToolkit.Tests.csproj", "{DD9AE6A5-2B9D-443A-BC71-38BE578C36BD}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceToolkit", "AddIns\Misc\ResourceToolkit\Project\ResourceToolkit.csproj", "{461606BD-E824-4D0A-8CBA-01810B1F5E02}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding.Tests", "AddIns\BackendBindings\VBNetBinding\Test\VBNetBinding.Tests.csproj", "{50A89267-A28B-4DF3-8E62-912E005143B8}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Boo", "Boo", "{5DA95927-5F2D-46D8-9265-D092734B6F0E}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Python", "Python", "{F94FA21D-78E6-410B-895D-E16D3E7240DB}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter.Tests", "AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Test\NRefactoryToBooConverter.Tests.csproj", "{C9DE556D-325C-4544-B29F-16A9EB7C9830}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter", "AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Project\NRefactoryToBooConverter.csproj", "{DBCF20A1-BA13-4582-BFA9-74DE4D987B73}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding.Tests", "AddIns\BackendBindings\Python\PythonBinding\Test\PythonBinding.Tests.csproj", "{23B517C9-1ECC-4419-A13F-0B7136D085CB}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding.Tests", "AddIns\BackendBindings\Boo\BooBinding\Test\BooBinding.Tests.csproj", "{6FA16499-896F-4C02-BB43-1AF5C6C7C713}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks.Tests", "AddIns\BackendBindings\Python\Python.Build.Tasks\Test\Python.Build.Tasks.Tests.csproj", "{833904AB-3CD4-4071-9B48-5770E44685AA}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding", "AddIns\BackendBindings\Boo\BooBinding\Project\BooBinding.csproj", "{4AC2D5F1-F671-480C-A075-6BF62B3721B2}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding", "AddIns\BackendBindings\Python\PythonBinding\Project\PythonBinding.csproj", "{8D732610-8FC6-43BA-94C9-7126FD7FE361}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace.Tests", "AddIns\Misc\SearchAndReplace\Test\SearchAndReplace.Tests.csproj", "{A569DCC1-C608-45FD-B770-4F79335EF154}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks", "AddIns\BackendBindings\Python\Python.Build.Tasks\Project\Python.Build.Tasks.csproj", "{D332F2D1-2CF1-43B7-903C-844BD5211A7E}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace", "AddIns\Misc\SearchAndReplace\Project\SearchAndReplace.csproj", "{9196DD8A-B4D4-4780-8742-C5762E547FC2}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharpBinding", "AddIns\BackendBindings\CSharpBinding\Project\CSharpBinding.csproj", "{1F1AC7CD-D154-45BB-8EAF-804CA8055F5A}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WpfDesign", "WpfDesign", "{C12B6EA7-2EFC-4368-B585-EC69EFCC3F97}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Debugger", "Debugger", "{6604365C-C702-4C10-9BA8-637F1E3D4D0D}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XamlBinding.Tests", "AddIns\BackendBindings\Xaml\XamlBinding.Tests\XamlBinding.Tests.csproj", "{F390DA70-1FE1-4715-81A0-389AB010C130}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Core", "AddIns\Misc\Debugger\Debugger.Core\Project\Debugger.Core.csproj", "{1D18D788-F7EE-4585-A23B-34DC8EC63CB8}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XamlBinding", "AddIns\BackendBindings\Xaml\XamlBinding\XamlBinding.csproj", "{7C96B65D-28A5-4F28-A35B-8D83CE831EE8}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.AddIn", "AddIns\Misc\Debugger\Debugger.AddIn\Project\Debugger.AddIn.csproj", "{EC06F96A-AEEC-49D6-B03D-AB87C6EB674C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting.Tests", "AddIns\Misc\UnitTesting\Test\UnitTesting.Tests.csproj", "{44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Tests", "AddIns\Misc\Debugger\Debugger.Tests\Project\Debugger.Tests.csproj", "{A4C858C8-51B6-4265-A695-A20FCEBA1D19}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding.Tests", "AddIns\BackendBindings\WixBinding\Test\WixBinding.Tests.csproj", "{388E7B64-0393-4EB4-A3E3-5C474F141853}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor", "AddIns\DisplayBindings\XmlEditor\Project\XmlEditor.csproj", "{6B717BD1-CD5E-498C-A42E-9E6A4584DC48}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding", "AddIns\BackendBindings\WixBinding\Project\WixBinding.csproj", "{e1b288a2-08ee-4318-8bbb-8ab72c69e33e}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor.Tests", "AddIns\DisplayBindings\XmlEditor\Test\XmlEditor.Tests.csproj", "{FC0FE702-A87D-4D70-A9B6-1ECCD611125F}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeAnalysis", "AddIns\Misc\CodeAnalysis\CodeAnalysis.csproj", "{3EAA45A9-735C-4AC7-A799-947B93EA449D}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding", "AddIns\BackendBindings\VBNetBinding\Project\VBNetBinding.csproj", "{BF38FB72-B380-4196-AF8C-95749D726C61}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FormsDesigner", "AddIns\DisplayBindings\FormsDesigner\Project\FormsDesigner.csproj", "{7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage.Tests", "AddIns\Misc\CodeCoverage\Test\CodeCoverage.Tests.csproj", "{A5C0E8F8-9D04-46ED-91D6-1DEF1575313B}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage", "AddIns\Misc\CodeCoverage\Project\CodeCoverage.csproj", "{08ce9972-283b-44f4-82fa-966f7dfa6b7a}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting", "AddIns\Misc\UnitTesting\UnitTesting.csproj", "{1F261725-6318-4434-A1B1-6C70CE4CD324}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage", "AddIns\Misc\CodeCoverage\Project\CodeCoverage.csproj", "{08ce9972-283b-44f4-82fa-966f7dfa6b7a}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FormsDesigner", "AddIns\DisplayBindings\FormsDesigner\Project\FormsDesigner.csproj", "{7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage.Tests", "AddIns\Misc\CodeCoverage\Test\CodeCoverage.Tests.csproj", "{A5C0E8F8-9D04-46ED-91D6-1DEF1575313B}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeAnalysis", "AddIns\Misc\CodeAnalysis\CodeAnalysis.csproj", "{3EAA45A9-735C-4AC7-A799-947B93EA449D}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding", "AddIns\BackendBindings\VBNetBinding\Project\VBNetBinding.csproj", "{BF38FB72-B380-4196-AF8C-95749D726C61}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding", "AddIns\BackendBindings\WixBinding\Project\WixBinding.csproj", "{e1b288a2-08ee-4318-8bbb-8ab72c69e33e}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor.Tests", "AddIns\DisplayBindings\XmlEditor\Test\XmlEditor.Tests.csproj", "{FC0FE702-A87D-4D70-A9B6-1ECCD611125F}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding.Tests", "AddIns\BackendBindings\WixBinding\Test\WixBinding.Tests.csproj", "{388E7B64-0393-4EB4-A3E3-5C474F141853}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor", "AddIns\DisplayBindings\XmlEditor\Project\XmlEditor.csproj", "{6B717BD1-CD5E-498C-A42E-9E6A4584DC48}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting.Tests", "AddIns\Misc\UnitTesting\Test\UnitTesting.Tests.csproj", "{44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Debugger", "Debugger", "{6604365C-C702-4C10-9BA8-637F1E3D4D0D}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WpfDesign", "WpfDesign", "{C12B6EA7-2EFC-4368-B585-EC69EFCC3F97}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Tests", "AddIns\Misc\Debugger\Debugger.Tests\Project\Debugger.Tests.csproj", "{A4C858C8-51B6-4265-A695-A20FCEBA1D19}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XamlBinding", "AddIns\BackendBindings\Xaml\XamlBinding\XamlBinding.csproj", "{7C96B65D-28A5-4F28-A35B-8D83CE831EE8}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.AddIn", "AddIns\Misc\Debugger\Debugger.AddIn\Project\Debugger.AddIn.csproj", "{EC06F96A-AEEC-49D6-B03D-AB87C6EB674C}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XamlBinding.Tests", "AddIns\BackendBindings\Xaml\XamlBinding.Tests\XamlBinding.Tests.csproj", "{F390DA70-1FE1-4715-81A0-389AB010C130}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Core", "AddIns\Misc\Debugger\Debugger.Core\Project\Debugger.Core.csproj", "{1D18D788-F7EE-4585-A23B-34DC8EC63CB8}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace", "AddIns\Misc\SearchAndReplace\Project\SearchAndReplace.csproj", "{9196DD8A-B4D4-4780-8742-C5762E547FC2}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharpBinding", "AddIns\BackendBindings\CSharpBinding\Project\CSharpBinding.csproj", "{1F1AC7CD-D154-45BB-8EAF-804CA8055F5A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace.Tests", "AddIns\Misc\SearchAndReplace\Test\SearchAndReplace.Tests.csproj", "{A569DCC1-C608-45FD-B770-4F79335EF154}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Python", "Python", "{F94FA21D-78E6-410B-895D-E16D3E7240DB}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Boo", "Boo", "{5DA95927-5F2D-46D8-9265-D092734B6F0E}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks", "AddIns\BackendBindings\Python\Python.Build.Tasks\Project\Python.Build.Tasks.csproj", "{D332F2D1-2CF1-43B7-903C-844BD5211A7E}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding", "AddIns\BackendBindings\Boo\BooBinding\Project\BooBinding.csproj", "{4AC2D5F1-F671-480C-A075-6BF62B3721B2}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding", "AddIns\BackendBindings\Python\PythonBinding\Project\PythonBinding.csproj", "{8D732610-8FC6-43BA-94C9-7126FD7FE361}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding.Tests", "AddIns\BackendBindings\Boo\BooBinding\Test\BooBinding.Tests.csproj", "{6FA16499-896F-4C02-BB43-1AF5C6C7C713}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks.Tests", "AddIns\BackendBindings\Python\Python.Build.Tasks\Test\Python.Build.Tasks.Tests.csproj", "{833904AB-3CD4-4071-9B48-5770E44685AA}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter", "AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Project\NRefactoryToBooConverter.csproj", "{DBCF20A1-BA13-4582-BFA9-74DE4D987B73}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding.Tests", "AddIns\BackendBindings\Python\PythonBinding\Test\PythonBinding.Tests.csproj", "{23B517C9-1ECC-4419-A13F-0B7136D085CB}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter.Tests", "AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Test\NRefactoryToBooConverter.Tests.csproj", "{C9DE556D-325C-4544-B29F-16A9EB7C9830}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding.Tests", "AddIns\BackendBindings\VBNetBinding\Test\VBNetBinding.Tests.csproj", "{50A89267-A28B-4DF3-8E62-912E005143B8}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceToolkit", "AddIns\Misc\ResourceToolkit\Project\ResourceToolkit.csproj", "{461606BD-E824-4D0A-8CBA-01810B1F5E02}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceToolkit.Tests", "AddIns\Misc\ResourceToolkit\Test\ResourceToolkit.Tests.csproj", "{DD9AE6A5-2B9D-443A-BC71-38BE578C36BD}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{9421EDF4-9769-4BE9-B5A6-C87DE221D73C}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aga.Controls", "Libraries\TreeViewAdv\Aga.Controls\Aga.Controls.csproj", "{E73BB233-D88B-44A7-A98F-D71EE158381D}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TextEditor.Tests", "Libraries\ICSharpCode.TextEditor\Test\ICSharpCode.TextEditor.Tests.csproj", "{6259D767-BA7C-484D-9472-68F350A20086}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WinFormsUI", "Libraries\DockPanel_Src\WinFormsUI\WinFormsUI.csproj", "{D3C782BA-178E-4235-A3BA-8C11DEBB6BEE}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TextEditor", "Libraries\ICSharpCode.TextEditor\Project\ICSharpCode.TextEditor.csproj", "{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryTests", "Libraries\NRefactory\Test\NRefactoryTests.csproj", "{870115DD-960A-4406-A6B9-600BCDC36A03}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TextEditor.Tests", "Libraries\ICSharpCode.TextEditor\Test\ICSharpCode.TextEditor.Tests.csproj", "{6259D767-BA7C-484D-9472-68F350A20086}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WinFormsUI", "Libraries\DockPanel_Src\WinFormsUI\WinFormsUI.csproj", "{D3C782BA-178E-4235-A3BA-8C11DEBB6BEE}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aga.Controls", "Libraries\TreeViewAdv\Aga.Controls\Aga.Controls.csproj", "{E73BB233-D88B-44A7-A98F-D71EE158381D}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NRefactory", "NRefactory", "{162FEAF3-F030-4894-816A-E62AE52C19ED}" + ProjectSection(SolutionItems) = postProject + EndProjectSection EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactory", "Libraries\NRefactory\Project\NRefactory.csproj", "{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryTests", "Libraries\NRefactory\Test\NRefactoryTests.csproj", "{870115DD-960A-4406-A6B9-600BCDC36A03}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryASTGenerator", "Libraries\NRefactory\NRefactoryASTGenerator\NRefactoryASTGenerator.csproj", "{B22522AA-B5BF-4A58-AC6D-D4B45805521F}" +EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Main", "Main", "{5A3EBEBA-0560-41C1-966B-23F7D03A5486}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.WinForms", "Main\ICSharpCode.Core.WinForms\ICSharpCode.Core.WinForms.csproj", "{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartUp", "Main\StartUp\Project\StartUp.csproj", "{1152B71B-3C05-4598-B20D-823B5D40559E}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom.Tests", "Main\ICSharpCode.SharpDevelop.Dom\Tests\ICSharpCode.SharpDevelop.Dom.Tests\ICSharpCode.SharpDevelop.Dom.Tests.csproj", "{7DB80259-24D4-46C3-A024-53FF1987733D}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker", "Main\ICSharpCode.SharpDevelop.BuildWorker\ICSharpCode.SharpDevelop.BuildWorker.csproj", "{C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop", "Main\Base\Project\ICSharpCode.SharpDevelop.csproj", "{2748AD25-9C63-4E12-877B-4DCE96FBED54}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Widgets", "Main\ICSharpCode.SharpDevelop.Widgets\Project\ICSharpCode.SharpDevelop.Widgets.csproj", "{8035765F-D51F-4A0C-A746-2FD100E19419}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Tests", "Main\Base\Test\ICSharpCode.SharpDevelop.Tests.csproj", "{4980B743-B32F-4aba-AABD-45E2CAD3568D}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom", "Main\ICSharpCode.SharpDevelop.Dom\Project\ICSharpCode.SharpDevelop.Dom.csproj", "{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Tests", "Main\Core\Test\ICSharpCode.Core.Tests.csproj", "{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Sda", "Main\ICSharpCode.SharpDevelop.Sda\ICSharpCode.SharpDevelop.Sda.csproj", "{80318B5F-A25D-45AB-8A95-EF31D2370A4C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Tests", "Main\Core\Test\ICSharpCode.Core.Tests.csproj", "{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom", "Main\ICSharpCode.SharpDevelop.Dom\Project\ICSharpCode.SharpDevelop.Dom.csproj", "{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Tests", "Main\Base\Test\ICSharpCode.SharpDevelop.Tests.csproj", "{4980B743-B32F-4aba-AABD-45E2CAD3568D}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Widgets", "Main\ICSharpCode.SharpDevelop.Widgets\Project\ICSharpCode.SharpDevelop.Widgets.csproj", "{8035765F-D51F-4A0C-A746-2FD100E19419}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop", "Main\Base\Project\ICSharpCode.SharpDevelop.csproj", "{2748AD25-9C63-4E12-877B-4DCE96FBED54}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker", "Main\ICSharpCode.SharpDevelop.BuildWorker\ICSharpCode.SharpDevelop.BuildWorker.csproj", "{C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom.Tests", "Main\ICSharpCode.SharpDevelop.Dom\Tests\ICSharpCode.SharpDevelop.Dom.Tests\ICSharpCode.SharpDevelop.Dom.Tests.csproj", "{7DB80259-24D4-46C3-A024-53FF1987733D}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartUp", "Main\StartUp\Project\StartUp.csproj", "{1152B71B-3C05-4598-B20D-823B5D40559E}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.WinForms", "Main\ICSharpCode.Core.WinForms\ICSharpCode.Core.WinForms.csproj", "{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}" EndProject Project("{00000000-0000-0000-0000-000000000000}") = "Tools", "Tools\Tools.build", "{970116b0-f96b-4257-8579-986b9cf086f5}" EndProject @@ -324,61 +330,67 @@ Global {F390DA70-1FE1-4715-81A0-389AB010C130}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {F390DA70-1FE1-4715-81A0-389AB010C130}.Release|Any CPU.Build.0 = Release|Any CPU {F390DA70-1FE1-4715-81A0-389AB010C130}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B22522AA-B5BF-4A58-AC6D-D4B45805521F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B22522AA-B5BF-4A58-AC6D-D4B45805521F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B22522AA-B5BF-4A58-AC6D-D4B45805521F}.Release|Any CPU.Build.0 = Release|Any CPU + {B22522AA-B5BF-4A58-AC6D-D4B45805521F}.Release|Any CPU.ActiveCfg = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(NestedProjects) = preSolution - {50A89267-A28B-4DF3-8E62-912E005143B8} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {F94FA21D-78E6-410B-895D-E16D3E7240DB} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {1F1AC7CD-D154-45BB-8EAF-804CA8055F5A} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {6604365C-C702-4C10-9BA8-637F1E3D4D0D} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {6B717BD1-CD5E-498C-A42E-9E6A4584DC48} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {FC0FE702-A87D-4D70-A9B6-1ECCD611125F} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {BF38FB72-B380-4196-AF8C-95749D726C61} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {A5C0E8F8-9D04-46ED-91D6-1DEF1575313B} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {08ce9972-283b-44f4-82fa-966f7dfa6b7a} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {1F261725-6318-4434-A1B1-6C70CE4CD324} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {3EAA45A9-735C-4AC7-A799-947B93EA449D} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {e1b288a2-08ee-4318-8bbb-8ab72c69e33e} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {388E7B64-0393-4EB4-A3E3-5C474F141853} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {9196DD8A-B4D4-4780-8742-C5762E547FC2} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {A569DCC1-C608-45FD-B770-4F79335EF154} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {5DA95927-5F2D-46D8-9265-D092734B6F0E} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {461606BD-E824-4D0A-8CBA-01810B1F5E02} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} {DD9AE6A5-2B9D-443A-BC71-38BE578C36BD} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {4AC2D5F1-F671-480C-A075-6BF62B3721B2} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} - {6FA16499-896F-4C02-BB43-1AF5C6C7C713} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} - {DBCF20A1-BA13-4582-BFA9-74DE4D987B73} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} - {C9DE556D-325C-4544-B29F-16A9EB7C9830} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} - {7C96B65D-28A5-4F28-A35B-8D83CE831EE8} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} - {F390DA70-1FE1-4715-81A0-389AB010C130} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} - {1D18D788-F7EE-4585-A23B-34DC8EC63CB8} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} - {EC06F96A-AEEC-49D6-B03D-AB87C6EB674C} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} - {A4C858C8-51B6-4265-A695-A20FCEBA1D19} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} - {23B517C9-1ECC-4419-A13F-0B7136D085CB} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} - {833904AB-3CD4-4071-9B48-5770E44685AA} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} - {8D732610-8FC6-43BA-94C9-7126FD7FE361} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} + {461606BD-E824-4D0A-8CBA-01810B1F5E02} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {5DA95927-5F2D-46D8-9265-D092734B6F0E} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {A569DCC1-C608-45FD-B770-4F79335EF154} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {9196DD8A-B4D4-4780-8742-C5762E547FC2} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {388E7B64-0393-4EB4-A3E3-5C474F141853} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {e1b288a2-08ee-4318-8bbb-8ab72c69e33e} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {3EAA45A9-735C-4AC7-A799-947B93EA449D} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {1F261725-6318-4434-A1B1-6C70CE4CD324} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {08ce9972-283b-44f4-82fa-966f7dfa6b7a} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {A5C0E8F8-9D04-46ED-91D6-1DEF1575313B} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {BF38FB72-B380-4196-AF8C-95749D726C61} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {FC0FE702-A87D-4D70-A9B6-1ECCD611125F} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {6B717BD1-CD5E-498C-A42E-9E6A4584DC48} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {6604365C-C702-4C10-9BA8-637F1E3D4D0D} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {1F1AC7CD-D154-45BB-8EAF-804CA8055F5A} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {F94FA21D-78E6-410B-895D-E16D3E7240DB} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {50A89267-A28B-4DF3-8E62-912E005143B8} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} {D332F2D1-2CF1-43B7-903C-844BD5211A7E} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} - {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} - {D3C782BA-178E-4235-A3BA-8C11DEBB6BEE} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} - {870115DD-960A-4406-A6B9-600BCDC36A03} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} - {2D18BE89-D210-49EB-A9DD-2246FBB3DF6D} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} - {6259D767-BA7C-484D-9472-68F350A20086} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} + {8D732610-8FC6-43BA-94C9-7126FD7FE361} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} + {833904AB-3CD4-4071-9B48-5770E44685AA} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} + {23B517C9-1ECC-4419-A13F-0B7136D085CB} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} + {A4C858C8-51B6-4265-A695-A20FCEBA1D19} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} + {EC06F96A-AEEC-49D6-B03D-AB87C6EB674C} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} + {1D18D788-F7EE-4585-A23B-34DC8EC63CB8} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} + {F390DA70-1FE1-4715-81A0-389AB010C130} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} + {7C96B65D-28A5-4F28-A35B-8D83CE831EE8} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} + {C9DE556D-325C-4544-B29F-16A9EB7C9830} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} + {DBCF20A1-BA13-4582-BFA9-74DE4D987B73} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} + {6FA16499-896F-4C02-BB43-1AF5C6C7C713} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} + {4AC2D5F1-F671-480C-A075-6BF62B3721B2} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} + {162FEAF3-F030-4894-816A-E62AE52C19ED} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} {E73BB233-D88B-44A7-A98F-D71EE158381D} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} - {1152B71B-3C05-4598-B20D-823B5D40559E} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {2748AD25-9C63-4E12-877B-4DCE96FBED54} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {4980B743-B32F-4aba-AABD-45E2CAD3568D} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {80318B5F-A25D-45AB-8A95-EF31D2370A4C} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {924EE450-603D-49C1-A8E5-4AFAA31CE6F3} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {8035765F-D51F-4A0C-A746-2FD100E19419} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {7DB80259-24D4-46C3-A024-53FF1987733D} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {6259D767-BA7C-484D-9472-68F350A20086} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} + {2D18BE89-D210-49EB-A9DD-2246FBB3DF6D} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} + {D3C782BA-178E-4235-A3BA-8C11DEBB6BEE} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} + {B22522AA-B5BF-4A58-AC6D-D4B45805521F} = {162FEAF3-F030-4894-816A-E62AE52C19ED} + {870115DD-960A-4406-A6B9-600BCDC36A03} = {162FEAF3-F030-4894-816A-E62AE52C19ED} + {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195} = {162FEAF3-F030-4894-816A-E62AE52C19ED} {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {7DB80259-24D4-46C3-A024-53FF1987733D} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {8035765F-D51F-4A0C-A746-2FD100E19419} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {924EE450-603D-49C1-A8E5-4AFAA31CE6F3} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {80318B5F-A25D-45AB-8A95-EF31D2370A4C} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {4980B743-B32F-4aba-AABD-45E2CAD3568D} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {2748AD25-9C63-4E12-877B-4DCE96FBED54} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {1152B71B-3C05-4598-B20D-823B5D40559E} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} EndGlobalSection EndGlobal