diff --git a/.codebeatignore b/.codebeatignore index 3da87067f..ca2dc5325 100644 --- a/.codebeatignore +++ b/.codebeatignore @@ -1 +1,2 @@ Sources/Frontend/Objective-C/ObjcParserAntlr/* +Sources/Frontend/JavaScript/JsParserAntlr/* diff --git a/AntlrGrammars/GrammarTransformer/Package.resolved b/AntlrGrammars/GrammarTransformer/Package.resolved index cbbcaa65f..359b3110a 100644 --- a/AntlrGrammars/GrammarTransformer/Package.resolved +++ b/AntlrGrammars/GrammarTransformer/Package.resolved @@ -5,44 +5,44 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/apple/swift-argument-parser.git", "state" : { - "revision" : "9f39744e025c7d377987f30b03770805dcb0bcd1", - "version" : "1.1.4" + "revision" : "0fbc8848e389af3bb55c182bc19ca9d5dc2f255b", + "version" : "1.4.0" } }, { - "identity" : "swift-format", + "identity" : "swift-cmark", "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-format.git", + "location" : "https://github.com/apple/swift-cmark.git", "state" : { - "revision" : "fbfe1869527923dd9f9b2edac148baccfce0dce7", - "version" : "508.0.1" + "revision" : "3bc2f3e25df0cecc5dc269f7ccae65d0f386f06a", + "version" : "0.4.0" } }, { - "identity" : "swift-syntax", + "identity" : "swift-format", "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-syntax.git", + "location" : "https://github.com/apple/swift-format.git", "state" : { - "revision" : "2c49d66d34dfd6f8130afdba889de77504b58ec0", - "version" : "508.0.1" + "revision" : "7996ac678197d293f6c088a1e74bb778b4e10139", + "version" : "510.1.0" } }, { - "identity" : "swift-system", + "identity" : "swift-markdown", "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-system.git", + "location" : "https://github.com/apple/swift-markdown.git", "state" : { - "revision" : "836bc4557b74fe6d2660218d56e3ce96aff76574", - "version" : "1.1.1" + "revision" : "4aae40bf6fff5286e0e1672329d17824ce16e081", + "version" : "0.4.0" } }, { - "identity" : "swift-tools-support-core", + "identity" : "swift-syntax", "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-tools-support-core.git", + "location" : "https://github.com/apple/swift-syntax.git", "state" : { - "revision" : "93784c59434dbca8e8a9e4b700d0d6d94551da6a", - "version" : "0.5.2" + "revision" : "303e5c5c36d6a558407d364878df131c3546fad8", + "version" : "510.0.2" } } ], diff --git a/AntlrGrammars/GrammarTransformer/Package.swift b/AntlrGrammars/GrammarTransformer/Package.swift index 38ff4814b..7fee9ee54 100644 --- a/AntlrGrammars/GrammarTransformer/Package.swift +++ b/AntlrGrammars/GrammarTransformer/Package.swift @@ -4,9 +4,9 @@ import PackageDescription let package = Package( name: "AntlrGrammars", dependencies: [ - .package(url: "https://github.com/apple/swift-syntax.git", exact: "508.0.1"), - .package(url: "https://github.com/apple/swift-format.git", exact: "508.0.1"), - .package(url: "https://github.com/apple/swift-argument-parser.git", from: "1.0.0"), + .package(url: "https://github.com/apple/swift-syntax.git", exact: "510.0.2"), + .package(url: "https://github.com/apple/swift-format.git", exact: "510.1.0"), + .package(url: "https://github.com/apple/swift-argument-parser.git", from: "1.4.0"), ], targets: [ .executableTarget( diff --git a/AntlrGrammars/JsGrammar/.gitignore b/AntlrGrammars/JsGrammar/.gitignore new file mode 100644 index 000000000..c30b1c354 --- /dev/null +++ b/AntlrGrammars/JsGrammar/.gitignore @@ -0,0 +1,23 @@ +# Created by https://www.gitignore.io/api/maven + +### Maven ### +target/ +pom.xml.tag +pom.xml.releaseBackup +pom.xml.versionsBackup +pom.xml.next +release.properties +dependency-reduced-pom.xml +buildNumber.properties +.mvn/timing.properties + +# Avoid ignoring Maven wrapper jar file (.jar files are usually ignored) +!/.mvn/wrapper/maven-wrapper.jar + + +# End of https://www.gitignore.io/api/maven + +.antlr/ +.idea/ +*.iml +gen/ diff --git a/AntlrGrammars/JsGrammar/JavaScriptLexer.g4 b/AntlrGrammars/JsGrammar/JavaScriptLexer.g4 new file mode 100644 index 000000000..4447a6912 --- /dev/null +++ b/AntlrGrammars/JsGrammar/JavaScriptLexer.g4 @@ -0,0 +1,317 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2014 by Bart Kiers (original author) and Alexandre Vitorelli (contributor -> ported to CSharp) + * Copyright (c) 2017-2020 by Ivan Kochurkin (Positive Technologies): + added ECMAScript 6 support, cleared and transformed to the universal grammar. + * Copyright (c) 2018 by Juan Alvarez (contributor -> ported to Go) + * Copyright (c) 2019 by Student Main (contributor -> ES2020) + * + * Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ +lexer grammar JavaScriptLexer; + +channels { ERROR } + +options { superClass=JavaScriptLexerBase; } + +HashBangLine: { self.isStartOfFile()}? '#!' ~[\r\n\u2028\u2029]*; // only allowed at start +MultiLineComment: '/*' .*? '*/' -> channel(HIDDEN); +SingleLineComment: '//' ~[\r\n\u2028\u2029]* -> channel(HIDDEN); +RegularExpressionLiteral: '/' RegularExpressionFirstChar RegularExpressionChar* {self.isRegexPossible()}? '/' IdentifierPart*; + +OpenBracket: '['; +CloseBracket: ']'; +OpenParen: '('; +CloseParen: ')'; +OpenBrace: '{' {self.processOpenBrace();}; +TemplateCloseBrace: {self.isInTemplateString()}? '}' -> popMode; +CloseBrace: '}' {self.processCloseBrace();}; +SemiColon: ';'; +Comma: ','; +Assign: '='; +QuestionMark: '?'; +QuestionMarkDot: '?.'; +Colon: ':'; +Ellipsis: '...'; +Dot: '.'; +PlusPlus: '++'; +MinusMinus: '--'; +Plus: '+'; +Minus: '-'; +BitNot: '~'; +Not: '!'; +Multiply: '*'; +Divide: '/'; +Modulus: '%'; +Power: '**'; +NullCoalesce: '??'; +Hashtag: '#'; +RightShiftArithmetic: '>>'; +LeftShiftArithmetic: '<<'; +RightShiftLogical: '>>>'; +LessThan: '<'; +MoreThan: '>'; +LessThanEquals: '<='; +GreaterThanEquals: '>='; +Equals_: '=='; +NotEquals: '!='; +IdentityEquals: '==='; +IdentityNotEquals: '!=='; +BitAnd: '&'; +BitXOr: '^'; +BitOr: '|'; +And: '&&'; +Or: '||'; +MultiplyAssign: '*='; +DivideAssign: '/='; +ModulusAssign: '%='; +PlusAssign: '+='; +MinusAssign: '-='; +LeftShiftArithmeticAssign: '<<='; +RightShiftArithmeticAssign: '>>='; +RightShiftLogicalAssign: '>>>='; +BitAndAssign: '&='; +BitXorAssign: '^='; +BitOrAssign: '|='; +PowerAssign: '**='; +ARROW: '=>'; + +/// Null Literals + +NullLiteral: 'null'; + +/// Boolean Literals + +BooleanLiteral: 'true' + | 'false'; + +/// Numeric Literals + +DecimalLiteral: DecimalIntegerLiteral '.' [0-9] [0-9_]* ExponentPart? + | '.' [0-9] [0-9_]* ExponentPart? + | DecimalIntegerLiteral ExponentPart? + ; + +/// Numeric Literals + +HexIntegerLiteral: '0' [xX] [0-9a-fA-F] HexDigit*; +OctalIntegerLiteral: '0' [0-7]+ {!self.isStrictMode()}?; +OctalIntegerLiteral2: '0' [oO] [0-7] [_0-7]*; +BinaryIntegerLiteral: '0' [bB] [01] [_01]*; + +BigHexIntegerLiteral: '0' [xX] [0-9a-fA-F] HexDigit* 'n'; +BigOctalIntegerLiteral: '0' [oO] [0-7] [_0-7]* 'n'; +BigBinaryIntegerLiteral: '0' [bB] [01] [_01]* 'n'; +BigDecimalIntegerLiteral: DecimalIntegerLiteral 'n'; + +/// Keywords + +Break: 'break'; +Do: 'do'; +Instanceof: 'instanceof'; +Typeof: 'typeof'; +Case: 'case'; +Else: 'else'; +New: 'new'; +Var: 'var'; +Catch: 'catch'; +Finally: 'finally'; +Return: 'return'; +Void: 'void'; +Continue: 'continue'; +For: 'for'; +Switch: 'switch'; +While: 'while'; +Debugger: 'debugger'; +Function_: 'function'; +This: 'this'; +With: 'with'; +Default: 'default'; +If: 'if'; +Throw: 'throw'; +Delete: 'delete'; +In: 'in'; +Try: 'try'; +As: 'as'; +From: 'from'; + +/// Future Reserved Words + +Class: 'class'; +Enum: 'enum'; +Extends: 'extends'; +Super: 'super'; +Const: 'const'; +Export: 'export'; +Import: 'import'; + +Async: 'async'; +Await: 'await'; +Yield: 'yield'; + +/// The following tokens are also considered to be FutureReservedWords +/// when parsing strict mode + +Implements: 'implements' {self.isStrictMode()}?; +StrictLet: 'let' {self.isStrictMode()}?; +NonStrictLet: 'let' {!self.isStrictMode()}?; +Private: 'private' {self.isStrictMode()}?; +Public: 'public' {self.isStrictMode()}?; +Interface: 'interface' {self.isStrictMode()}?; +Package: 'package' {self.isStrictMode()}?; +Protected: 'protected' {self.isStrictMode()}?; +Static: 'static' {self.isStrictMode()}?; + +/// Identifier Names and Identifiers + +Identifier: IdentifierStart IdentifierPart*; +/// String Literals +StringLiteral: ('"' DoubleStringCharacter* '"' + | '\'' SingleStringCharacter* '\'') {self.processStringLiteral();} + ; + +BackTick: '`' {self.increaseTemplateDepth();} -> pushMode(TEMPLATE); + +WhiteSpaces: [\t\u000B\u000C\u0020\u00A0]+ -> channel(HIDDEN); + +LineTerminator: [\r\n\u2028\u2029] -> channel(HIDDEN); + +/// Comments + + +HtmlComment: '' -> channel(HIDDEN); +CDataComment: '' -> channel(HIDDEN); +UnexpectedCharacter: . -> channel(ERROR); + +mode TEMPLATE; + +BackTickInside: '`' {self.decreaseTemplateDepth();} -> type(BackTick), popMode; +TemplateStringStartExpression: '${' -> pushMode(DEFAULT_MODE); +TemplateStringAtom: ~[`]; + +// Fragment rules + +fragment DoubleStringCharacter + : ~["\\\r\n] + | '\\' EscapeSequence + | LineContinuation + ; + +fragment SingleStringCharacter + : ~['\\\r\n] + | '\\' EscapeSequence + | LineContinuation + ; + +fragment EscapeSequence + : CharacterEscapeSequence + | '0' // no digit ahead! TODO + | HexEscapeSequence + | UnicodeEscapeSequence + | ExtendedUnicodeEscapeSequence + ; + +fragment CharacterEscapeSequence + : SingleEscapeCharacter + | NonEscapeCharacter + ; + +fragment HexEscapeSequence + : 'x' HexDigit HexDigit + ; + +fragment UnicodeEscapeSequence + : 'u' HexDigit HexDigit HexDigit HexDigit + | 'u' '{' HexDigit HexDigit+ '}' + ; + +fragment ExtendedUnicodeEscapeSequence + : 'u' '{' HexDigit+ '}' + ; + +fragment SingleEscapeCharacter + : ['"\\bfnrtv] + ; + +fragment NonEscapeCharacter + : ~['"\\bfnrtv0-9xu\r\n] + ; + +fragment EscapeCharacter + : SingleEscapeCharacter + | [0-9] + | [xu] + ; + +fragment LineContinuation + : '\\' [\r\n\u2028\u2029] + ; + +fragment HexDigit + : [_0-9a-fA-F] + ; + +fragment DecimalIntegerLiteral + : '0' + | [1-9] [0-9_]* + ; + +fragment ExponentPart + : [eE] [+-]? [0-9_]+ + ; + +fragment IdentifierPart + : IdentifierStart + | [\p{Mn}] + | [\p{Nd}] + | [\p{Pc}] + | '\u200C' + | '\u200D' + ; + +fragment IdentifierStart + : [\p{L}] + | [$_] + | '\\' UnicodeEscapeSequence + ; + +fragment RegularExpressionFirstChar + : ~[*\r\n\u2028\u2029\\/[] + | RegularExpressionBackslashSequence + | '[' RegularExpressionClassChar* ']' + ; + +fragment RegularExpressionChar + : ~[\r\n\u2028\u2029\\/[] + | RegularExpressionBackslashSequence + | '[' RegularExpressionClassChar* ']' + ; + +fragment RegularExpressionClassChar + : ~[\r\n\u2028\u2029\]\\] + | RegularExpressionBackslashSequence + ; + +fragment RegularExpressionBackslashSequence + : '\\' ~[\r\n\u2028\u2029] + ; diff --git a/AntlrGrammars/JsGrammar/JavaScriptLexerBase.swift b/AntlrGrammars/JsGrammar/JavaScriptLexerBase.swift new file mode 100644 index 000000000..3d810c02b --- /dev/null +++ b/AntlrGrammars/JsGrammar/JavaScriptLexerBase.swift @@ -0,0 +1,143 @@ +import Antlr4 + +open class JavaScriptLexerBase: Lexer { + private let DEFAULT_CHANNEL: Int = 0 + private let HIDDEN_CHANNEL: Int = 1 + + /** + * Stores values of nested modes. By default mode is strict or + * defined externally (_useStrictDefault) + */ + private var _scopeStrictModes: [Bool] = [] + + private var _lastToken: Token? = nil + /** + * Default value of strict mode + * Can be defined externally by setUseStrictDefault + */ + private var _useStrictDefault: Bool = false + /** + * Current value of strict mode + * Can be defined during parsing, see StringFunctions.js and StringGlobal.js samples + */ + private var _useStrictCurrent: Bool = false + /** + * Keeps track of the the current depth of nested template string backticks. + * E.g. after the X in: + * + * `${a ? `${X + * + * _templateDepth will be 2. This variable is needed to determine if a `}` is a + * plain CloseBrace, or one that closes an expression inside a template string. + */ + private var _templateDepth: Int = 0 + + public func isStartOfFile() -> Bool { + return _lastToken == nil + } + + public func getStrictDefault() -> Bool { + return _useStrictDefault + } + + public func setUseStrictDefault(_ value: Bool) { + _useStrictDefault = value + _useStrictCurrent = value + } + + public func isStrictMode() -> Bool { + return _useStrictCurrent + } + + public func isInTemplateString() -> Bool { + return self._templateDepth > 0 + } + + /** + * Return the next token from the character stream and records this last + * token in case it resides on the default channel. This recorded token + * is used to determine when the lexer could possibly match a regex + * literal. Also changes _scopeStrictModes stack if tokenize special + * string 'use strict' + * + * @return the next token from the character stream. + */ + public override func nextToken() throws -> Token { + let next = try super.nextToken() + + if next.getChannel() == DEFAULT_CHANNEL { + // Keep track of the last token on the default channel. + self._lastToken = next + } + + return next + } + + func processOpenBrace() { + _useStrictCurrent = _scopeStrictModes.last == true ? true : _useStrictDefault + _scopeStrictModes.append(_useStrictCurrent) + } + + func processCloseBrace() { + _useStrictCurrent = _scopeStrictModes.popLast() ?? _useStrictDefault + } + + func processStringLiteral() { + guard (_lastToken == nil || _lastToken?.getType() == JavaScriptLexer.OpenBrace) else { + return + } + + let text = getText() + if text == "\"use strict\"" || text == "'use strict'" { + if !_scopeStrictModes.isEmpty { + _scopeStrictModes.removeLast() + } + + _useStrictCurrent = true + _scopeStrictModes.append(_useStrictCurrent) + } + } + + public func increaseTemplateDepth() { + self._templateDepth += 1 + } + + public func decreaseTemplateDepth() { + self._templateDepth -= 1 + } + + /** + * Returns {@code true} if the lexer can match a regex literal. + */ + func isRegexPossible() -> Bool { + if self._lastToken == nil { + // No token has been produced yet: at the start of the input, + // no division is possible, so a regex literal _is_ possible. + return true + } + + guard let tokenType = self._lastToken?.getType() else { + return true + } + + switch tokenType { + case JavaScriptLexer.Identifier, + JavaScriptLexer.NullLiteral, + JavaScriptLexer.BooleanLiteral, + JavaScriptLexer.This, + JavaScriptLexer.CloseBracket, + JavaScriptLexer.CloseParen, + JavaScriptLexer.OctalIntegerLiteral, + JavaScriptLexer.DecimalLiteral, + JavaScriptLexer.HexIntegerLiteral, + JavaScriptLexer.StringLiteral, + JavaScriptLexer.PlusPlus, + JavaScriptLexer.MinusMinus: + // After any of the tokens above, no regex literal can follow. + return false + default: + // In all other cases, a regex literal _is_ possible. + return true + } + } +} diff --git a/AntlrGrammars/JsGrammar/JavaScriptParser.g4 b/AntlrGrammars/JsGrammar/JavaScriptParser.g4 new file mode 100644 index 000000000..cc83aa1aa --- /dev/null +++ b/AntlrGrammars/JsGrammar/JavaScriptParser.g4 @@ -0,0 +1,523 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2014 by Bart Kiers (original author) and Alexandre Vitorelli (contributor -> ported to CSharp) + * Copyright (c) 2017-2020 by Ivan Kochurkin (Positive Technologies): + added ECMAScript 6 support, cleared and transformed to the universal grammar. + * Copyright (c) 2018 by Juan Alvarez (contributor -> ported to Go) + * Copyright (c) 2019 by Student Main (contributor -> ES2020) + * + * Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ +parser grammar JavaScriptParser; + +options { + tokenVocab=JavaScriptLexer; + superClass=JavaScriptParserBase; +} + +program + : HashBangLine? sourceElements? EOF + ; + +sourceElement + : statement + ; + +statement + : block + | variableStatement + | importStatement + | exportStatement + | emptyStatement_ + | classDeclaration + | expressionStatement + | ifStatement + | iterationStatement + | continueStatement + | breakStatement + | returnStatement + | yieldStatement + | withStatement + | labelledStatement + | switchStatement + | throwStatement + | tryStatement + | debuggerStatement + | functionDeclaration + ; + +block + : '{' statementList? '}' + ; + +statementList + : statement+ + ; + +importStatement + : Import importFromBlock + ; + +importFromBlock + : importDefault? (importNamespace | moduleItems) importFrom eos + | StringLiteral eos + ; + +moduleItems + : '{' (aliasName ',')* (aliasName ','?)? '}' + ; + +importDefault + : aliasName ',' + ; + +importNamespace + : ('*' | identifierName) (As identifierName)? + ; + +importFrom + : From StringLiteral + ; + +aliasName + : identifierName (As identifierName)? + ; + +exportStatement + : Export (exportFromBlock | declaration) eos # ExportDeclaration + | Export Default singleExpression eos # ExportDefaultDeclaration + ; + +exportFromBlock + : importNamespace importFrom eos + | moduleItems importFrom? eos + ; + +declaration + : variableStatement + | classDeclaration + | functionDeclaration + ; + +variableStatement + : variableDeclarationList eos + ; + +variableDeclarationList + : varModifier variableDeclaration (',' variableDeclaration)* + ; + +variableDeclaration + : assignable ('=' singleExpression)? // ECMAScript 6: Array & Object Matching + ; + +emptyStatement_ + : SemiColon + ; + +expressionStatement + : {try self.notOpenBraceAndNotFunction()}? expressionSequence eos + ; + +ifStatement + : If '(' expressionSequence ')' statement (Else statement)? + ; + + +iterationStatement + : Do statement While '(' expressionSequence ')' eos # DoStatement + | While '(' expressionSequence ')' statement # WhileStatement + | For '(' (expressionSequence | variableDeclarationList)? ';' expressionSequence? ';' expressionSequence? ')' statement # ForStatement + | For '(' (singleExpression | variableDeclarationList) In expressionSequence ')' statement # ForInStatement + // strange, 'of' is an identifier. and self.p("of") not work in sometime. + | For Await? '(' (singleExpression | variableDeclarationList) identifier{try self.p("of")}? expressionSequence ')' statement # ForOfStatement + ; + +varModifier // let, const - ECMAScript 6 + : Var + | let_ + | Const + ; + +continueStatement + : Continue ({try self.notLineTerminator()}? identifier)? eos + ; + +breakStatement + : Break ({try self.notLineTerminator()}? identifier)? eos + ; + +returnStatement + : Return ({try self.notLineTerminator()}? expressionSequence)? eos + ; + +yieldStatement + : Yield ({try self.notLineTerminator()}? expressionSequence)? eos + ; + +withStatement + : With '(' expressionSequence ')' statement + ; + +switchStatement + : Switch '(' expressionSequence ')' caseBlock + ; + +caseBlock + : '{' caseClauses? (defaultClause caseClauses?)? '}' + ; + +caseClauses + : caseClause+ + ; + +caseClause + : Case expressionSequence ':' statementList? + ; + +defaultClause + : Default ':' statementList? + ; + +labelledStatement + : identifier ':' statement + ; + +throwStatement + : Throw {try self.notLineTerminator()}? expressionSequence eos + ; + +tryStatement + : Try block (catchProduction finallyProduction? | finallyProduction) + ; + +catchProduction + : Catch ('(' assignable? ')')? block + ; + +finallyProduction + : Finally block + ; + +debuggerStatement + : Debugger eos + ; + +functionDeclaration + : Async? Function_ '*'? identifier '(' formalParameterList? ')' functionBody + ; + +classDeclaration + : Class identifier classTail + ; + +classTail + : (Extends singleExpression)? '{' classElement* '}' + ; + +classElement + : (Static | {try self.n("static")}? identifier | Async)* (methodDefinition | assignable '=' objectLiteral ';') + | emptyStatement_ + | '#'? propertyName '=' singleExpression + ; + +methodDefinition + : '*'? '#'? propertyName '(' formalParameterList? ')' functionBody + | '*'? '#'? getter '(' ')' functionBody + | '*'? '#'? setter '(' formalParameterList? ')' functionBody + ; + +formalParameterList + : formalParameterArg (',' formalParameterArg)* (',' lastFormalParameterArg)? + | lastFormalParameterArg + ; + +formalParameterArg + : assignable ('=' singleExpression)? // ECMAScript 6: Initialization + ; + +lastFormalParameterArg // ECMAScript 6: Rest Parameter + : Ellipsis singleExpression + ; + +functionBody + : '{' sourceElements? '}' + ; + +sourceElements + : sourceElement+ + ; + +arrayLiteral + : ('[' elementList ']') + ; + +elementList + : ','* arrayElement? (','+ arrayElement)* ','* // Yes, everything is optional + ; + +arrayElement + : Ellipsis? singleExpression + ; + +propertyAssignment + : propertyName ':' singleExpression # PropertyExpressionAssignment + | '[' singleExpression ']' ':' singleExpression # ComputedPropertyExpressionAssignment + | Async? '*'? propertyName '(' formalParameterList? ')' functionBody # FunctionProperty + | getter '(' ')' functionBody # PropertyGetter + | setter '(' formalParameterArg ')' functionBody # PropertySetter + | Ellipsis? singleExpression # PropertyShorthand + ; + +propertyName + : identifierName + | StringLiteral + | numericLiteral + | '[' singleExpression ']' + ; + +arguments + : '('(argument (',' argument)* ','?)?')' + ; + +argument + : Ellipsis? (singleExpression | identifier) + ; + +expressionSequence + : singleExpression (',' singleExpression)* + ; + +singleExpression + : anonymousFunction # FunctionExpression + | Class identifier? classTail # ClassExpression + | singleExpression '?.' singleExpression # OptionalChainExpression + | singleExpression '?.'? '[' expressionSequence ']' # MemberIndexExpression + | singleExpression '?'? '.' '#'? identifierName # MemberDotExpression + // Split to try `new Date()` first, then `new Date`. + | New singleExpression arguments # NewExpression + | New singleExpression # NewExpression + | singleExpression arguments # ArgumentsExpression + | New '.' identifier # MetaExpression // new.target + | singleExpression {try self.notLineTerminator()}? '++' # PostIncrementExpression + | singleExpression {try self.notLineTerminator()}? '--' # PostDecreaseExpression + | Delete singleExpression # DeleteExpression + | Void singleExpression # VoidExpression + | Typeof singleExpression # TypeofExpression + | '++' singleExpression # PreIncrementExpression + | '--' singleExpression # PreDecreaseExpression + | '+' singleExpression # UnaryPlusExpression + | '-' singleExpression # UnaryMinusExpression + | '~' singleExpression # BitNotExpression + | '!' singleExpression # NotExpression + | Await singleExpression # AwaitExpression + | singleExpression '**' singleExpression # PowerExpression + | singleExpression ('*' | '/' | '%') singleExpression # MultiplicativeExpression + | singleExpression ('+' | '-') singleExpression # AdditiveExpression + | singleExpression '??' singleExpression # CoalesceExpression + | singleExpression ('<<' | '>>' | '>>>') singleExpression # BitShiftExpression + | singleExpression ('<' | '>' | '<=' | '>=') singleExpression # RelationalExpression + | singleExpression Instanceof singleExpression # InstanceofExpression + | singleExpression In singleExpression # InExpression + | singleExpression ('==' | '!=' | '===' | '!==') singleExpression # EqualityExpression + | singleExpression '&' singleExpression # BitAndExpression + | singleExpression '^' singleExpression # BitXOrExpression + | singleExpression '|' singleExpression # BitOrExpression + | singleExpression '&&' singleExpression # LogicalAndExpression + | singleExpression '||' singleExpression # LogicalOrExpression + | singleExpression '?' singleExpression ':' singleExpression # TernaryExpression + | singleExpression '=' singleExpression # AssignmentExpression + | singleExpression assignmentOperator singleExpression # AssignmentOperatorExpression + | Import '(' singleExpression ')' # ImportExpression + | singleExpression templateStringLiteral # TemplateStringExpression // ECMAScript 6 + | yieldStatement # YieldExpression // ECMAScript 6 + | This # ThisExpression + | identifier # IdentifierExpression + | Super # SuperExpression + | literal # LiteralExpression + | arrayLiteral # ArrayLiteralExpression + | objectLiteral # ObjectLiteralExpression + | '(' expressionSequence ')' # ParenthesizedExpression + ; + +assignable + : identifier + | arrayLiteral + | objectLiteral + ; + +objectLiteral + : '{' (propertyAssignment (',' propertyAssignment)* ','?)? '}' + ; + +anonymousFunction + : functionDeclaration # FunctionDecl + | Async? Function_ '*'? '(' formalParameterList? ')' functionBody # AnonymousFunctionDecl + | Async? arrowFunctionParameters '=>' arrowFunctionBody # ArrowFunction + ; + +arrowFunctionParameters + : identifier + | '(' formalParameterList? ')' + ; + +arrowFunctionBody + : singleExpression + | functionBody + ; + +assignmentOperator + : '*=' + | '/=' + | '%=' + | '+=' + | '-=' + | '<<=' + | '>>=' + | '>>>=' + | '&=' + | '^=' + | '|=' + | '**=' + ; + +literal + : NullLiteral + | BooleanLiteral + | StringLiteral + | templateStringLiteral + | RegularExpressionLiteral + | numericLiteral + | bigintLiteral + ; + +templateStringLiteral + : BackTick templateStringAtom* BackTick + ; + +templateStringAtom + : TemplateStringAtom + | TemplateStringStartExpression singleExpression TemplateCloseBrace + ; + +numericLiteral + : DecimalLiteral + | HexIntegerLiteral + | OctalIntegerLiteral + | OctalIntegerLiteral2 + | BinaryIntegerLiteral + ; + +bigintLiteral + : BigDecimalIntegerLiteral + | BigHexIntegerLiteral + | BigOctalIntegerLiteral + | BigBinaryIntegerLiteral + ; + +getter + : {try self.n("get")}? identifier propertyName + ; + +setter + : {try self.n("set")}? identifier propertyName + ; + +identifierName + : identifier + | reservedWord + ; + +identifier + : Identifier + | NonStrictLet + | Async + ; + +reservedWord + : keyword + | NullLiteral + | BooleanLiteral + ; + +keyword + : Break + | Do + | Instanceof + | Typeof + | Case + | Else + | New + | Var + | Catch + | Finally + | Return + | Void + | Continue + | For + | Switch + | While + | Debugger + | Function_ + | This + | With + | Default + | If + | Throw + | Delete + | In + | Try + + | Class + | Enum + | Extends + | Super + | Const + | Export + | Import + | Implements + | let_ + | Private + | Public + | Interface + | Package + | Protected + | Static + | Yield + | Async + | Await + | From + | As + ; + +let_ + : NonStrictLet + | StrictLet + ; + +eos + : SemiColon + | EOF + | {try self.lineTerminatorAhead()}? + | {try self.closeBrace()}? + ; diff --git a/AntlrGrammars/JsGrammar/JavaScriptParserBase.swift b/AntlrGrammars/JsGrammar/JavaScriptParserBase.swift new file mode 100644 index 000000000..78e28ed9e --- /dev/null +++ b/AntlrGrammars/JsGrammar/JavaScriptParserBase.swift @@ -0,0 +1,87 @@ +import Antlr4 + +open class JavaScriptParserBase: Parser { + func p(_ s: String) throws -> Bool { + return try self.prev(s) + } + + func prev(_ s: String) throws -> Bool { + return try self._input.LT(-1)?.getText() == s + } + + func n(_ s: String) throws -> Bool { + return try self.next(s) + } + + func next(_ s: String) throws -> Bool { + return try self._input.LT(1)?.getText() == s + } + + func notLineTerminator() throws -> Bool { + return try !self.here(JavaScriptParser.Tokens.LineTerminator.rawValue) + } + + func notOpenBraceAndNotFunction() throws -> Bool { + let nextTokenType = try self._input.LT(1)?.getType() + + return nextTokenType != JavaScriptParser.Tokens.OpenBrace.rawValue && nextTokenType != JavaScriptParser.Tokens.Function_.rawValue + } + + func closeBrace() throws -> Bool { + return try self._input.LT(1)?.getType() == JavaScriptParser.Tokens.CloseBrace.rawValue + } + + // Returns `true` iff on the current index of the parser's token stream a + // token of the given `type` exists on the `HIDDEN` channel. + // - param tokenType: the type of the token on the `HIDDEN` channel to check. + // - returns: `true` iff on the current index of the parser's token stream a + // token of the given `type` exists on the `HIDDEN` channel. + func here(_ tokenType: Int) throws -> Bool { + // Get the token ahead of the current index. + let possibleIndexEosToken = try getCurrentToken().getTokenIndex() - 1 + let ahead = try _input.get(possibleIndexEosToken) + + // Check if the token resides on the HIDDEN channel and if it's of the + // provided type. + return (ahead.getChannel() == Lexer.HIDDEN) && (ahead.getType() == tokenType) + } + + // Returns `true` iff on the current index of the parser's + // token stream a token exists on the `HIDDEN` channel which + // either is a line terminator, or is a multi line comment that + // contains a line terminator. + // + // - returns: `true` iff on the current index of the parser's + // token stream a token exists on the `HIDDEN` channel which + // either is a line terminator, or is a multi line comment that + // contains a line terminator. + func lineTerminatorAhead() throws -> Bool { + // Get the token ahead of the current index. + var possibleIndexEosToken: Int = try getCurrentToken().getTokenIndex() - 1 + var ahead: Token = try _input.get(possibleIndexEosToken) + + if ahead.getChannel() != Lexer.HIDDEN { + // We're only interested in tokens on the HIDDEN channel. + return false + } + + if ahead.getType() == JavaScriptParser.Tokens.LineTerminator.rawValue { + // There is definitely a line terminator ahead. + return true + } + + if ahead.getType() == JavaScriptParser.Tokens.WhiteSpaces.rawValue { + // Get the token ahead of the current whitespaces. + possibleIndexEosToken = try getCurrentToken().getTokenIndex() - 2 + ahead = try _input.get(possibleIndexEosToken) + } + + // Get the token's text and type. + let text = ahead.getText() ?? "" + let tokenType = ahead.getType() + + // Check if the token is, or contains a line terminator. + return (tokenType == JavaScriptParser.Tokens.MultiLineComment.rawValue && (text.contains("\r") || text.contains("\n"))) + || tokenType == JavaScriptParser.Tokens.LineTerminator.rawValue + } +} diff --git a/AntlrGrammars/JsGrammar/LICENSE.md b/AntlrGrammars/JsGrammar/LICENSE.md new file mode 100644 index 000000000..82783f2ff --- /dev/null +++ b/AntlrGrammars/JsGrammar/LICENSE.md @@ -0,0 +1,28 @@ +The MIT License (MIT) + +Copyright (c) 2014 by Bart Kiers (original author) and Alexandre Vitorelli (contributor -> ported to CSharp) +Copyright (c) 2017-2020 by Ivan Kochurkin (Positive Technologies): + added ECMAScript 6 support, cleared and transformed to the universal grammar. +Copyright (c) 2018 by Juan Alvarez (contributor -> ported to Go) +Copyright (c) 2019 by Student Main (contributor -> ES2020) + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. diff --git a/Architecture.md b/Architecture.md index 1926fb5ad..0757be070 100644 --- a/Architecture.md +++ b/Architecture.md @@ -16,7 +16,7 @@ The tool splits the conversion process into six discrete steps, which are, whene └─────────────┘ └──────────────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ └────────────────┘ └──────────┘ ``` -All of these steps are encapsulated and run by `ObjectiveC2SwiftRewriter` within the frontend's main target. +All of these steps are encapsulated and run by `ObjectiveC2SwiftRewriter` and `JavaScript2SwiftRewriter` within each frontend's main target. An overview of the steps taken is described bellow. @@ -26,6 +26,7 @@ An overview of the steps taken is described bellow. ##### summary - [ANTLR](http://www.antlr.org/) used as main parser generator; - `ObjcParser` target contains an `ObjcParser` class that performs Objective-C code parsing. + - `JsParser` target contains a `JsParser` class that performs code JavaScript code parsing. - `ASTNode` class used as abstraction over ANTLR for next steps; - Statement and expressions are not parsed in this step yet; - Each language has its own target implementing appropriate `ASTNode` subclasses. @@ -39,11 +40,11 @@ The source code is then processed by `SourcePreprocessor` objects provided to `S For the tooled part, [ANTLR](http://www.antlr.org/) is used to do the heavy lifting and parse all the input source code. -All input parsing for a single file can be done with just an `ObjcParser` instance. +All input parsing for a single file can be done with just an `ObjcParser` or `JsParser` instance, depending on the input language. Since trees produced by ANTLR are too heavyweight and reflect a lot of the complexity of the source language's grammar, the produced AST is converted into a customized AST representation that is more useful for manipulation, rooted into a base `ASTNode` class. -The source code for the AST class structure used is found inside the `ObjcGrammarModels` target and is used throughout the rest of the process to inspect the input AST. +The source code for the AST class structure used is found inside the `ObjcGrammarModels` and `JsGrammarModels` targets, and is used throughout the rest of the process to inspect the input AST. --- ## 2. Statements parsing diff --git a/Package.swift b/Package.swift index dbed7d158..9b502b4f4 100644 --- a/Package.swift +++ b/Package.swift @@ -320,6 +320,9 @@ let objcFrontend: [Target] = [ name: "ObjectiveCFrontend", dependencies: [ "SwiftRewriterLib", + "ObjcParser", + "ObjcGrammarModels", + "GlobalsProviders", ], path: "Sources/Frontend/Objective-C/ObjectiveCFrontend" ), @@ -365,14 +368,117 @@ let objcFrontendTests: [Target] = [ swiftRewriterTarget.dependencies.append(contentsOf: [ // Objective-C frontend "ObjectiveCFrontend", - "ObjcParser", - "ObjcGrammarModels", - "GlobalsProviders", ]) frontendTargets.append(contentsOf: objcFrontend) frontendTestTargets.append(contentsOf: objcFrontendTests) +// MARK: - JavaScript frontend + +let jsFrontend: [Target] = [ + .target( + name: "JsParserAntlr", + dependencies: [ + .product(name: "Antlr4", package: "antlr4-swift"), + "AntlrCommons", + ], + path: "Sources/Frontend/JavaScript/JsParserAntlr", + swiftSettings: extraAntlrTargetSettings + ), + .target( + name: "JsGrammarModels", + dependencies: [ + "JsParserAntlr", "GrammarModelBase", "Utils" + ], + path: "Sources/Frontend/JavaScript/JsGrammarModels" + ), + .target( + name: "JsParser", + dependencies: [ + .product(name: "Antlr4", package: "antlr4-swift"), + .product(name: "TypeLexing", package: "MiniLexer"), + "JsParserAntlr", + "JsGrammarModels", + "AntlrCommons", + "MiniLexer", + "Utils", + ], + path: "Sources/Frontend/JavaScript/JsParser" + ), + .target( + name: "JavaScriptFrontend", + dependencies: [ + "SwiftRewriterLib", + "JsParser", + "JsGrammarModels", + ], + path: "Sources/Frontend/JavaScript/JavaScriptFrontend" + ), +] + +let jsFrontendTests: [Target] = [ + .testTarget( + name: "JsParserTests", + dependencies: [ + "JsParser", "TestCommons", + ], + path: "Tests/Frontend/JavaScript/JsParserTests", + resources: [ + .copy("Fixtures/bezier.js"), + .copy("Fixtures/utils.js"), + .copy("Fixtures/EnhancedRegularExpression.js"), + .copy("Fixtures/Function.js"), + .copy("Fixtures/TemplateStrings.js"), + .copy("Fixtures/Classes.js"), + .copy("Fixtures/Stage3.js"), + .copy("Fixtures/ClassInNonGlobalStrict.js"), + .copy("Fixtures/ObjectInitializer.js"), + .copy("Fixtures/DestructuringAssignment.js"), + .copy("Fixtures/SymbolType.js"), + .copy("Fixtures/Generators.js"), + .copy("Fixtures/LetAndAsync.js"), + .copy("Fixtures/Iterators.js"), + .copy("Fixtures/Issue2178NewExpression.js"), + .copy("Fixtures/EnhancedObjectProperties.js"), + .copy("Fixtures/Modules.js"), + .copy("Fixtures/TypedArrays.js"), + .copy("Fixtures/MapSetAndWeakMapWeakSet.js"), + .copy("Fixtures/TemplateLiterals.js"), + .copy("Fixtures/ExtendedLiterals.js"), + .copy("Fixtures/Constants.js"), + .copy("Fixtures/Promises.js"), + .copy("Fixtures/Outdated.js"), + .copy("Fixtures/Misc.js"), + .copy("Fixtures/ExtendedParameterHandling.js"), + .copy("Fixtures/Scoping.js"), + .copy("Fixtures/NewBuildInMethods.js"), + .copy("Fixtures/StrictGlobal.js"), + .copy("Fixtures/ArrowFunctions.js"), + .copy("Fixtures/AsyncAwait.js"), + .copy("Fixtures/StrictFunctions.js"), + .copy("Fixtures/Meta-Programming.js"), + .copy("Fixtures/InternationalizationAndLocalization.js"), + ] + ), + .testTarget( + name: "JavaScriptFrontendTests", + dependencies: [ + "JavaScriptFrontend", + "TestCommons", + ], + path: "Tests/Frontend/JavaScript/JavaScriptFrontendTests" + ), +] + +// Attach JavaScript frontend to SwiftRewriter +swiftRewriterTarget.dependencies.append(contentsOf: [ + // JavaScript frontend + "JavaScriptFrontend", +]) + +frontendTargets.append(contentsOf: jsFrontend) +frontendTestTargets.append(contentsOf: jsFrontendTests) + // let aggregateTargets: [Target] = core + coreTests + @@ -449,7 +555,7 @@ let package = Package( .product(name: "SwiftAST", package: "SwiftAST"), "SwiftSyntaxSupport", "SwiftRewriterLib", "Intentions", "KnownType", "ObjcGrammarModels", "Utils", "TypeSystem", - "ObjectiveCFrontend", "MiniLexer", + "ObjectiveCFrontend", "MiniLexer", "JsGrammarModels", ], path: "Sources/TestCommons" ), diff --git a/README.md b/README.md index 6e92cf32a..f9fe33b2e 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,8 @@ A source-to-source compiler for expediting Objective-C-to-Swift source conversion. +An experimental WIP JavaScript frontend is also available. + For information about how it's structured, see the [Architecture](Architecture.md) page. #### Example @@ -50,7 +52,7 @@ MyClass.m: Running SwiftRewriter as shown: ```bash -$ swift run SwiftRewriter files --colorize --target stdout MyClass.h MyClass.m +$ swift run SwiftRewriter objc files --colorize --target stdout MyClass.h MyClass.m ``` will produce the following Swift file in the standard output: @@ -85,13 +87,13 @@ Xcode 15.1 & Swift 5.9.2 - From the working directory execute as follows: ```bash -$ swift run -c=release SwiftRewriter files --colorize --target stdout /path/to/MyClass.h /path/to/MyClass.m +$ swift run -c=release SwiftRewriter objc files --colorize --target stdout /path/to/MyClass.h /path/to/MyClass.m ``` - To convert a directory containing Objective-C files (recursively), saving resulting .swift files to disk, execute as follows: ```bash -$ swift run -c=release SwiftRewriter path /path/to/project/ +$ swift run -c=release SwiftRewriter objc path /path/to/project/ ``` - Run `swift run SwiftRewriter --help` to print the full reference of command line arguments SwiftRewriter accepts. Reference also available bellow (for `path` subcommand): @@ -109,6 +111,7 @@ OPTIONS: SUBCOMMANDS: objc (default) Objective-C code conversion frontend + js JavaScript code conversion frontend [EXPERIMENTAL] See 'SwiftRewriter help ' for detailed help. ``` diff --git a/Sources/Core/SwiftSyntaxSupport/StatementEmitter+Statement.swift b/Sources/Core/SwiftSyntaxSupport/StatementEmitter+Statement.swift index 47f14f9c2..076674372 100644 --- a/Sources/Core/SwiftSyntaxSupport/StatementEmitter+Statement.swift +++ b/Sources/Core/SwiftSyntaxSupport/StatementEmitter+Statement.swift @@ -1,26 +1,38 @@ import SwiftAST -extension StatementEmitter: StatementVisitor { +extension StatementEmitter: StatementStatefulVisitor { func visitPattern(_ ptn: Pattern) { + visitPattern(ptn, state: .default) + } + + func visitPattern(_ ptn: Pattern, state: StatementEmitterContext) { switch ptn { case .expression(let exp): visitExpression(exp) - + case .tuple(let patterns): emit("(") - producer.emitWithSeparators(patterns, separator: ", ", visitPattern) + producer.emitWithSeparators(patterns, separator: ", ") { + visitPattern($0, state: state) + } emit(")") - + case .identifier(let ident): - emit("let ") + if !state.patternContextIsBinding { + emit("let ") + } emit(ident) - + case .wildcard: emit("_") } } func visitStatement(_ stmt: Statement) { + visitStatement(stmt, state: .default) + } + + func visitStatement(_ stmt: Statement, state: StatementEmitterContext) { if !stmt.isCompound { recordLatest(stmt) emitComments(stmt.comments) @@ -32,7 +44,7 @@ extension StatementEmitter: StatementVisitor { emitLine("// \(label):") } } - stmt.accept(self) + stmt.accept(self, state: state) if let trailing = stmt.trailingComment { producer.backtrackWhitespace() emitSpaceSeparator() @@ -42,6 +54,10 @@ extension StatementEmitter: StatementVisitor { } func visitCompound(_ stmt: CompoundStatement) { + visitCompound(stmt, state: .default) + } + + func visitCompound(_ stmt: CompoundStatement, state: StatementEmitterContext) { emitComments(stmt.comments) if !stmt.comments.isEmpty && !stmt.statements.isEmpty { @@ -51,10 +67,10 @@ extension StatementEmitter: StatementVisitor { emitStatements(stmt.statements) } - func visitIf(_ stmt: IfStatement) { + func visitIf(_ stmt: IfStatement, state: StatementEmitterContext) { emit("if ") if let pattern = stmt.pattern { - visitPattern(pattern) + visitPattern(pattern, state: state) emit(" = ") } visitExpression(stmt.exp) @@ -72,31 +88,33 @@ extension StatementEmitter: StatementVisitor { elseBody.statements.count == 1, let elseIf = elseBody.statements.first?.asIf { - visitIf(elseIf) + visitIf(elseIf, state: state) } else { emitCodeBlock(elseBody) } } } - func visitSwitch(_ stmt: SwitchStatement) { + func visitSwitch(_ stmt: SwitchStatement, state: StatementEmitterContext) { emit("switch ") visitExpression(stmt.exp) emitLine(" {") - - stmt.cases.forEach { visitSwitchCase($0) } + + stmt.cases.forEach { visitSwitchCase($0, state: state) } if let defaultCase = stmt.defaultCase { - visitSwitchDefaultCase(defaultCase) + visitSwitchDefaultCase(defaultCase, state: state) } producer.ensureNewline() emitLine("}") } - func visitSwitchCase(_ switchCase: SwitchCase) { + func visitSwitchCase(_ switchCase: SwitchCase, state: StatementEmitterContext) { emit("case ") - producer.emitWithSeparators(switchCase.patterns, separator: ", ", visitPattern) + producer.emitWithSeparators(switchCase.patterns, separator: ", ") { + visitPattern($0, state: state) + } emitLine(":") producer.indented { pushClosureStack() @@ -105,7 +123,7 @@ extension StatementEmitter: StatementVisitor { } } - func visitSwitchDefaultCase(_ defaultCase: SwitchDefaultCase) { + func visitSwitchDefaultCase(_ defaultCase: SwitchDefaultCase, state: StatementEmitterContext) { emitLine("default:") producer.indented { pushClosureStack() @@ -114,14 +132,14 @@ extension StatementEmitter: StatementVisitor { } } - func visitWhile(_ stmt: WhileStatement) { + func visitWhile(_ stmt: WhileStatement, state: StatementEmitterContext) { emit("while ") visitExpression(stmt.exp) producer.emitSpaceSeparator() emitCodeBlock(stmt.body) } - func visitRepeatWhile(_ stmt: RepeatWhileStatement) { + func visitRepeatWhile(_ stmt: RepeatWhileStatement, state: StatementEmitterContext) { emit("repeat ") emitCodeBlock(stmt.body) producer.backtrackWhitespace() @@ -129,14 +147,17 @@ extension StatementEmitter: StatementVisitor { visitExpression(stmt.exp) } - func visitFor(_ stmt: ForStatement) { + func visitFor(_ stmt: ForStatement, state: StatementEmitterContext) { emit("for ") switch stmt.pattern { case .identifier(let ident): emit(ident) default: - visitPattern(stmt.pattern) + visitPattern( + stmt.pattern, + state: state.with(\.patternContextIsBinding, value: true) + ) } emit(" in ") @@ -146,33 +167,33 @@ extension StatementEmitter: StatementVisitor { emitCodeBlock(stmt.body) } - func visitDo(_ stmt: DoStatement) { + func visitDo(_ stmt: DoStatement, state: StatementEmitterContext) { emit("do ") emitCodeBlock(stmt.body) for catchBlock in stmt.catchBlocks { - visitCatchBlock(catchBlock) + visitCatchBlock(catchBlock, state: state) } } - func visitCatchBlock(_ block: CatchBlock) { + func visitCatchBlock(_ block: CatchBlock, state: StatementEmitterContext) { producer.backtrackWhitespace() emit(" catch ") if let pattern = block.pattern { - visitPattern(pattern) + visitPattern(pattern, state: state) emitSpaceSeparator() } emitCodeBlock(block.body) } - func visitDefer(_ stmt: DeferStatement) { + func visitDefer(_ stmt: DeferStatement, state: StatementEmitterContext) { emit("defer ") emitCodeBlock(stmt.body) } - func visitReturn(_ stmt: ReturnStatement) { + func visitReturn(_ stmt: ReturnStatement, state: StatementEmitterContext) { emit("return") if let exp = stmt.exp { emitSpaceSeparator() @@ -180,7 +201,7 @@ extension StatementEmitter: StatementVisitor { } } - func visitBreak(_ stmt: BreakStatement) { + func visitBreak(_ stmt: BreakStatement, state: StatementEmitterContext) { emit("break") if let targetLabel = stmt.targetLabel { emitSpaceSeparator() @@ -188,11 +209,11 @@ extension StatementEmitter: StatementVisitor { } } - func visitFallthrough(_ stmt: FallthroughStatement) { + func visitFallthrough(_ stmt: FallthroughStatement, state: StatementEmitterContext) { emit("fallthrough") } - func visitContinue(_ stmt: ContinueStatement) { + func visitContinue(_ stmt: ContinueStatement, state: StatementEmitterContext) { emit("continue") if let targetLabel = stmt.targetLabel { emitSpaceSeparator() @@ -200,7 +221,7 @@ extension StatementEmitter: StatementVisitor { } } - func visitExpressions(_ stmt: ExpressionsStatement) { + func visitExpressions(_ stmt: ExpressionsStatement, state: StatementEmitterContext) { producer.emitWithSeparators(stmt.expressions, separator: "\n") { exp in if producer.settings.outputExpressionTypes { emitComments([ @@ -211,15 +232,15 @@ extension StatementEmitter: StatementVisitor { visitExpression(exp) } } - - func visitVariableDeclarations(_ stmt: VariableDeclarationsStatement) { + + func visitVariableDeclarations(_ stmt: VariableDeclarationsStatement, state: StatementEmitterContext) { let declarations = group(stmt.decl.map(producer.makeDeclaration)) for (i, decl) in declarations.enumerated() { if producer.settings.outputExpressionTypes { let declType = stmt.decl[i].type producer.emitComment("decl type: \(declType)") - + if let exp = stmt.decl[i].initialization { producer.emitComment("init type: \(exp.resolvedType ?? "")") } @@ -228,26 +249,44 @@ extension StatementEmitter: StatementVisitor { producer.emit(decl) } } - - func visitStatementVariableDeclaration(_ decl: StatementVariableDeclaration) { - + + func visitStatementVariableDeclaration(_ decl: StatementVariableDeclaration, state: StatementEmitterContext) { + } - func visitLocalFunction(_ stmt: LocalFunctionStatement) { + func visitLocalFunction(_ stmt: LocalFunctionStatement, state: StatementEmitterContext) { emit("func ") producer.emit(stmt.function.signature) emitSpaceSeparator() emitCodeBlock(stmt.function.body) } - - func visitThrow(_ stmt: ThrowStatement) { + + func visitThrow(_ stmt: ThrowStatement, state: StatementEmitterContext) { emit("throw ") visitExpression(stmt.exp) } - - func visitUnknown(_ stmt: UnknownStatement) { + + func visitUnknown(_ stmt: UnknownStatement, state: StatementEmitterContext) { emitLine("/*") emitLine(stmt.context.context) emitLine("*/") } + + struct StatementEmitterContext { + /// A default state to provide for entry-point statement visiting functions + /// when no special context is available. + static let `default` = StatementEmitterContext() + + /// Whether the current pattern binding context is already binding, and + /// no `let` keyword is required. + var patternContextIsBinding = false + + /// Returns a copy of `self` with the value at a specified keypath changed + /// to a specified value. + func with(_ keyPath: WritableKeyPath, value: Value) -> Self { + var copy = self + copy[keyPath: keyPath] = value + return copy + } + } } diff --git a/Sources/Core/SwiftSyntaxSupport/StatementEmitter.swift b/Sources/Core/SwiftSyntaxSupport/StatementEmitter.swift index a92ab0a01..e452f796d 100644 --- a/Sources/Core/SwiftSyntaxSupport/StatementEmitter.swift +++ b/Sources/Core/SwiftSyntaxSupport/StatementEmitter.swift @@ -43,7 +43,7 @@ class StatementEmitter { func isShorthandClosureCandidate(_ exp: BlockLiteralExpression) -> Bool { let hasParameters = !exp.parameters.isEmpty - + return !closureRequiresSignature(exp) && hasParameters } diff --git a/Sources/Core/SwiftSyntaxSupport/SwiftProducer.swift b/Sources/Core/SwiftSyntaxSupport/SwiftProducer.swift index afc8e9246..27c8dfd37 100644 --- a/Sources/Core/SwiftSyntaxSupport/SwiftProducer.swift +++ b/Sources/Core/SwiftSyntaxSupport/SwiftProducer.swift @@ -11,7 +11,7 @@ public class SwiftProducer { weak var delegate: SwiftProducerDelegate? var indentationMode: IndentationMode = .spaces(4) - + /// Current indentation level. var indentation: Int = 0 @@ -161,7 +161,7 @@ public class SwiftProducer { /// is inserted. func emitLineWith(_ block: () -> Void) { let bufferSizeBefore = buffer.count - + block() guard buffer.count > bufferSizeBefore else { @@ -225,12 +225,12 @@ public class SwiftProducer { emitSpaceSeparator() } } - + /// Ensures an empty line sits in the end of the buffer. /// If the buffer is empty, no change is made. func ensureEmptyLine() { guard !buffer.isEmpty else { return } - + ensureDoubleNewline() } @@ -256,7 +256,7 @@ public class SwiftProducer { } } - /// Queues a given prefix to the appended to the next non-empty line + /// Queues a given prefix to the appended to the next non-empty line func queuePrefix(_ prefix: PendingPrefix) { pendingPrefix.append(prefix) } @@ -269,35 +269,35 @@ public class SwiftProducer { printIntentionHistory: false, emitObjcCompatibility: false ) - + /// If `true`, when outputting expression statements, print the resulting /// type of the expression before the expression statement as a comment /// for inspection. public var outputExpressionTypes: Bool - + /// If `true`, when outputting final intentions, print any history /// information tracked on its `IntentionHistory` property before the /// intention's declaration as a comment for inspection. public var printIntentionHistory: Bool - + /// If `true`, `@objc` attributes and `: NSObject` are emitted for /// declarations during output. /// /// This may increase compatibility with previous Objective-C code when /// compiled and executed. public var emitObjcCompatibility: Bool - + public init( outputExpressionTypes: Bool, printIntentionHistory: Bool, emitObjcCompatibility: Bool ) { - + self.outputExpressionTypes = outputExpressionTypes self.printIntentionHistory = printIntentionHistory self.emitObjcCompatibility = emitObjcCompatibility } - + /// To ease modifications of single parameters from default settings /// without having to create a temporary variable first public func with(_ keyPath: WritableKeyPath, _ value: T) -> Self { @@ -451,7 +451,7 @@ extension SwiftProducer { /// /// } /// ``` - /// + /// /// Used to generate type member blocks. func emitMembersBlock(_ block: () -> Void) { emitLine("{") @@ -516,7 +516,7 @@ extension SwiftProducer { if parameter.isVariadic { emit("...") } - + if parameter.hasDefaultValue { emit(" = ") } @@ -636,7 +636,7 @@ extension SwiftProducer { } else { emitNewline() } - + case let .multiple(patterns): emitWithSeparators(patterns, separator: ", ", emit) emitNewline() @@ -726,7 +726,7 @@ extension SwiftProducer { emit(modifier, inline: true) } } - + func shouldEmitObjcAttribute(_ intention: IntentionProtocol) -> Bool { if !settings.emitObjcCompatibility { // Protocols which feature optional members must be emitted with @objc @@ -743,10 +743,10 @@ extension SwiftProducer { if let method = intention as? ProtocolMethodGenerationIntention { return method.isOptional } - + return false } - + if intention is EnumCaseGenerationIntention { return false } @@ -763,7 +763,7 @@ extension SwiftProducer { type.kind != .struct { return true } - + return false } @@ -857,7 +857,7 @@ extension SwiftProducer { } spacer.ensureEmptyLine() - + // Global functions for intention in file.globalFunctionIntentions { emit(intention) @@ -878,7 +878,7 @@ extension SwiftProducer { } spacer.ensureEmptyLine() - + // Extensions for intention in file.extensionIntentions { emit(intention) @@ -950,11 +950,13 @@ extension SwiftProducer { let emitter = startConditionalEmitter() emitIvars(intention) emitProperties(intention) + + emitter.ensureEmptyLine() emitSubscripts(intention) emitter.ensureEmptyLine() emitInitializers(intention) - + emitter.ensureEmptyLine() emitMethods(intention) } @@ -973,6 +975,8 @@ extension SwiftProducer { emitMembersBlock { let emitter = startConditionalEmitter() emitProperties(intention) + + emitter.ensureEmptyLine() emitSubscripts(intention) emitter.ensureEmptyLine() @@ -995,19 +999,21 @@ extension SwiftProducer { ensureSpaceSeparator() emitMembersBlock { let emitter = startConditionalEmitter() - + emitIvars(intention) emitProperties(intention) + + emitter.ensureEmptyLine() emitSubscripts(intention) - + emitter.ensureEmptyLine() emitInitializers(intention) - + emitter.ensureEmptyLine() if let deinitIntention = intention.deinitIntention { emit(deinitIntention) } - + emitter.ensureEmptyLine() emitMethods(intention) } @@ -1037,6 +1043,8 @@ extension SwiftProducer { let emitter = startConditionalEmitter() emitProperties(intention) + + emitter.ensureEmptyLine() emitSubscripts(intention) emitter.ensureEmptyLine() @@ -1227,10 +1235,10 @@ extension SwiftProducer { modifiers: modifiers(for: stmtDecl), initialization: stmtDecl.initialization ) - + return decl } - + func makeDeclaration(_ intention: ValueStorageIntention) -> SwiftVariableDeclaration { var accessors: SwiftVariableDeclaration.Accessor? if let intention = intention as? PropertyGenerationIntention { @@ -1251,7 +1259,7 @@ extension SwiftProducer { ) } } - + return makeDeclaration( name: intention.name, storage: intention.storage, @@ -1262,7 +1270,7 @@ extension SwiftProducer { initialization: _initialValue(for: intention) ) } - + func makeDeclaration( name: String, storage: ValueStorage, @@ -1272,13 +1280,13 @@ extension SwiftProducer { accessors: SwiftVariableDeclaration.Accessor? = nil, initialization: Expression? = nil ) -> SwiftVariableDeclaration { - + var patternBinding = makePatternBinding( name: name, type: storage.type, initialization: initialization ) - + if delegate?.swiftProducer( self, @@ -1289,7 +1297,7 @@ extension SwiftProducer { { patternBinding.type = nil } - + return SwiftVariableDeclaration( constant: storage.isConstant, attributes: attributes, @@ -1300,7 +1308,7 @@ extension SwiftProducer { ) ) } - + func makePatternBinding(_ intention: ValueStorageIntention) -> SwiftVariableDeclaration.PatternBindingElement { SwiftVariableDeclaration.PatternBindingElement( name: intention.name, @@ -1315,7 +1323,7 @@ extension SwiftProducer { type: SwiftType?, initialization: Expression? ) -> SwiftVariableDeclaration.PatternBindingElement { - + SwiftVariableDeclaration.PatternBindingElement( name: name, type: type, @@ -1336,7 +1344,7 @@ extension SwiftProducer { return nil } } - + return delegate?.swiftProducer(self, initialValueFor: intention) } } @@ -1345,19 +1353,19 @@ func group(_ declarations: [SwiftVariableDeclaration]) -> [SwiftVariableDeclarat guard let first = declarations.first else { return declarations } - + var result: [SwiftVariableDeclaration] = [first] - + for decl in declarations.dropFirst() { let last = result[result.count - 1] - + if let grouped = groupDeclarations(last, decl) { result[result.count - 1] = grouped } else { result.append(decl) } } - + return result } @@ -1365,7 +1373,7 @@ func groupDeclarations( _ decl1: SwiftVariableDeclaration, _ decl2: SwiftVariableDeclaration ) -> SwiftVariableDeclaration? { - + // Attributed or modified declarations cannot be merged guard decl1.attributes.isEmpty && decl2.attributes.isEmpty else { return nil @@ -1373,30 +1381,30 @@ func groupDeclarations( guard decl1.modifiers.isEmpty && decl2.modifiers.isEmpty else { return nil } - + if decl1.constant != decl2.constant { return nil } - + switch (decl1.kind, decl2.kind) { case let (.single(l, nil), .single(r, nil)): var decl = decl1 decl.kind = .multiple(patterns: [l, r]) - + return decl - + case let (.single(l, nil), .multiple(r)): var decl = decl1 decl.kind = .multiple(patterns: [l] + r) - + return decl - + case let (.multiple(l), .single(r, nil)): var decl = decl1 decl.kind = .multiple(patterns: l + [r]) - + return decl - + default: return nil } diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/ExpressionPasses/JavaScriptASTCorrectorExpressionPass.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/ExpressionPasses/JavaScriptASTCorrectorExpressionPass.swift new file mode 100644 index 000000000..01ad282ec --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/ExpressionPasses/JavaScriptASTCorrectorExpressionPass.swift @@ -0,0 +1,672 @@ +import SwiftAST +import ExpressionPasses + +public class JavaScriptASTCorrectorExpressionPass: ASTRewriterPass { + public override func visitCompound(_ stmt: CompoundStatement) -> Statement { + if let stmt = suggestSplit(stmt) { + notifyChange() + + return visitStatement(stmt) + } + + return super.visitCompound(stmt) + } + + public override func visitExpressions(_ stmt: ExpressionsStatement) -> Statement { + // Attempt to apply if-let pattern to expressions + if let ifLetStmt = suggestIfLetPattern(stmt) { + notifyChange() + + return visitStatement(ifLetStmt) + } + + // Check if any expression needs to be broken down + if let split = suggestSplit(stmt) { + notifyChange() + + return visitStatement(split) + } + + return super.visitExpressions(stmt) + } + + public override func visitBaseExpression(_ exp: Expression) -> Expression { + let exp = super.visitBaseExpression(exp) + + if !(exp.parent is ExpressionsStatement), let type = exp.resolvedType, + type.isOptional && typeSystem.isScalarType(type.deepUnwrapped) { + + // If an expected type is present (and no resolved type is present, + // or the expected type matches the resolved type), leave it alone + // since sub-expression visitors will handle this expression for us. + if let expectedType = exp.expectedType { + guard let resolvedType = exp.resolvedType else { + return exp + } + + if typeSystem.typesMatch(expectedType, resolvedType, ignoreNullability: true) { + return exp + } + } + + if let newExp = correctToDefaultValue(exp, targetType: exp.resolvedType?.deepUnwrapped) { + notifyChange() + + return super.visitExpression(newExp) + } else { + exp.expectedType = nil + } + } + + return exp + } + + public override func visitExpression(_ exp: Expression) -> Expression { + guard let expectedType = exp.expectedType, expectedType != exp.resolvedType else { + return super.visitExpression(exp) + } + + let exp = super.visitExpression(exp) + + // Don't correct top-level expressions + if exp.parent is ExpressionsStatement { + return exp + } + + if typeSystem.isNumeric(expectedType) { + if let corrected = correctToNumeric(exp) { + notifyChange() + + return super.visitExpression(corrected) + } + } else if expectedType == .bool { + // Parenthesize depending on parent expression type to avoid issues + // with operator precedence + let shouldParenthesize = + exp.parent is UnaryExpression + || exp.parent is BinaryExpression + + if var corrected = correctToBoolean(exp) { + notifyChange() + + corrected.expectedType = nil + corrected.resolvedType = .bool + + if shouldParenthesize { + corrected = .parens(corrected) + corrected.resolvedType = .bool + } + + return super.visitExpression(corrected) + } + } else if let corrected = correctToDefaultValue(exp) { + notifyChange() + + return super.visitExpression(corrected) + } + + return super.visitExpression(exp) + } + + public override func visitUnary(_ exp: UnaryExpression) -> Expression { + switch exp.op.category { + case .logical: + exp.exp = super.visitExpression(exp.exp) + + if let exp = correctToBoolean(exp) { + notifyChange() + + return .parens(exp) // Parenthesize, just to be sure + } + + return exp + case .arithmetic: + exp.exp = super.visitExpression(exp.exp) + + if let newExp = correctToNumeric(exp.exp) { + notifyChange() + + return .unary(op: exp.op, newExp) + } + + return exp + default: + return super.visitUnary(exp) + } + } + + public override func visitBinary(_ exp: BinaryExpression) -> Expression { + switch exp.op.category { + case .logical where exp.op == .or: + // Convert common JavaScript pattern ` || ` + // into a null-coalesce ` ?? ` + if exp.lhs.resolvedType == .bool && exp.rhs.resolvedType == .bool { + break + } + + exp.op = .nullCoalesce + + if let lhsType = exp.lhs.resolvedType, lhsType.isOptional == true { + exp.rhs.expectedType = lhsType.unwrapped + exp.resolvedType = lhsType.unwrapped + } else { + exp.lhs.expectedType = nil + exp.rhs.expectedType = nil + } + + notifyChange() + + break + + case .comparison where exp.op != .equals && exp.op != .unequals, + .arithmetic, + .bitwise: + + // Mark left hand side and right hand side of comparison expressions + // to expect non-optional of numeric values, in case they are numeric + // themselves. + if let lhsType = exp.lhs.resolvedType?.unwrapped, + typeSystem.isNumeric(lhsType) { + + exp.lhs.expectedType = lhsType + } + if let rhsType = exp.rhs.resolvedType?.unwrapped, + typeSystem.isNumeric(rhsType) { + + exp.rhs.expectedType = rhsType + } + + if exp.op.category == .arithmetic { + // Correct binary operations containing operands of different + // numerical types + guard let lhsType = exp.lhs.resolvedType, let rhsType = exp.rhs.resolvedType else { + break + } + + if !typeSystem.isNumeric(lhsType) + || !typeSystem.isNumeric(rhsType) + || lhsType == rhsType { + break + } + + // Let literals be naturally coerced + if exp.lhs.isLiteralExpression || exp.rhs.isLiteralExpression { + break + } + + if let expectedType = exp.expectedType { + exp.lhs.expectedType = expectedType + exp.rhs.expectedType = expectedType + } + + let targetLhsType = exp.lhs.expectedType ?? lhsType + let targetRhsType = exp.rhs.expectedType ?? rhsType + + let _targetType = + typeSystem + .implicitCoercedNumericType(for: targetLhsType, + targetRhsType) + + guard let targetType = _targetType else { + break + } + + if let newLhs = castNumeric(exp.lhs, to: targetType) { + exp.lhs = newLhs + } + + if let newRhs = castNumeric(exp.rhs, to: targetType) { + exp.rhs = newRhs + } + + notifyChange() + } + default: + break + } + + return super.visitBinary(exp) + } + + public override func visitPostfix(_ exp: PostfixExpression) -> Expression { + + // Get .() postfix values + if exp.op.asFunctionCall != nil, let memberPostfix = exp.exp.asPostfix, + let memberType = memberPostfix.exp.resolvedType { + + let member = memberPostfix.exp + + guard memberType.isOptional && !memberType.canBeImplicitlyUnwrapped + && typeSystem.isScalarType(memberType.deepUnwrapped) else { + return super.visitPostfix(exp) + } + + guard let initValue = typeSystem.defaultValue(for: memberType.deepUnwrapped) else { + return super.visitPostfix(exp) + } + + var res: Expression = + Expression + .parens( + member.copy().typed(expected: nil) + .binary(op: .nullCoalesce, rhs: initValue) + ).typed(memberType.deepUnwrapped) + + res = .postfix(res, memberPostfix.op.copy().withOptionalAccess(kind: .none)) + + res.resolvedType = memberPostfix.resolvedType + + res.asPostfix?.op.returnType = res.asPostfix?.op.returnType?.unwrapped + + res = .postfix(res, exp.op.copy()) + + res.resolvedType = exp.resolvedType?.unwrapped + res.asPostfix?.exp.resolvedType = res.asPostfix?.exp.resolvedType?.unwrapped + res.asPostfix?.exp.asPostfix?.exp.expectedType = nil + + notifyChange() + + return super.visitExpression(res) + } + + return super.visitPostfix(exp) + } + + // MARK: - Internals + + /// Suggests a split to a sequence of statements that could be potentially + /// invalid in Swift (like chained assignment variable declaration, `var a = b = c`) + func suggestSplit(_ stmt: CompoundStatement) -> CompoundStatement? { + var stmts: [Statement] = [] + + for stmt in stmt.statements { + guard let varDecl = stmt.asVariableDeclaration else { + stmts.append(stmt) + continue + } + + if let split = suggestSplit(varDecl) { + stmts.append(contentsOf: split) + } else { + stmts.append(varDecl) + } + } + + guard stmts.count != stmt.statements.count else { + return nil + } + + let copy = stmt.copy() + copy.statements = stmts.map { $0.copy() } + return copy + } + + /// Suggests a split to chained assignment variable declarations like, + /// `var a = b = c`. + func suggestSplit(_ stmt: VariableDeclarationsStatement) -> [Statement]? { + var splitCandidates: [Int: (assignment: Expression, lhs: Expression)] = [:] + for (i, decl) in stmt.decl.enumerated() { + guard let rhsAssignment = decl.initialization?.asAssignment else { + continue + } + + let lhs = rhsAssignment.lhs + guard canSplitChainedAssignmentLhs(lhs) else { + continue + } + + splitCandidates[i] = ( + assignment: rhsAssignment, + lhs: lhs + ) + } + + guard !splitCandidates.isEmpty else { + return nil + } + + var stmts: [Statement] = [] + + for (i, decl) in stmt.decl.enumerated() { + if let assignment = splitCandidates[i] { + stmts.append(.expression(assignment.assignment.copy())) + stmts.append( + .variableDeclaration( + identifier: decl.identifier, + type: decl.type, + initialization: assignment.lhs.copy() + ) + ) + } else { + stmts.append(.variableDeclarations([decl.copy()])) + } + } + + // Copy metadata to the first statement + stmts[0] = stmts[0].copyMetadata(from: stmt) + + return stmts + } + + /// Suggests a split to an expression that could be potentially invalid in + /// Swift (like chained assignments, `a = b = c`) + func suggestSplit(_ stmt: ExpressionsStatement) -> ExpressionsStatement? { + // Break sequential expressions + var sequence: [Expression] = [] + for exp in stmt.expressions { + if let split = suggestSplit(exp) { + sequence.append(contentsOf: split) + } else { + sequence.append(exp.copy()) + } + } + + if sequence.count != stmt.expressions.count { + return .expressions(sequence).copyMetadata(from: stmt) + } + + return nil + } + + /// Suggests a split to an expression that could be potentially invalid in + /// Swift (like chained assignments, `a = b = c`) + func suggestSplit(_ exp: Expression) -> [Expression]? { + assignmentSplit: + if let assignment = exp.asAssignment { + let lhs = assignment.lhs + + guard let rhsAssignment = assignment.rhs.asAssignment else { + break assignmentSplit + } + + let rhsLhs = rhsAssignment.lhs + guard canSplitChainedAssignmentLhs(rhsLhs) else { + break assignmentSplit + } + + let exp1 = rhsLhs.copy() + .assignment( + op: rhsAssignment.op, + rhs: rhsAssignment.rhs.copy() + ) + let exp2 = lhs.copy() + .assignment( + op: assignment.op, + rhs: rhsLhs.copy() + ) + + // Attempt to further split the expressions recursively + let exp1Sequence = suggestSplit(exp1) ?? [exp1] + + return exp1Sequence + [ + exp2, + ] + } + + return nil + } + + /// Checks if the lhs of a chained assignment is more or less safe to split + /// into a separate expression. + func canSplitChainedAssignmentLhs(_ lhs: Expression) -> Bool { + if lhs.isIdentifier { + return true + } + guard let postfixExp = lhs.asPostfix else { + return false + } + + for access in PostfixChainInverter(expression: postfixExp).invert() { + switch access { + case .root(let exp): + if !canSplitChainedAssignmentLhs(exp) { + return false + } + case .member: + break + case .subscript, .call: + return false + } + } + + return true + } + + func suggestIfLetPattern(_ stmt: ExpressionsStatement) -> IfStatement? { + // TODO: Deal with multiple expressions on a single line, maybe. + + let pf = ValueMatcherExtractor() + let functionCall = ValueMatcherExtractor(FunctionCallPostfix(arguments: [])) + let matcher = + ExpressionsStatement.matcher() + .keyPath(\.expressions, hasCount(1)) + .keyPath(\.expressions[0].asPostfix) { postfix in + postfix + .bind(to: pf) + .keyPath(\.functionCall, !isNil() ->> functionCall) + .keyPath(\.functionCall?.arguments, hasCount(1)) + } + + guard matcher.matches(stmt), let postfix = pf.value else { + return nil + } + + // Apply potential if-let patterns to simple 1-parameter function calls + guard let blockType = functionCall.value.callableSignature else { + return nil + } + + let params = blockType.parameters + + let argument = functionCall.value.arguments[0].expression + + // Check the receiving argument is non-optional, but the argument's type + // in the expression is an optional (but not an implicitly unwrapped, since + // Swift takes care of unwrapping that automatically) + guard let resolvedType = argument.resolvedType, !params[0].isOptional + && resolvedType.isOptional == true + && argument.resolvedType?.canBeImplicitlyUnwrapped == false else { + return nil + } + + // Scalars are dealt directly in another portion of the AST corrector. + guard !typeSystem.isScalarType(resolvedType.deepUnwrapped) else { + return nil + } + + let name = varNameForExpression(argument) + + // if let = { + // func() + // } + let newOp = functionCall.value.replacingArguments([ + .identifier(name).typed(resolvedType.deepUnwrapped) + ]) + let newPostfix = postfix.copy() + newPostfix.op = newOp + + let stmt = + Statement.ifLet( + .identifier(name), argument.copy(), + body: [ + .expression(newPostfix) + ]) + + return stmt + } + + private func varNameForExpression(_ exp: Expression) -> String { + if let identifier = exp.asIdentifier { + return identifier.identifier + } + if let member = exp.asPostfix?.member { + return member.name + } + if let callPostfix = exp.asPostfix, callPostfix.functionCall != nil, + let memberPostfix = callPostfix.exp.asPostfix, let member = memberPostfix.member { + return member.name + } + + return "value" + } + + func correctToDefaultValue(_ exp: Expression, + targetType: SwiftType? = nil) -> Expression? { + + guard let expectedType = targetType ?? exp.expectedType else { + return nil + } + guard expectedType == exp.resolvedType?.deepUnwrapped else { + return nil + } + guard exp.resolvedType?.canBeImplicitlyUnwrapped == false else { + return nil + } + guard let defValue = typeSystem.defaultValue(for: expectedType) else { + return nil + } + guard defValue.resolvedType?.isOptional == false else { + return nil + } + + let newExp = exp.copy() + + newExp.expectedType = nil + + let converted: Expression + + if newExp.requiresParens { + converted = .parens(newExp).binary(op: .nullCoalesce, rhs: defValue) + } else { + converted = newExp.binary(op: .nullCoalesce, rhs: defValue) + } + + converted.resolvedType = defValue.resolvedType + converted.expectedType = converted.resolvedType + + return .parens(converted).typed(defValue.resolvedType?.deepUnwrapped) + } + + func correctToNumeric(_ exp: Expression) -> Expression? { + guard let type = exp.resolvedType else { + return nil + } + + if type.isOptional && typeSystem.isNumeric(type.deepUnwrapped) { + guard let defaultExp = typeSystem.defaultValue(for: type.deepUnwrapped) else { + return nil + } + + let newExp: Expression + + do { + let expCopy = exp.copy() + + if expCopy.requiresParens { + newExp = + Expression + .parens(expCopy) + .binary(op: .nullCoalesce, + rhs: defaultExp) + } else { + newExp = .parens(expCopy.binary(op: .nullCoalesce, rhs: defaultExp)) + } + + newExp.expectedType = expCopy.expectedType + newExp.resolvedType = type.deepUnwrapped + + expCopy.expectedType = nil + } + + return newExp + } + + return nil + } + + func castNumeric(_ exp: Expression, to type: SwiftType) -> Expression? { + guard let typeName = type.typeName else { + return nil + } + guard let resolvedType = exp.resolvedType, typeSystem.isNumeric(resolvedType) else { + return nil + } + + if resolvedType == type { + return nil + } + + let cast = Expression + .identifier(typeName) + .typed(.metatype(for: type)) + .call([exp.copy().typed(expected: nil)]) + .typed(type) + .typed(expected: type) + + return cast + } + + func correctToBoolean(_ exp: Expression) -> Expression? { + func innerHandle(_ exp: Expression, negated: Bool) -> Expression? { + guard let type = exp.resolvedType else { + return nil + } + + let newExp = exp.copy() + + // + if typeSystem.isNumeric(type.deepUnwrapped) { + newExp.expectedType = nil + + let outer = + newExp.binary(op: negated ? .equals : .unequals, + rhs: .constant(0)) + + outer.resolvedType = .bool + + return outer + } + + switch type { + // -> == true + // ! -> != true (negated) + case .optional(.bool): + newExp.expectedType = nil + + let outer = + newExp.binary(op: negated ? .unequals : .equals, + rhs: .constant(true)) + + outer.resolvedType = .bool + + return outer + + // -> != nil + // -> == nil (negated) + case .optional: + newExp.expectedType = nil + + let outer = + newExp.binary(op: negated ? .equals : .unequals, + rhs: .constant(.nil)) + + outer.resolvedType = .bool + + return outer + + default: + return nil + } + } + + if exp.resolvedType == .bool { + return nil + } + + if let unary = exp.asUnary, unary.op == .negate { + return innerHandle(unary.exp, negated: true) + } else { + return innerHandle(exp, negated: false) + } + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/Intention+TypedSource.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/Intention+TypedSource.swift new file mode 100644 index 000000000..1a64aa951 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/Intention+TypedSource.swift @@ -0,0 +1,36 @@ +import Intentions +import JsGrammarModels + +extension Intention { + func _typedSource() -> T? { + source as? T + } +} + +extension GlobalVariableGenerationIntention { + var variableSource: JsVariableDeclarationNode? { _typedSource() } +} + +extension GlobalVariableInitialValueIntention { + var typedSource: JsExpressionNode? { _typedSource() } +} + +extension GlobalFunctionGenerationIntention { + var typedSource: JsFunctionDeclarationNode? { _typedSource() } +} + +extension FunctionBodyIntention { + var typedSource: JsFunctionBodyNode? { _typedSource() } +} + +extension MethodGenerationIntention { + var typedSource: JsMethodDefinitionNode? { _typedSource() } +} + +extension PropertyGenerationIntention { + var typedSource: JsClassPropertyNode? { _typedSource() } +} + +extension PropertyInitialValueGenerationIntention { + var typedSource: JsExpressionNode? { _typedSource() } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/IntentionPasses/JavaScriptPropertyMergeIntentionPass.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/IntentionPasses/JavaScriptPropertyMergeIntentionPass.swift new file mode 100644 index 000000000..d9f3efb01 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/IntentionPasses/JavaScriptPropertyMergeIntentionPass.swift @@ -0,0 +1,272 @@ +import SwiftAST +import KnownType +import Intentions + +/// Merges properties with getter/setters in types +public class JavaScriptPropertyMergeIntentionPass: IntentionPass { + /// A number representing the unique index of an operation to aid in history + /// checking by tag. + /// Represents the number of operations applied by this intention pass while + /// instantiated, +1. + private var operationsNumber: Int = 1 + + private var intentions: IntentionCollection! + private var context: IntentionPassContext! + + /// Textual tag this intention pass applies to history tracking entries. + private var historyTag: String { + "\(JavaScriptPropertyMergeIntentionPass.self):\(operationsNumber)" + } + + public init() { + + } + + public func apply(on intentionCollection: IntentionCollection, context: IntentionPassContext) { + self.intentions = intentionCollection + self.context = context + + context.typeSystem.makeCache() + + var matches: [PropertySet] = [] + + var classesSeen: Set = [] + + // Collect all (nominal, non-category types) and analyze them one-by-one. + for file in intentionCollection.fileIntentions() { + for cls in file.typeIntentions.compactMap({ $0 as? BaseClassIntention }) { + // Extensions are handled separately. + if cls is ClassExtensionGenerationIntention { + continue + } + + if classesSeen.contains(cls.typeName) { + continue + } + + classesSeen.insert(cls.typeName) + + matches.append(contentsOf: collectMatches(in: cls)) + } + } + + // Do a second run, this time collecting extensions for which there is no + // nominal primary declaration (i.e. categories for types imported from + // external dependencies) + for file in intentionCollection.fileIntentions() { + for cls in file.extensionIntentions { + if classesSeen.contains(cls.typeName) { + continue + } + + classesSeen.insert(cls.typeName) + + matches.append(contentsOf: collectMatches(in: cls)) + } + } + + context.typeSystem.tearDownCache() + + // Flatten properties now + for match in matches { + _ = joinPropertySet(match, on: match.classIntention) + } + } + + private func collectMatches(in classIntention: BaseClassIntention) -> [PropertySet] { + let methods = collectMethods(fromClass: classIntention) + + // Match getters and setters + var matches: [PropertySet] = [] + + let getterPrefix = "get_" + let setterPrefix = "set_" + + let getters: [MethodGenerationIntention] = + methods + .filter { $0.typedSource?.context == .isGetter } + + let setters: [MethodGenerationIntention] = + methods + .filter { $0.typedSource?.context == .isSetter } + + let settersByName = setters.groupBy({ $0.name }) + + // Pair up each getter with a setter, or leave it as a getter-only + for getter in getters { + let propertyName = String(getter.name.dropFirst(getterPrefix.count)) + + let potentialSetters = settersByName[setterPrefix + propertyName] + + var propSet = + PropertySet( + classIntention: classIntention, + propertyName: propertyName, + propertyType: getter.returnType == .void ? .any : getter.returnType, + getter: getter, + setter: nil + ) + + if let potentialSetters, potentialSetters.count == 1 { + propSet.setter = potentialSetters[0] + } + + matches.append(propSet) + } + + return matches + } + + func collectMethods(fromClass classIntention: BaseClassIntention) -> [MethodGenerationIntention] { + var methods: [MethodGenerationIntention] = [] + + for file in intentions.fileIntentions() { + for type in file.typeIntentions where type.typeName == classIntention.typeName { + methods.append(contentsOf: type.methods) + } + } + + return methods + } + + /// From a given found joined set of @property definition and potential + /// getter/setter definitions, reworks the intended signatures on the class + /// definition such that properties are correctly flattened with their non-synthesized + /// getter/setters into `var myVar { get set }` Swift computed properties. + /// + /// Returns `false` if the method ended up making no changes. + // swiftlint:disable function_body_length + private func joinPropertySet(_ propertySet: PropertySet, on classIntention: BaseClassIntention) -> Bool { + switch (propertySet.getter, propertySet.setter) { + // Getter and setter: Create a property with `{ get { [...] } set { [...] }` + case let (getter, setter?): + guard let getterOwner = getter.type, let setterOwner = setter.type else { + return false + } + + let finalGetter: FunctionBodyIntention + let finalSetter: PropertyGenerationIntention.Setter + + if let getterBody = getter.functionBody, let setterBody = setter.functionBody { + finalGetter = getterBody + + finalSetter = + PropertyGenerationIntention + .Setter( + valueIdentifier: setter.parameters[0].name, + body: setterBody + ) + } else { + finalGetter = FunctionBodyIntention(body: []) + finalSetter = + PropertyGenerationIntention + .Setter( + valueIdentifier: "value", + body: FunctionBodyIntention(body: []) + ) + } + + // Remove the original method intentions + getterOwner.removeMethod(getter) + setterOwner.removeMethod(setter) + + getterOwner.history + .recordChange( + tag: historyTag, + description: """ + Removed method \(TypeFormatter.asString(method: getter, ofType: getterOwner)) since it is a getter. + """ + ) + + setterOwner.history + .recordChange( + tag: historyTag, + description: """ + Removed method \(TypeFormatter.asString(method: setter, ofType: setterOwner)) since it is a setter. + """ + ) + + // Synthesize property + let property = PropertyGenerationIntention( + name: propertySet.propertyName, + type: propertySet.propertyType, + objcAttributes: [] + ) + property.mode = .property(get: finalGetter, set: finalSetter) + property.history.recordCreation( + description: """ + Created getter/setter property by merging original getter \ + \(TypeFormatter.asString(method: getter, ofType: getterOwner)) \ + and setter \ + \(TypeFormatter.asString(method: setter, ofType: setterOwner)) + """ + ) + property.history.mergeHistories(getter.history) + property.history.mergeHistories(setter.history) + property.precedingComments = getter.precedingComments + setter.precedingComments + + classIntention.addProperty(property) + + operationsNumber += 1 + context.notifyChange() + + return true + + // Getter-only: Create computed property. + case let (getter, nil): + guard let getterOwner = getter.type else { + return false + } + + let getterBody = getter.functionBody ?? FunctionBodyIntention(body: []) + + // Remove the original method intention + getterOwner.removeMethod(getter) + + getterOwner + .history + .recordChange( + tag: historyTag, + description: """ + Merged getter method \(TypeFormatter.asString(method: getter, ofType: getterOwner)) \ + into the getter-only property \ + \(propertySet.propertyName) + """, + relatedIntentions: [getterBody] + ) + .echoRecord(to: getterBody) + + // Synthesize property + let property = PropertyGenerationIntention( + name: propertySet.propertyName, + type: propertySet.propertyType, + objcAttributes: [] + ) + property.mode = .computed(getterBody) + property.history.recordCreation( + description: """ + Created computed property by merging original getter \ + \(TypeFormatter.asString(method: getter, ofType: getterOwner)) + """ + ) + property.history.mergeHistories(getter.history) + property.precedingComments = getter.precedingComments + + classIntention.addProperty(property) + + operationsNumber += 1 + + context.notifyChange() + + return true + } + } + + private struct PropertySet { + var classIntention: BaseClassIntention + var propertyName: String + var propertyType: SwiftType + var getter: MethodGenerationIntention + var setter: MethodGenerationIntention? + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScript2SwiftRewriter.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScript2SwiftRewriter.swift new file mode 100644 index 000000000..ae0bc6807 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScript2SwiftRewriter.swift @@ -0,0 +1,1014 @@ +#if canImport(ObjectiveC) +import ObjectiveC +#endif + +import Foundation +import Dispatch +import Utils +import AntlrCommons +import GrammarModelBase +import JsGrammarModels +import JsParser +import SwiftAST +import TypeSystem +import WriterTargetOutput +import Intentions +import Analysis +import IntentionPasses +import ExpressionPasses +import SourcePreprocessors +import SwiftSyntaxSupport +import Utils +import SwiftRewriterLib + +private typealias NonnullTokenRange = (start: Int, end: Int) + +/// Main front-end for Swift Rewriter +public final class JavaScript2SwiftRewriter { + private static var _parserStatePool: JsParserStatePool = JsParserStatePool() + + /// The default settings for the underlying syntax writer. + public static let defaultWriterOptions: SwiftSyntaxOptions = .default.with(\.alwaysEmitVariableTypes, true) + + private let sourcesProvider: InputSourcesProvider + private var outputTarget: WriterOutput + + private let typeMapper: TypeMapper + private let intentionCollection: IntentionCollection + private var typeSystem: IntentionCollectionTypeSystem + + /// For pooling and reusing Antlr parser states to aid in performance + private var parserStatePool: JsParserStatePool { JavaScript2SwiftRewriter._parserStatePool } + + /// To keep token sources alive long enough. + private var parsers: [JsParser] = [] + + /// An optional instance of a parser cache with pre-parsed input files. + public var parserCache: JavaScriptParserCache? + + /// A diagnostics instance that collects all diagnostic errors during input + /// source processing. + public let diagnostics: Diagnostics + + /// An expression pass is executed for every method expression to allow custom + /// transformations to be applied to resulting code. + public var astRewriterPassSources: ASTRewriterPassSource + + /// Custom source pre-processors that are applied to each input source code + /// before parsing. + public var preprocessors: [SourcePreprocessor] = [] + + /// Provider for intention passes to apply before passing the constructs to + /// the output + public var intentionPassesSource: IntentionPassSource + + /// Provider for global variables + public var globalsProvidersSource: GlobalsProvidersSource + + /// Provider for swift-syntax rewriters + public var syntaxRewriterPassSource: SwiftSyntaxRewriterPassProvider + + /// Describes settings for the current `JavaScript2SwiftRewriter` invocation + public var settings: Settings + + /// Describes settings to pass to the AST writers when outputting code + public var writerOptions: SwiftSyntaxOptions = JavaScript2SwiftRewriter.defaultWriterOptions + + public init( + input: InputSourcesProvider, + output: WriterOutput, + intentionPassesSource: IntentionPassSource? = nil, + astRewriterPassSources: ASTRewriterPassSource? = nil, + globalsProvidersSource: GlobalsProvidersSource? = nil, + syntaxRewriterPassSource: SwiftSyntaxRewriterPassProvider? = nil, + settings: Settings = .default + ) { + + self.diagnostics = Diagnostics() + self.sourcesProvider = input + self.outputTarget = output + self.intentionCollection = IntentionCollection() + self.intentionPassesSource = + intentionPassesSource ?? ArrayIntentionPassSource(intentionPasses: []) + self.astRewriterPassSources = + astRewriterPassSources ?? ArrayASTRewriterPassSource(syntaxNodePasses: []) + self.globalsProvidersSource = + globalsProvidersSource ?? ArrayGlobalProvidersSource(globalsProviders: []) + self.syntaxRewriterPassSource = + syntaxRewriterPassSource ?? ArraySwiftSyntaxRewriterPassProvider(passes: []) + + typeSystem = IntentionCollectionTypeSystem(intentions: intentionCollection) + + self.typeMapper = DefaultTypeMapper(typeSystem: typeSystem) + self.settings = settings + } + + public func rewrite() throws { + parsers.removeAll() + intentionCollection.removeAll() + + try autoreleasepool { + let lazyParse = try loadInputSources() + + if settings.emitJavaScriptObject { + emitJavaScriptObject() + } + + parseStatements(lazyParse) + + if settings.deduceTypes { + propagateDeclarationTypes(lazyParse) + } + + performIntentionAndSyntaxPasses(intentionCollection) + outputDefinitions(intentionCollection) + } + } + + private func loadInputSources() throws -> [LazyParseItem] { + // Load input sources + let sources = sourcesProvider.sources() + + let queue = ConcurrentOperationQueue() + queue.maxConcurrentOperationCount = settings.numThreads + + let outError: ConcurrentValue = ConcurrentValue(wrappedValue: nil) + let mutex = Mutex() + var lazyParse: [LazyParseItem] = [] + + for (i, src) in sources.enumerated() { + queue.addOperation { + if outError.wrappedValue != nil { + return + } + + do { + try autoreleasepool { + let result = try self.loadJsSource(from: src, index: i, mutex: mutex) + + mutex.locking { + lazyParse.append(contentsOf: result) + } + } + } catch { + outError.modifyingValue { + if $0 != nil { return } + + $0 = error + } + } + } + } + + queue.runAndWaitConcurrent() + + if let error = outError.wrappedValue { + throw error + } + + // Keep file ordering of intentions + intentionCollection.sortFileIntentions() + + return lazyParse + } + + /// Emits a `JavaScriptObject` type generation intention along with the + /// currently parsed intentions. + /// + /// Must be called with at least one intention parsed, in order to have a + /// base path to use for the generated file intention. + private func emitJavaScriptObject() { + if settings.verbose { + print("Emitting JavaScriptObject...") + } + + let intention = JavaScriptObjectGenerator().generateTypeIntention() + + // Find the common path root across all generation intentions for the + // synthesized intention + var path: [String]? + for file in intentionCollection.fileIntentions() { + let components = (file.targetPath as NSString).pathComponents + if let current = path { + path = zip(components, current).split(whereSeparator: { $0 != $1 }).first?.map { $0.0 } + } else { + path = components.dropLast() + } + } + + path?.append("JavaScriptObject.swift") + + if let path = path, let first = path.first { + let basePath = path.dropFirst().reduce(first) { ($0 as NSString).appendingPathComponent($1) } + + let file = FileGenerationIntention( + sourcePath: "", + targetPath: basePath + ) + + file.addType(intention) + + intentionCollection.addIntention(file) + } else { + if settings.verbose { + print("Failed to find potential target path for JavaScriptObject.swift. Emitting into first file found instead...") + } + + // Failed to find a proper file path: Emit on the first input file, + // sorted alphabetically + let sorted = intentionCollection.fileIntentions().sorted { + URL(fileURLWithPath: $0.targetPath).lastPathComponent < URL(fileURLWithPath: $1.targetPath).lastPathComponent + } + + if let first = sorted.first { + first.addType(intention) + } else { + // Failed - emit error + diagnostics.error( + "Error emitting JavaScriptObject type: No file found to insert generated type in.", + origin: "", + location: .invalid + ) + } + } + + // Keep file ordering of intentions + intentionCollection.sortFileIntentions() + } + + /// Parses all statements now, with proper type information available. + private func parseStatements(_ items: [LazyParseItem]) { + if settings.verbose { + print("Parsing function bodies...") + } + + // Register globals first + for provider in globalsProvidersSource.globalsProviders { + typeSystem.addTypealiasProvider(provider.typealiasProvider()) + typeSystem.addKnownTypeProvider(provider.knownTypeProvider()) + } + + typeSystem.makeCache() + defer { + typeSystem.tearDownCache() + } + + let queue = ConcurrentOperationQueue() + queue.maxConcurrentOperationCount = settings.numThreads + + for item in items { + let source: Source + switch item { + case .globalFunction(let s, _, _), + .initializer(let s, _, _), + .method(let s, _, _), + .globalVar(let s, _, _), + .classProperty(let s, _, _): + + source = s + } + + queue.addOperation { + autoreleasepool { + let delegate = InnerASTReaderDelegate(parseItem: item) + + let state = JavaScript2SwiftRewriter._parserStatePool.pull() + defer { + JavaScript2SwiftRewriter._parserStatePool.repool(state) + } + + let reader = JavaScriptASTReader( + source: source, + typeSystem: self.typeSystem, + options: self.makeASTReaderOptions() + ) + reader.delegate = delegate + + switch item { + case let .globalFunction(_, funcBody, _): + guard let sourceBody = funcBody.typedSource else { + return + } + guard let body = sourceBody.body else { + return + } + + funcBody.body = + reader.parseStatements( + body: body, + comments: sourceBody.comments, + typeContext: nil + ) + + case let .method(_, funcBody, method): + guard let sourceBody = funcBody.typedSource else { + return + } + guard let body = sourceBody.body else { + return + } + + funcBody.body = + reader.parseStatements( + body: body, + comments: sourceBody.comments, + typeContext: method.type + ) + + case let .initializer(_, funcBody, method): + guard let sourceBody = funcBody.typedSource else { + return + } + guard let body = sourceBody.body else { + return + } + + funcBody.body = + reader.parseStatements( + body: body, + comments: sourceBody.comments, + typeContext: method.type + ) + + case .classProperty(_, let initialValue, _): + guard let expression = initialValue.typedSource?.expression else { + return + } + + initialValue.expression = reader.parseExpression(expression: expression) + + case .globalVar(_, let v, _): + guard let expression = v.typedSource?.expression else { + return + } + + v.expression = reader.parseExpression(expression: expression) + } + } + } + } + + queue.runAndWaitConcurrent() + } + + /// Evaluate all type signatures, now with the knowledge of all types present + /// in the program. + private func evaluateTypes() { + if settings.verbose { + print("Resolving member types...") + } + + typeSystem.makeCache() + defer { + typeSystem.tearDownCache() + } + + fatalError("Not implemented") + } + + private func propagateDeclarationTypes(_ items: [LazyParseItem]) { + if settings.verbose { + print("Deducing declaration types...") + } + + let baseType = SwiftType.any + + let cache = DefinitionTypePropagator.PerIntentionTypeCache() + var shouldRepeat: Bool = true + + typeSystem.makeCache() + defer { + typeSystem.tearDownCache() + } + + outer: + while shouldRepeat { + shouldRepeat = false + + let typeResolverInvoker = makeTypeResolverInvoker() + + for item in items { + typeResolverInvoker.resolveAllExpressionTypes( + in: intentionCollection, + force: true + ) + + let carrier: FunctionBodyCarryingIntention + + switch item { + case .globalVar(_, let initialization, let intention): + carrier = .globalVariable(intention, initialization) + + case .classProperty(_, let value, let intention): + carrier = .propertyInitializer(intention, value) + + case .method(_, _, let intention): + carrier = .method(intention) + + case .initializer(_, _, let intention): + carrier = .initializer(intention) + + case .globalFunction(_, _, let intention): + carrier = .global(intention) + } + + let localTypeResolver = DefaultLocalTypeResolverInvoker( + intention: carrier, + globals: makeGlobalDefinitionsSource(), + typeSystem: typeSystem + ) + + let delegate = TypeDetectingDelegate(typeSystem: typeSystem) + let typePropagator = DefinitionTypePropagator( + cache: cache.cache(for: carrier), + options: .init( + baseType: baseType, + baseNumericType: .double, + baseStringType: nil + ), + typeSystem: typeSystem, + typeResolver: localTypeResolver + ) + typePropagator.delegate = delegate + + if let parameterized = carrier.parameterizedFunction as? MutableSignatureFunctionIntention { + // TODO: This should be moved to DefaultTypePropagator. + + let types = withExtendedLifetime(delegate) { + typePropagator.computeParameterTypes(in: parameterized) + } + + var assigned = false + + for (i, type) in types.enumerated() { + guard let type = type else { + continue + } + + parameterized.signature.parameters[i].type = type + assigned = true + } + + if assigned { + shouldRepeat = true + continue outer + } + } + + withExtendedLifetime(delegate) { + typePropagator.propagate(in: carrier) + } + } + } + } + + private func performIntentionAndSyntaxPasses(_ intentionCollection: IntentionCollection) { + let globals = CompoundDefinitionsSource() + + if settings.verbose { + print("Running intention passes...") + } + + // Register globals first + for provider in globalsProvidersSource.globalsProviders { + globals.addSource(provider.definitionsSource()) + } + + let typeResolverInvoker = makeTypeResolverInvoker() + + // Make a pre-type resolve before applying passes + typeResolverInvoker.resolveAllExpressionTypes(in: intentionCollection, force: true) + + var requiresResolve = false + + let context = + IntentionPassContext( + typeSystem: typeSystem, + typeMapper: typeMapper, + typeResolverInvoker: typeResolverInvoker, + numThreads: settings.numThreads, + notifyChange: { requiresResolve = true } + ) + + let intentionPasses = intentionPassesSource.intentionPasses + + // Execute passes + for (i, pass) in intentionPasses.enumerated() { + autoreleasepool { + requiresResolve = false + + if settings.verbose { + // Clear previous line and re-print, instead of bogging down + // the terminal with loads of prints + if i > 0 { + _terminalClearLine() + } + + let totalPadLength = intentionPasses.count.description.count + let progressString = + String( + format: "[%0\(totalPadLength)d/%d]", + i + 1, + intentionPasses.count + ) + + print("\(progressString): \(type(of: pass))") + } + + pass.apply(on: intentionCollection, context: context) + + printDiagnosedFiles(step: "After intention pass \(type(of: pass))") + + if requiresResolve { + typeResolverInvoker + .resolveAllExpressionTypes( + in: intentionCollection, + force: true + ) + } + } + } + + if settings.verbose { + print("Running syntax passes...") + } + + // Resolve all expressions again + typeResolverInvoker + .resolveAllExpressionTypes( + in: intentionCollection, + force: true + ) + + let syntaxPasses = astRewriterPassSources.syntaxNodePasses + + let applier = + ASTRewriterPassApplier( + passes: syntaxPasses, + typeSystem: typeSystem, + globals: globals, + numThreads: settings.numThreads + ) + + let progressDelegate = ASTRewriterDelegate() + if settings.verbose { + applier.progressDelegate = progressDelegate + } + + if !settings.diagnoseFiles.isEmpty { + let mutex = Mutex() + applier.afterFile = { file, passName in + mutex.locking { + self.printDiagnosedFile(targetPath: file, step: "After applying \(passName) pass") + } + } + } + + typeSystem.makeCache() + + withExtendedLifetime(progressDelegate) { + applier.apply(on: intentionCollection) + } + + if settings.stageDiagnostics.contains(.callGraph) { + let graph = CallGraph.fromIntentions( + intentionCollection, + typeSystem: typeSystem + ) + + let graphviz = graph.asGraphviz().generateFile( + options: .init(simplifyGroups: false) + ) + + print(graphviz) + } + + typeSystem.tearDownCache() + } + + private func outputDefinitions(_ intentionCollection: IntentionCollection) { + if settings.verbose { + print("Applying Swift syntax passes and saving files...") + } + + let progressListener = InnerSwiftWriterDelegate() + let syntaxApplier = + SwiftSyntaxRewriterPassApplier(provider: syntaxRewriterPassSource) + + let writer = SwiftWriter( + intentions: intentionCollection, + options: writerOptions, + numThreads: settings.numThreads, + diagnostics: diagnostics, + output: outputTarget, + typeSystem: typeSystem, + syntaxRewriterApplier: syntaxApplier + ) + + if settings.verbose { + writer.progressListener = progressListener + } + + withExtendedLifetime(progressListener) { + writer.execute() + } + } + + private func loadJsSource(from source: InputSource, index: Int, mutex: Mutex) throws -> [LazyParseItem] { + let state = parserStatePool.pull() + defer { parserStatePool.repool(state) } + + // Generate intention for this source + var path = source.sourcePath() + + if settings.verbose { + print("Parsing \((path as NSString).lastPathComponent)...") + } + + path = (path as NSString).deletingPathExtension + ".swift" + + // Hit parser cache, if available + let parser: JsParser + if let parserCache = parserCache { + parser = try parserCache.loadParsedTree(input: source) + } else { + // TODO: Reduce duplication with JavaScriptParserCache.applyPreprocessors + let src = try source.loadSource() + + let processedSrc = applyPreprocessors(source: src) + + parser = JsParser(string: processedSrc, fileName: src.filePath, state: state) + parser.antlrSettings = makeAntlrSettings() + try parser.parse() + } + + let collectorDelegate = CollectorDelegate(source: parser.source) + + if settings.stageDiagnostics.contains(.parsedAST) { + parser.rootNode.printNode({ print($0) }) + } + + let ctx = JavaScriptIntentionCollector.Context() + + let fileIntent = FileGenerationIntention(sourcePath: source.sourcePath(), targetPath: path) + fileIntent.index = index + fileIntent.isPrimary = source.isPrimary + ctx.pushContext(fileIntent) + + let intentionCollector = JavaScriptIntentionCollector(delegate: collectorDelegate, context: ctx) + intentionCollector.collectIntentions(parser.rootNode) + + assert( + ctx.popContext() is FileGenerationIntention, + "Expected \(FileGenerationIntention.self) to be last element on the stack after intention collection." + ) + + mutex.locking { + parsers.append(parser) + diagnostics.merge(with: parser.diagnostics) + intentionCollection.addIntention(fileIntent) + } + + return collectorDelegate.lazyParse + } + + private func applyPreprocessors(source: CodeSource) -> String { + let src = source.fetchSource() + + let context = _PreprocessingContext(filePath: source.filePath) + + return preprocessors.reduce(src) { + $1.preprocess(source: $0, context: context) + } + } + + private func printDiagnosedFiles(step: String) { + for diagnoseFile in settings.diagnoseFiles { + printDiagnosedFile(targetPath: diagnoseFile, step: step) + } + } + + private func printDiagnosedFile(targetPath: String, step: String) { + let files = intentionCollection.fileIntentions() + + if !settings.diagnoseFiles.contains(where: { targetPath.contains($0) }) { + return + } + + guard let match = files.first(where: { $0.targetPath.hasSuffix(targetPath) }) else { + return + } + + let writer = SwiftProducer(settings: writerOptions.toSwiftProducerSettings()) + + let output = writer.generateFile(match) + + print("Diagnose file: \(match.targetPath)\ncontext: \(step)") + print(output) + print("") + } + + /// Returns a list of all globals within all intentions. + private func makeGlobalDefinitionsSource() -> DefinitionsSource { + let globals = CompoundDefinitionsSource() + + for provider in globalsProvidersSource.globalsProviders { + globals.addSource(provider.definitionsSource()) + } + + return globals + } + + private func makeTypeResolverInvoker() -> DefaultTypeResolverInvoker { + let globals = CompoundDefinitionsSource() + + // Register globals first + for provider in globalsProvidersSource.globalsProviders { + globals.addSource(provider.definitionsSource()) + } + + let typeResolverInvoker = + DefaultTypeResolverInvoker( + globals: globals, + typeSystem: typeSystem, + numThreads: settings.numThreads + ) + + return typeResolverInvoker + } + + private func makeAntlrSettings() -> AntlrSettings { + AntlrSettings(forceUseLLPrediction: settings.forceUseLLPrediction) + } + + private func makeASTReaderOptions() -> JavaScriptASTReaderOptions { + var options = JavaScriptASTReaderOptions.default + + if settings.emitJavaScriptObject { + options.objectLiteralKind = .javaScriptObject() + } + + return options + } + + /// Settings for a `JavaScript2SwiftRewriter` instance + public struct Settings { + /// Gets the default settings for a `JavaScript2SwiftRewriter` invocation + public static var `default`: Self = .init( + numThreads: 8, + verbose: false, + diagnoseFiles: [], + forceUseLLPrediction: false, + stageDiagnostics: [], + emitJavaScriptObject: false, + deduceTypes: false + ) + + /// The number of concurrent threads to use when applying intention/syntax + /// node passes and other multi-threaded operations. + /// + /// Default is 8. + public var numThreads: Int + + /// Whether to deploy a verbose mode that outputs information about the + /// transpilation process while executing it. + /// + /// Default is false. + public var verbose: Bool + + /// Array of files to periodically print out on the console whenever + /// intention and expression passes are passed through the files. + public var diagnoseFiles: [String] + + /// Whether to indicate to parser instances to force usage of LL prediction + /// mode on the underlying ANTLR parser. + /// + /// Sometimes skipping SLL prediction mode straight to LL prediction can + /// be more effective. + public var forceUseLLPrediction: Bool + + /// Enables printing outputs of stages for diagnostic purposes. + public var stageDiagnostics: [StageDiagnosticFlag] + + /// Whether to emit JavaScript object declarations wrapped in a JavaScriptObject + /// declaration. + /// If specified, this will also emit a new file along the output for + /// the JavaScriptObject type definition. + public var emitJavaScriptObject: Bool + + /// Whether to spend time attempting to deduce types of local variables + /// and parameter types for functions. + public var deduceTypes: Bool + + public init( + numThreads: Int, + verbose: Bool, + diagnoseFiles: [String], + forceUseLLPrediction: Bool, + stageDiagnostics: [StageDiagnosticFlag], + emitJavaScriptObject: Bool, + deduceTypes: Bool + ) { + self.numThreads = numThreads + self.verbose = verbose + self.diagnoseFiles = [] + self.forceUseLLPrediction = forceUseLLPrediction + self.stageDiagnostics = stageDiagnostics + self.emitJavaScriptObject = emitJavaScriptObject + self.deduceTypes = deduceTypes + } + + /// To ease modifications of single parameters from default settings + /// without having to create a temporary variable first + public func with(_ keyPath: WritableKeyPath, _ value: T) -> Self { + var copy = self + copy[keyPath: keyPath] = value + return copy + } + + public enum StageDiagnosticFlag { + /// Prints result of grammar parsing stage + case parsedAST + + /// Prints result of call graph from generated IntentionCollection. + case callGraph + } + } +} + +// MARK: - ASTRewriterPassApplierProgressDelegate +private extension JavaScript2SwiftRewriter { + class ASTRewriterDelegate: ASTRewriterPassApplierProgressDelegate { + private var didPrintLine = false + + func astWriterPassApplier(_ passApplier: ASTRewriterPassApplier, + applyingPassType passType: ASTRewriterPass.Type, + toFile file: FileGenerationIntention) { + + // Clear previous line and re-print, instead of bogging down the + // terminal with loads of prints + if didPrintLine { + _terminalClearLine() + } + + let totalPadLength = passApplier.progress.total.description.count + let progressString = String(format: "[%0\(totalPadLength)d/%d]", + passApplier.progress.current, + passApplier.progress.total) + + print("\(progressString): \((file.targetPath as NSString).lastPathComponent)") + + didPrintLine = true + } + } +} + +// MARK: - SwiftWriterDelegate +private extension JavaScript2SwiftRewriter { + class InnerSwiftWriterDelegate: SwiftWriterProgressListener { + private var didPrintLine = false + + func swiftWriterReportProgress(_ writer: SwiftWriter, + filesEmitted: Int, + totalFiles: Int, + latestFile: FileGenerationIntention) { + + // Clear previous line and re-print, instead of bogging down the + // terminal with loads of prints + if didPrintLine { + _terminalClearLine() + } + + let totalPadLength = totalFiles.description.count + let progressString = String(format: "[%0\(totalPadLength)d/%d]", + filesEmitted, + totalFiles) + + print("\(progressString): \((latestFile.targetPath as NSString).lastPathComponent)") + + didPrintLine = true + } + } +} + +// MARK: - JavaScriptIntentionCollectorDelegate +fileprivate extension JavaScript2SwiftRewriter { + class CollectorDelegate: JavaScriptIntentionCollectorDelegate { + let source: Source + + var lazyParse: [LazyParseItem] = [] + + init(source: Source) { + self.source = source + } + + func reportForLazyParsing(_ item: JavaScriptLazyParseItem) { + switch item { + case .globalVar(let value, let intention): + lazyParse.append(.globalVar(source, value, intention)) + + case .classProperty(let value, let intention): + lazyParse.append(.classProperty(source, value, intention)) + + case .globalFunction(let body, let intention): + lazyParse.append(.globalFunction(source, body, intention)) + + case .initializer(let body, let intention): + lazyParse.append(.initializer(source, body, intention)) + + case .method(let body, let intention): + lazyParse.append(.method(source, body, intention)) + } + } + } + + private class InnerASTReaderDelegate: JavaScriptASTReaderDelegate { + var parseItem: LazyParseItem + + init(parseItem: LazyParseItem) { + self.parseItem = parseItem + } + } +} + +// MARK: - DefinitionTypePropagatorDelegate +private extension JavaScript2SwiftRewriter { + class TypeDetectingDelegate: DefinitionTypePropagatorDelegate { + private let typeSystem: TypeSystem + + init(typeSystem: TypeSystem) { + self.typeSystem = typeSystem + } + + func suggestTypeForDefinitionUsages( + _ typePropagator: DefinitionTypePropagator, + definition: LocalCodeDefinition, + usages: [DefinitionTypePropagator.UsageContext] + ) -> DefinitionTypePropagator.TypeSuggestion { + + var possible: Set = [] + + for usage in usages { + if isArrayUsage(usage) { + possible.insert(.nsArray) + } + } + + if possible.count == 1, let first = possible.first { + return .certain(first) + } + + return .none + } + + private func isArrayUsage(_ context: DefinitionTypePropagator.UsageContext) -> Bool { + switch context { + case .memberFunctionCall(_, let member, _, _): + return member.name == "push" + + case .memberAccess(_, let member, in: let exp): + if member.name == "length" { + if let expected = exp.expectedType { + return typeSystem.isNumeric(expected) + } + + return true + } + + case .subscriptAccess(_, let op, _): + guard op.subExpressions.count == 1 else { + break + } + guard let resolvedType = op.subExpressions[0].resolvedType else { + break + } + + return typeSystem.isNumeric(resolvedType) + + default: + break + } + + return false + } + } +} + +private enum LazyParseItem { + case globalFunction(Source, FunctionBodyIntention, GlobalFunctionGenerationIntention) + case initializer(Source, FunctionBodyIntention, InitGenerationIntention) + case method(Source, FunctionBodyIntention, MethodGenerationIntention) + case classProperty(Source, PropertyInitialValueGenerationIntention, PropertyGenerationIntention) + case globalVar(Source, GlobalVariableInitialValueIntention, GlobalVariableGenerationIntention) +} + +internal struct _PreprocessingContext: PreprocessingContext { + var filePath: String +} + +private func _terminalClearLine() { + // Move up command + print("\u{001B}[1A", terminator: "") + // Clear line command + print("\u{001B}[2K", terminator: "") +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScript2SwiftRewriterJob.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScript2SwiftRewriterJob.swift new file mode 100644 index 000000000..0a3e88cc7 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScript2SwiftRewriterJob.swift @@ -0,0 +1,99 @@ +import Utils +import JsParser +import SwiftSyntaxSupport +import IntentionPasses +import ExpressionPasses +import SourcePreprocessors +import TypeSystem +import SwiftRewriterLib + +/// Represents a transpilation job, with all required information to start a +/// transpile job. +public class JavaScript2SwiftRewriterJob { + public var input: InputSourcesProvider + public var intentionPassesSource: IntentionPassSource? + public var astRewriterPassSources: ASTRewriterPassSource? + public var globalsProvidersSource: GlobalsProvidersSource? + public var syntaxRewriterPassSource: SwiftSyntaxRewriterPassProvider? + public var preprocessors: [SourcePreprocessor] + public var settings: JavaScript2SwiftRewriter.Settings + public var swiftSyntaxOptions: SwiftSyntaxOptions + public var parserCache: JavaScriptParserCache? + + public init( + input: InputSourcesProvider, + intentionPassesSource: IntentionPassSource?, + astRewriterPassSources: ASTRewriterPassSource?, + globalsProvidersSource: GlobalsProvidersSource?, + syntaxRewriterPassSource: SwiftSyntaxRewriterPassProvider?, + preprocessors: [SourcePreprocessor], + settings: JavaScript2SwiftRewriter.Settings, + swiftSyntaxOptions: SwiftSyntaxOptions, + parserCache: JavaScriptParserCache? + ) { + + self.intentionPassesSource = intentionPassesSource + self.astRewriterPassSources = astRewriterPassSources + self.globalsProvidersSource = globalsProvidersSource + self.syntaxRewriterPassSource = syntaxRewriterPassSource + self.preprocessors = preprocessors + self.settings = settings + self.input = input + self.swiftSyntaxOptions = swiftSyntaxOptions + self.parserCache = parserCache + } + + /// Executes a transpilation job, returning the result of the operation. + @discardableResult + public func execute(output: WriterOutput) -> JavaScriptSwiftRewriterJobResult { + + let swiftRewriter = makeSwiftRewriter(output: output) + + var jobResult = JavaScriptSwiftRewriterJobResult(succeeded: false, diagnostics: Diagnostics()) + + do { + try swiftRewriter.rewrite() + + if !swiftRewriter.diagnostics.errors.isEmpty { + jobResult.diagnostics.merge(with: swiftRewriter.diagnostics) + } else { + jobResult.succeeded = true + } + } catch { + jobResult.diagnostics.error("\(error)", location: .invalid) + } + + return jobResult + } + + func makeSwiftRewriter(output: WriterOutput) -> JavaScript2SwiftRewriter { + let rewriter = JavaScript2SwiftRewriter( + input: input, + output: output, + intentionPassesSource: intentionPassesSource, + astRewriterPassSources: astRewriterPassSources, + globalsProvidersSource: globalsProvidersSource, + syntaxRewriterPassSource: syntaxRewriterPassSource, + settings: settings + ) + + rewriter.writerOptions = swiftSyntaxOptions + rewriter.preprocessors = preprocessors + rewriter.parserCache = parserCache + + return rewriter + } +} + +/// Encapsulates the results of a transpilation job for inspection post-transpile. +public struct JavaScriptSwiftRewriterJobResult { + /// If `true`, the transpilation succeeded with no errors. + public var succeeded: Bool + /// Diagnostics engine that collected messages during transpilation. + public var diagnostics: Diagnostics + + init(succeeded: Bool, diagnostics: Diagnostics) { + self.succeeded = succeeded + self.diagnostics = diagnostics + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScript2SwiftRewriterJobBuilder.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScript2SwiftRewriterJobBuilder.swift new file mode 100644 index 000000000..edd6feeb4 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScript2SwiftRewriterJobBuilder.swift @@ -0,0 +1,138 @@ +import Utils +import GrammarModelBase +import JsParser +import SwiftSyntaxSupport +import IntentionPasses +import ExpressionPasses +import SourcePreprocessors +import TypeSystem +import SwiftRewriterLib + +/// Facility for creating `JavaScript2SwiftRewriterJob`s. +public struct JavaScript2SwiftRewriterJobBuilder { + public var inputs = JavaScriptSwiftRewriterJobInputFiles() + public var intentionPassesSource: IntentionPassSource + public var astRewriterPassSources: ASTRewriterPassSource + public var globalsProvidersSource: GlobalsProvidersSource? + public var syntaxRewriterPassSource: SwiftSyntaxRewriterPassProvider = DefaultSyntaxPassProvider() + public var preprocessors: [SourcePreprocessor] = [] + public var settings: JavaScript2SwiftRewriter.Settings = .default + public var swiftSyntaxOptions: SwiftSyntaxOptions = .default + public var parserCache: JavaScriptParserCache? + + public init() { + self.intentionPassesSource = ArrayIntentionPassSource(intentionPasses: [ + DetectNoReturnsIntentionPass(), + DetectTypePropertiesBySelfAssignmentIntentionPass(), + FileTypeMergingIntentionPass(), + SubscriptDeclarationIntentionPass(), + PromoteProtocolPropertyConformanceIntentionPass(), + ProtocolNullabilityPropagationToConformersIntentionPass(), + JavaScriptPropertyMergeIntentionPass(), + StoredPropertyToNominalTypesIntentionPass(), + SwiftifyMethodSignaturesIntentionPass(), + InitAnalysisIntentionPass(), + ImportDirectiveIntentionPass(), + UIKitCorrectorIntentionPass(), + ProtocolNullabilityPropagationToConformersIntentionPass(), + DetectNonnullReturnsIntentionPass(), + RemoveEmptyExtensionsIntentionPass() + ]) + + self.astRewriterPassSources = ArrayASTRewriterPassSource(syntaxNodePasses: [ + CanonicalNameExpressionPass.self, + AllocInitExpressionPass.self, + InitRewriterExpressionPass.self, + ASTSimplifier.self, + PropertyAsMethodAccessCorrectingExpressionPass.self, + CompoundTypeApplierExpressionPass.self, + CoreGraphicsExpressionPass.self, + FoundationExpressionPass.self, + UIKitExpressionPass.self, + NilValueTransformationsPass.self, + NumberCommonsExpressionPass.self, + JavaScriptASTCorrectorExpressionPass.self, + NumberCommonsExpressionPass.self, + EnumRewriterExpressionPass.self, + LocalConstantPromotionExpressionPass.self, + VariableNullabilityPromotionExpressionPass.self, + ASTSimplifier.self, + ]) + } + + /// Resets this job builder to its default state. + public mutating func reset() { + self = Self() + } + + /// Returns a new `JavaScript2SwiftRewriterJob` created using the parameters configured + /// with this builder object. + public func createJob() -> JavaScript2SwiftRewriterJob { + let provider = inputs.createSourcesProvider() + + return .init( + input: provider, + intentionPassesSource: intentionPassesSource, + astRewriterPassSources: astRewriterPassSources, + globalsProvidersSource: globalsProvidersSource, + syntaxRewriterPassSource: syntaxRewriterPassSource, + preprocessors: preprocessors, + settings: settings, + swiftSyntaxOptions: swiftSyntaxOptions, + parserCache: parserCache + ) + } +} + +/// Stores input files for a transpilation job +public struct JavaScriptSwiftRewriterJobInputFiles { + fileprivate(set) public var inputs: [InputSource] = [] + + public mutating func add(_ input: InputSource) { + inputs.append(input) + } + + public mutating func add(inputs: [InputSource]) { + self.inputs.append(contentsOf: inputs) + } + + public mutating func add(filePath: String, source: String, isPrimary: Bool = true) { + add(SwiftRewriterJobInputSource(filePath: filePath, + source: source, + isPrimary: isPrimary)) + } + + public mutating func addInputs(from inputsProvider: InputSourcesProvider) { + add(inputs: inputsProvider.sources()) + } + + func createSourcesProvider() -> InputSourcesProvider { + SwiftRewriterJobInputProvider(inputs: inputs) + } +} + +struct SwiftRewriterJobInputSource: InputSource { + var filePath: String + var source: String + var isPrimary: Bool + + func sourcePath() -> String { + filePath + } + + func loadSource() throws -> CodeSource { + StringCodeSource(source: source, fileName: filePath) + } +} + +class SwiftRewriterJobInputProvider: InputSourcesProvider { + var inputs: [InputSource] + + init(inputs: [InputSource]) { + self.inputs = inputs + } + + func sources() -> [InputSource] { + inputs + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptASTReader.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptASTReader.swift new file mode 100644 index 000000000..3b250bcb5 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptASTReader.swift @@ -0,0 +1,195 @@ +import SwiftAST +import Utils +import TypeSystem +import JsParserAntlr +import GrammarModelBase +import JsGrammarModels +import SwiftRewriterLib +import JsParser +import KnownType + +public protocol JavaScriptASTReaderDelegate: AnyObject { + +} + +public struct JavaScriptASTReaderOptions { + public static let `default`: Self = .init( + objectLiteralKind: .rawDictionary + ) + + /// The behavior of reading dictionary literal expressions. + public var objectLiteralKind: ObjectLiteralKind + + public init(objectLiteralKind: ObjectLiteralKind) { + self.objectLiteralKind = objectLiteralKind + } + + /// Describes the output of JavaScript object literal reading. + public enum ObjectLiteralKind { + /// Reads the object as a raw Swift dictionary, with keys mapping to + /// identifiers. + case rawDictionary + + /// Reads the object as a `JavaScriptObject` definition, with the proper + /// object type name specified. + case javaScriptObject(typeName: String = "JavaScriptObject") + } +} + +/// Reader that reads JavaScript AST and outputs equivalent a Swift AST +public class JavaScriptASTReader { + let typeSystem: TypeSystem? + let source: Source + let options: JavaScriptASTReaderOptions + + weak var delegate: JavaScriptASTReaderDelegate? + + public init(source: Source, typeSystem: TypeSystem? = nil, options: JavaScriptASTReaderOptions) { + self.source = source + self.typeSystem = typeSystem + self.options = options + } + + public func parseStatements( + body: JavaScriptParser.FunctionBodyContext, + comments: [RawCodeComment] = [], + typeContext: KnownType? = nil + ) -> CompoundStatement { + + guard let sourceElements = body.sourceElements() else { + let applier = SwiftASTCommentApplier(comments: comments) + let result = CompoundStatement() + applier.applyOverlappingComments(to: result, body) + return result + } + + return _parseStatements( + sourceElements, + comments: comments, + typeContext: typeContext + ) + } + + public func parseStatements( + compoundStatement: JavaScriptParser.StatementContext, + comments: [RawCodeComment] = [], + typeContext: KnownType? = nil + ) -> CompoundStatement { + + fatalError("Not implemented") + } + + private func _parseStatements( + _ ctx: JavaScriptParser.SourceElementsContext, + comments: [RawCodeComment] = [], + typeContext: KnownType? = nil + ) -> CompoundStatement { + + let context = JavaScriptASTReaderContext( + source: source, + typeSystem: typeSystem, + typeContext: typeContext, + comments: comments, + options: options + ) + + let expressionReader = JavaScriptExprASTReader( + context: context, + delegate: delegate + ) + + let parser = JavaScriptStatementASTReader.CompoundStatementVisitor( + expressionReader: expressionReader, + context: context, + delegate: delegate + ) + + guard let result = ctx.accept(parser) else { + return [.unknown(UnknownASTContext(context: ctx))] + } + + return result + } + + private func _parseStatement( + _ ctx: JavaScriptParser.StatementContext, + comments: [RawCodeComment] = [], + typeContext: KnownType? = nil + ) -> Statement { + + let context = JavaScriptASTReaderContext( + source: source, + typeSystem: typeSystem, + typeContext: typeContext, + comments: comments, + options: options + ) + + let expressionReader = JavaScriptExprASTReader( + context: context, + delegate: delegate + ) + + let parser = JavaScriptStatementASTReader( + expressionReader: expressionReader, + context: context, + delegate: delegate + ) + + guard let result = ctx.accept(parser) else { + return .unknown(UnknownASTContext(context: ctx)) + } + + return result + } + + public func parseExpression( + expression: JavaScriptParser.SingleExpressionContext, + comments: [RawCodeComment] = [] + ) -> Expression { + + let context = JavaScriptASTReaderContext( + source: source, + typeSystem: typeSystem, + typeContext: nil, + comments: comments, + options: options + ) + + let parser = JavaScriptExprASTReader( + context: context, + delegate: delegate + ) + + guard let result = expression.accept(parser) else { + return .unknown(UnknownASTContext(context: expression)) + } + + return result + } + + public func parseExpression( + expression: JavaScriptParser.ExpressionStatementContext, + comments: [RawCodeComment] = [] + ) -> Expression { + + let context = JavaScriptASTReaderContext( + source: source, + typeSystem: typeSystem, + typeContext: nil, + comments: comments, + options: options + ) + + let parser = JavaScriptExprASTReader( + context: context, + delegate: delegate + ) + + guard let result = expression.accept(parser) else { + return .unknown(UnknownASTContext(context: expression)) + } + + return result + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptASTReaderContext.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptASTReaderContext.swift new file mode 100644 index 000000000..517a24ed8 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptASTReaderContext.swift @@ -0,0 +1,102 @@ +import Antlr4 +import Utils +import SwiftAST +import GrammarModelBase +import JsGrammarModels +import KnownType +import TypeSystem + +public final class JavaScriptASTReaderContext { + private var source: Source + private var localsStack: [[Local]] = [[]] + private var typeSystem: TypeSystem? + private var typeContext: KnownType? + + public let commentApplier: SwiftASTCommentApplier + public let options: JavaScriptASTReaderOptions + + public init( + source: Source, + typeSystem: TypeSystem?, + typeContext: KnownType?, + comments: [RawCodeComment], + options: JavaScriptASTReaderOptions + ) { + self.source = source + self.typeSystem = typeSystem + self.typeContext = typeContext + self.options = options + self.commentApplier = SwiftASTCommentApplier(comments: comments) + } + + public func sourceCode(for rule: ParserRuleContext) -> Substring? { + guard let start = rule.getStart()?.getStartIndex() else { + return nil + } + guard let end = rule.getStop()?.getStopIndex() else { + return nil + } + + return source.substring(inCharRange: start.. Local? { + for stackLevel in localsStack.reversed() { + if let local = stackLevel.first(where: { $0.name == name }) { + return local + } + } + + return nil + } + + public func typePropertyOrFieldNamed(_ name: String) -> KnownMember? { + guard let typeContext = typeContext else { + return nil + } + + if let field = typeSystem?.field(named: name, static: false, in: typeContext) { + return field + } + + return typeSystem?.property( + named: name, + static: false, + includeOptional: false, + in: typeContext + ) + } + + public func pushDefinitionContext() { + localsStack.append([]) + } + + public func popDefinitionContext() { + localsStack.removeLast() + } + + /// Convenience for `commentApplier.applyComments(to:_:)` + public func applyComments(to statement: Statement, _ rule: ParserRuleContext) { + commentApplier.applyComments(to: statement, rule) + } + + /// Convenience for `commentApplier.applyOverlappingComments(to:_:)` + public func applyOverlappingComments(to statement: Statement, _ rule: ParserRuleContext) { + commentApplier.applyOverlappingComments(to: statement, rule) + } + + public struct Local { + public var name: String + public var storage: ValueStorage + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptExprASTReader.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptExprASTReader.swift new file mode 100644 index 000000000..ece7e24a3 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptExprASTReader.swift @@ -0,0 +1,712 @@ +import Foundation +import Antlr4 +import JsParserAntlr +import JsParser +import JsGrammarModels +import SwiftAST +import TypeSystem + +/// A visitor that reads simple JavaScript expressions and emits as Expression +/// enum cases. +public final class JavaScriptExprASTReader: JavaScriptParserBaseVisitor { + public var context: JavaScriptASTReaderContext + public var delegate: JavaScriptASTReaderDelegate? + + public init( + context: JavaScriptASTReaderContext, + delegate: JavaScriptASTReaderDelegate? + ) { + self.context = context + self.delegate = delegate + } + + public override func visitFunctionExpression(_ ctx: JavaScriptParser.FunctionExpressionContext) -> Expression? { + guard let anonymousFunction = ctx.anonymousFunction() else { + return nil + } + guard let function = JsParser.anonymousFunction(from: anonymousFunction) else { + return nil + } + guard let blockExpression = self.blockLiteralExpression(from: function) else { + return nil + } + + // Function declaration - create variable assignment. + if let identifier = function.identifier { + return .assignment(lhs: .identifier(identifier), op: .equals, rhs: blockExpression) + } + + return blockExpression + } + + public override func visitClassExpression(_ ctx: JavaScriptParser.ClassExpressionContext) -> Expression? { + // TODO: Handle inline class declaration expressions. + unknown(ctx) + } + + public override func visitMemberIndexExpression(_ ctx: JavaScriptParser.MemberIndexExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + guard let indexExpressions = ctx.expressionSequence().map(self.expressionSequence) else { return unknown(ctx) } + + return exp.sub(expressions: indexExpressions) + } + + public override func visitMemberDotExpression(_ ctx: JavaScriptParser.MemberDotExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + guard let identifier = ctx.identifierName()?.getText() else { return unknown(ctx) } + + if ctx.QuestionMark() != nil { + return exp.optional().dot(identifier) + } + + return exp.dot(identifier) + } + + public override func visitNewExpression(_ ctx: JavaScriptParser.NewExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + + if let arguments = ctx.arguments() { + return exp.call(self.arguments(arguments)) + } + + return exp.call() + } + + public override func visitArgumentsExpression(_ ctx: JavaScriptParser.ArgumentsExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + guard let arguments = ctx.arguments() else { return unknown(ctx) } + + return exp.call(self.arguments(arguments)) + } + + public override func visitPostIncrementExpression(_ ctx: JavaScriptParser.PostIncrementExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + + return exp.assignment(op: .addAssign, rhs: .constant(1)) + } + + public override func visitPostDecreaseExpression(_ ctx: JavaScriptParser.PostDecreaseExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + + return exp.assignment(op: .subtractAssign, rhs: .constant(1)) + } + + public override func visitDeleteExpression(_ ctx: JavaScriptParser.DeleteExpressionContext) -> Expression? { + unknown(ctx) + } + + public override func visitVoidExpression(_ ctx: JavaScriptParser.VoidExpressionContext) -> Expression? { + ctx.singleExpression()?.accept(self) + } + + public override func visitTypeofExpression(_ ctx: JavaScriptParser.TypeofExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + + return .identifier("String").call([.identifier("type").call([.labeled("of", exp)])]) + } + + public override func visitPreIncrementExpression(_ ctx: JavaScriptParser.PreIncrementExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + + return exp.assignment(op: .addAssign, rhs: .constant(1)) + } + + public override func visitPreDecreaseExpression(_ ctx: JavaScriptParser.PreDecreaseExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + + return exp.assignment(op: .subtractAssign, rhs: .constant(1)) + } + + public override func visitUnaryPlusExpression(_ ctx: JavaScriptParser.UnaryPlusExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + + return .unary(op: .add, exp) + } + + public override func visitUnaryMinusExpression(_ ctx: JavaScriptParser.UnaryMinusExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + + return .unary(op: .subtract, exp) + } + + public override func visitBitNotExpression(_ ctx: JavaScriptParser.BitNotExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + + return .unary(op: .bitwiseNot, exp) + } + + public override func visitNotExpression(_ ctx: JavaScriptParser.NotExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression()?.accept(self) else { return unknown(ctx) } + + return .unary(op: .negate, exp) + } + + public override func visitAwaitExpression(_ ctx: JavaScriptParser.AwaitExpressionContext) -> Expression? { + return unknown(ctx) + } + + public override func visitPowerExpression(_ ctx: JavaScriptParser.PowerExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + return .identifier("pow").call([lhs, rhs]) + } + + public override func visitMultiplicativeExpression(_ ctx: JavaScriptParser.MultiplicativeExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + if ctx.Multiply() != nil { + return lhs.binary(op: .multiply, rhs: rhs) + } + if ctx.Divide() != nil { + return lhs.binary(op: .divide, rhs: rhs) + } + if ctx.Modulus() != nil { + return lhs.binary(op: .mod, rhs: rhs) + } + + return unknown(ctx) + } + + public override func visitAdditiveExpression(_ ctx: JavaScriptParser.AdditiveExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + if ctx.Plus() != nil { + return lhs.binary(op: .add, rhs: rhs) + } + if ctx.Minus() != nil { + return lhs.binary(op: .subtract, rhs: rhs) + } + + return unknown(ctx) + } + + public override func visitCoalesceExpression(_ ctx: JavaScriptParser.CoalesceExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + return lhs.binary(op: .nullCoalesce, rhs: rhs) + } + + public override func visitBitShiftExpression(_ ctx: JavaScriptParser.BitShiftExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + if ctx.LeftShiftArithmetic() != nil { + return lhs.binary(op: .bitwiseShiftLeft, rhs: rhs) + } + if ctx.RightShiftArithmetic() != nil { + return lhs.binary(op: .bitwiseShiftRight, rhs: rhs) + } + /* TODO: Add support for right shift logical operator + if ctx.RightShiftLogical() != nil { + + } + */ + + return unknown(ctx) + } + + public override func visitRelationalExpression(_ ctx: JavaScriptParser.RelationalExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + if ctx.LessThan() != nil { + return lhs.binary(op: .lessThan, rhs: rhs) + } + if ctx.LessThanEquals() != nil { + return lhs.binary(op: .lessThanOrEqual, rhs: rhs) + } + if ctx.MoreThan() != nil { + return lhs.binary(op: .greaterThan, rhs: rhs) + } + if ctx.GreaterThanEquals() != nil { + return lhs.binary(op: .greaterThanOrEqual, rhs: rhs) + } + + return unknown(ctx) + } + + public override func visitInstanceofExpression(_ ctx: JavaScriptParser.InstanceofExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + switch rhs { + case let exp as IdentifierExpression: + return lhs.typeCheck(as: .typeName(exp.identifier)) + default: + return unknown(ctx) + } + } + + public override func visitInExpression(_ ctx: JavaScriptParser.InExpressionContext) -> Expression? { + fatalError("Not implemented") + } + + public override func visitEqualityExpression(_ ctx: JavaScriptParser.EqualityExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + if ctx.Equals_() != nil || ctx.IdentityEquals() != nil { + return lhs.binary(op: .equals, rhs: rhs) + } + if ctx.NotEquals() != nil || ctx.IdentityNotEquals() != nil { + return lhs.binary(op: .unequals, rhs: rhs) + } + + return unknown(ctx) + } + + public override func visitBitAndExpression(_ ctx: JavaScriptParser.BitAndExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + return lhs.binary(op: .bitwiseAnd, rhs: rhs) + } + + public override func visitBitXOrExpression(_ ctx: JavaScriptParser.BitXOrExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + return lhs.binary(op: .bitwiseXor, rhs: rhs) + } + + public override func visitBitOrExpression(_ ctx: JavaScriptParser.BitOrExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + return lhs.binary(op: .bitwiseOr, rhs: rhs) + } + + public override func visitLogicalAndExpression(_ ctx: JavaScriptParser.LogicalAndExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + return lhs.binary(op: .and, rhs: rhs) + } + + public override func visitLogicalOrExpression(_ ctx: JavaScriptParser.LogicalOrExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + return lhs.binary(op: .or, rhs: rhs) + } + + public override func visitTernaryExpression(_ ctx: JavaScriptParser.TernaryExpressionContext) -> Expression? { + guard let exp = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let lhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(2)?.accept(self) else { return unknown(ctx) } + + return .ternary(exp, true: lhs, false: rhs) + } + + public override func visitAssignmentExpression(_ ctx: JavaScriptParser.AssignmentExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + + return lhs.assignment(op: .assign, rhs: rhs) + } + + public override func visitAssignmentOperatorExpression(_ ctx: JavaScriptParser.AssignmentOperatorExpressionContext) -> Expression? { + guard let lhs = ctx.singleExpression(0)?.accept(self) else { return unknown(ctx) } + guard let rhs = ctx.singleExpression(1)?.accept(self) else { return unknown(ctx) } + guard let assignmentOperator = ctx.assignmentOperator() else { return unknown(ctx) } + + // Handle power-assign expressions as regular 'pow()' assignment expressions + if assignmentOperator.PowerAssign() != nil { + return lhs.assignment(op: .assign, rhs: .identifier("pow").call([lhs, rhs])) + } + + guard let op = self.assignmentOperator(assignmentOperator) else { return unknown(ctx) } + + return lhs.assignment(op: op, rhs: rhs) + } + + public override func visitYieldExpression(_ ctx: JavaScriptParser.YieldExpressionContext) -> Expression? { + unknown(ctx) + } + + public override func visitThisExpression(_ ctx: JavaScriptParser.ThisExpressionContext) -> Expression? { + .identifier("self") + } + + public override func visitIdentifierExpression(_ ctx: JavaScriptParser.IdentifierExpressionContext) -> Expression? { + ctx.identifier()?.accept(self) + } + + public override func visitIdentifier(_ ctx: JavaScriptParser.IdentifierContext) -> Expression? { + .identifier(ctx.getText()) + } + + public override func visitIdentifierName(_ ctx: JavaScriptParser.IdentifierNameContext) -> Expression? { + .identifier(ctx.getText()) + } + + public override func visitSuperExpression(_ ctx: JavaScriptParser.SuperExpressionContext) -> Expression? { + .identifier("super") + } + + public override func visitLiteralExpression(_ ctx: JavaScriptParser.LiteralExpressionContext) -> Expression? { + ctx.literal()?.accept(self) + } + + public override func visitLiteral(_ ctx: JavaScriptParser.LiteralContext) -> Expression? { + if ctx.NullLiteral() != nil { + return .constant(.nil) + } + if let booleanLiteral = ctx.BooleanLiteral()?.getText() { + switch booleanLiteral { + case "true": + return .constant(true) + case "false": + return .constant(false) + default: + return unknown(ctx) + } + } + if let stringLiteral = ctx.StringLiteral() { + return self.stringLiteral(stringLiteral) + } + /* TODO: Support template strings + if let templateString = ctx.templateStringLiteral() { + + } + */ + /* TODO: Support regex expression literals + if let regexExpression = ctx.RegularExpressionLiteral() { + + } + */ + if let numericLiteral = ctx.numericLiteral() { + return numericLiteral.accept(self) + } + /* TODO: Support big int expression literals + if let bigIntLiteral = ctx.bigIntLiteral() { + return bigIntLiteral.accept(self) + } + */ + + return unknown(ctx) + } + + public override func visitArrayLiteralExpression(_ ctx: JavaScriptParser.ArrayLiteralExpressionContext) -> Expression? { + ctx.arrayLiteral()?.accept(self) + } + + public override func visitArrayLiteral(_ ctx: JavaScriptParser.ArrayLiteralContext) -> Expression? { + guard let elementList = ctx.elementList() else { + return nil + } + + return ArrayLiteralExpression(items: elementList.arrayElement().compactMap { + $0.accept(self) + }) + } + + public override func visitObjectLiteral(_ ctx: JavaScriptParser.ObjectLiteralContext) -> Expression? { + let visitor = DictionaryPairVisitor(expReader: self) + var pairs: [ExpressionDictionaryPair] = [] + + for propertyAssignment in ctx.propertyAssignment() { + if let pair = propertyAssignment.accept(visitor) { + pairs.append(pair) + } + } + + let expression = DictionaryLiteralExpression(pairs: pairs) + + switch context.options.objectLiteralKind { + case .rawDictionary: + return expression + case .javaScriptObject(let typeName): + return .identifier(typeName).call([expression]) + } + } + + public override func visitNumericLiteral(_ ctx: JavaScriptParser.NumericLiteralContext) -> Expression? { + func toDouble(_ str: S) -> Double? { + let str = str.replacingOccurrences(of: "_", with: "") + + return Double(str) + } + + func toInt(_ str: S, radix: Int = 10) -> Int? { + let str = str.replacingOccurrences(of: "_", with: "") + + return Int(str, radix: radix) + } + + var constant: Constant? + + // Attempt integer coercion first + if let decimal = ctx.DecimalLiteral(), let int = toInt(decimal.getText()) { + constant = .int(int, .decimal) + } else if let decimal = ctx.DecimalLiteral(), let double = toDouble(decimal.getText()) { + constant = .double(double) + } else if let hex = ctx.HexIntegerLiteral(), let int = toInt(hex.getText().dropFirst(2), radix: 16) { + constant = .hexadecimal(int) + } else if let octal = ctx.OctalIntegerLiteral(), let int = toInt(octal.getText(), radix: 8) { + constant = .octal(int) + } else if let octal = ctx.OctalIntegerLiteral2(), let int = toInt(octal.getText().dropFirst(2), radix: 8) { + constant = .octal(int) + } else if let binary = ctx.BinaryIntegerLiteral(), let int = toInt(binary.getText().dropFirst(2), radix: 2) { + constant = .binary(int) + } + + if let constant = constant { + return .constant(constant) + } + + return unknown(ctx) + } + + public override func visitPropertyName(_ ctx: JavaScriptParser.PropertyNameContext) -> Expression? { + if let identifierName = ctx.identifierName() { + return identifierName.accept(self) + } + if let stringLiteral = ctx.StringLiteral() { + return self.stringLiteral(stringLiteral) + } + if let numericalLiteral = ctx.numericLiteral() { + return numericalLiteral.accept(self) + } + /* TODO: Support for square-bracket property name + if let singleExpression = ctx.singleExpression() { + + } + */ + + return nil + } + + public override func visitParenthesizedExpression(_ ctx: JavaScriptParser.ParenthesizedExpressionContext) -> Expression? { + guard let expressionSequence = ctx.expressionSequence() else { + return nil + } + + let expressions = expressionSequence.singleExpression().compactMap { + $0.accept(self) + } + + if expressions.count == 1 { + return .parens(expressions[0]) + } + + return .tuple(expressions) + } + + public override func visitExpressionSequence(_ ctx: JavaScriptParser.ExpressionSequenceContext) -> Expression? { + let expressions = ctx.singleExpression().compactMap { + $0.accept(self) + } + + if expressions.count == 1 { + return expressions[0] + } + + return .tuple(expressions) + } + + // MARK: - Internal conversion helpers + + private func blockLiteralExpression(from anonymousFunction: JsAnonymousFunction) -> BlockLiteralExpression? { + let parameters = blockParameters(from: anonymousFunction.signature) + let blockBody: CompoundStatement? + + let stmtReader = compoundStatementReader() + switch anonymousFunction.body { + case .functionBody(let body): + blockBody = stmtReader.visitFunctionBody(body) + + case .singleExpression(let expression): + guard let exp = expression.accept(self) else { + return nil + } + + blockBody = [ + .expression(exp) + ] + } + + guard let blockBody = blockBody else { + return nil + } + + return .block( + parameters: parameters, + return: .any, + body: blockBody + ) + } + + private func stringLiteral(_ ctx: TerminalNode) -> Expression? { + let string = ctx.getText().trimmingCharacters(in: CharacterSet(charactersIn: "\"\'")) + + return .constant(.string(string)) + } + + private func assignmentOperator(_ ctx: JavaScriptParser.AssignmentOperatorContext) -> SwiftOperator? { + if ctx.MultiplyAssign() != nil { + return .multiplyAssign + } + if ctx.DivideAssign() != nil { + return .divideAssign + } + if ctx.ModulusAssign() != nil { + return .modAssign + } + if ctx.PlusAssign() != nil { + return .addAssign + } + if ctx.MinusAssign() != nil { + return .subtractAssign + } + if ctx.LeftShiftArithmeticAssign() != nil { + return .bitwiseShiftLeftAssign + } + if ctx.RightShiftArithmeticAssign() != nil { + return .bitwiseShiftRightAssign + } + /* TODO: Add support for right shift logical operator + if ctx.RightShiftLogicalAssign() != nil { + + } + */ + if ctx.BitAndAssign() != nil { + return .bitwiseAndAssign + } + if ctx.BitXorAssign() != nil { + return .bitwiseXorAssign + } + if ctx.BitOrAssign() != nil { + return .bitwiseOrAssign + } + + return nil + } + + private func arguments(_ ctx: JavaScriptParser.ArgumentsContext) -> [FunctionArgument] { + ctx.argument().compactMap { exp -> Expression? in + // TODO: Support ellipsis on call site + exp.singleExpression()?.accept(self) ?? exp.identifier()?.accept(self) + }.map { + FunctionArgument(label: nil, expression: $0) + } + } + + private func expressionSequence(_ ctx: JavaScriptParser.ExpressionSequenceContext) -> [Expression] { + var exps: [Expression] = [] + + for exp in ctx.singleExpression() { + if let result = exp.accept(self) { + exps.append(result) + } + } + + return exps + } + + private func blockParameters(from signature: JsFunctionSignature) -> [BlockParameter] { + signature.arguments.map { + .init(name: $0.identifier, type: .any) + } + } + + fileprivate func unknown(_ ctx: ParserRuleContext) -> Expression { + .unknown(UnknownASTContext(context: _sourceText(for: ctx))) + } + + private func _sourceText(for ctx: ParserRuleContext) -> String { + return self.context.sourceCode(for: ctx).map(String.init) ?? "" + } + + // MARK: - AST reader factories + + private func statementASTReader() -> JavaScriptStatementASTReader { + JavaScriptStatementASTReader( + expressionReader: self, + context: context, + delegate: delegate + ) + } + + private func compoundStatementReader() -> JavaScriptStatementASTReader.CompoundStatementVisitor { + JavaScriptStatementASTReader.CompoundStatementVisitor( + expressionReader: self, + context: context, + delegate: delegate + ) + } + + private class DictionaryPairVisitor: JavaScriptParserBaseVisitor { + unowned let expReader: JavaScriptExprASTReader + + init(expReader: JavaScriptExprASTReader) { + self.expReader = expReader + } + + override func visitPropertyExpressionAssignment(_ ctx: JavaScriptParser.PropertyExpressionAssignmentContext) -> ExpressionDictionaryPair? { + guard let lhs = ctx.propertyName()?.accept(expReader) else { return nil } + guard let rhs = ctx.singleExpression()?.accept(expReader) else { return nil } + + return .init(key: formatKeyName(lhs), value: rhs) + } + + override func visitComputedPropertyExpressionAssignment(_ ctx: JavaScriptParser.ComputedPropertyExpressionAssignmentContext) -> ExpressionDictionaryPair? { + guard let lhs = ctx.singleExpression(0)?.accept(expReader) else { return nil } + guard let rhs = ctx.singleExpression(1)?.accept(expReader) else { return nil } + + return .init(key: formatKeyName(lhs), value: rhs) + } + + override func visitFunctionProperty(_ ctx: JavaScriptParser.FunctionPropertyContext) -> ExpressionDictionaryPair? { + let closureVisitor = functionBodyVisitor() + + guard let name = ctx.propertyName()?.identifierName()?.getText() else { return nil } + guard let body = ctx.functionBody()?.accept(closureVisitor) else { return nil } + + let signature = JsParser.functionSignature(from: ctx.formalParameterList()) + + return .init( + key: formatKeyName(.identifier(name)), + value: Expression.block( + parameters: expReader.blockParameters(from: signature), + return: .any, + body: body + ) + ) + } + + override func visitPropertyShorthand(_ ctx: JavaScriptParser.PropertyShorthandContext) -> ExpressionDictionaryPair? { + guard let exp = ctx.singleExpression()?.accept(expReader) else { return nil } + + return .init(key: formatKeyName(exp), value: exp) + } + + // MARK: - + + private func formatKeyName(_ exp: Expression) -> Expression { + switch expReader.context.options.objectLiteralKind { + case .rawDictionary: + return exp + + case .javaScriptObject: + if let identifier = exp.asIdentifier { + return .constant(.string(identifier.identifier)) + } + } + + return exp + } + + private func functionBodyVisitor() -> JavaScriptStatementASTReader.CompoundStatementVisitor { + JavaScriptStatementASTReader.CompoundStatementVisitor( + expressionReader: expReader, + context: expReader.context, + delegate: expReader.delegate + ) + } + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptFileCollectionStep.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptFileCollectionStep.swift new file mode 100644 index 000000000..25432cfdc --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptFileCollectionStep.swift @@ -0,0 +1,139 @@ +import Foundation +import SwiftRewriterLib + +public class JavaScriptFileCollectionStep { + var fileProvider: FileProvider + public private(set) var files: [DiskInputFile] = [] + public weak var delegate: JavaScriptFileCollectionStepDelegate? + public var listener: JavaScriptFileCollectionStepListener? + + public init(fileProvider: FileProvider = FileDiskProvider()) { + self.fileProvider = fileProvider + } + + public func addFile(fromUrl url: URL, isPrimary: Bool) throws { + // Promote non-primary files into primaries + if let index = files.firstIndex(where: { $0.url == url }) { + files[index].isPrimary = files[index].isPrimary || isPrimary + + return + } + + if fileProvider.fileExists(atUrl: url) { + let file = DiskInputFile(url: url, isPrimary: isPrimary) + try addFile(file) + } else { + throw Error.fileDoesNotExist(path: url.path) + } + } + + public func addFile(_ file: DiskInputFile) throws { + // Promote non-primary files into primaries + if let index = files.firstIndex(where: { $0.url == file.url }) { + files[index].isPrimary = files[index].isPrimary || file.isPrimary + + return + } + + files.append(file) + try resolveReferences(in: file) + } + + public func addFromDirectory( + _ directory: URL, + recursive: Bool, + includePattern: String? = nil, + excludePattern: String? = nil + ) throws { + let allFiles = try fileProvider + .contentsOfDirectory( + atUrl: directory, + shallow: !recursive + ) + + // Inclusions + let jsFiles = + allFiles.filter { path in + fileMatchesFilter( + path: path, + includePattern: includePattern, + excludePattern: excludePattern + ) + } + // Sort files, for convenience of better conveying progress to user + .sorted { (s1: URL, s2: URL) -> Bool in + let name1 = s1.lastPathComponent + let name2 = s2.lastPathComponent + + return name1.compare(name2, options: .numeric) == .orderedAscending + } + + // Filter down to .js files + let jsFileUrls: [URL] = + jsFiles.filter { (path: URL) -> Bool in + path.pathExtension == "js" + } + + for fileUrl in jsFileUrls { + let file = DiskInputFile(url: fileUrl, isPrimary: true) + try addFile(file) + } + } + + func hasFile(_ url: URL) -> Bool { + return files.contains { $0.url == url } + } + + private func resolveReferences(in file: DiskInputFile) throws { + guard let delegate = delegate else { + return + } + + let references = try delegate.javaScriptFileCollectionStep(self, referencedFilesForFile: file) + + for url in references { + if !hasFile(url) && fileProvider.fileExists(atUrl: url) { + listener?.javaScriptFileCollectionStep( + self, didAddReferencedFile: url, + forInputFile: file + ) + + try addFile(fromUrl: url, isPrimary: false) + } + } + } + + public enum Error: Swift.Error, CustomStringConvertible { + case fileDoesNotExist(path: String) + + public var description: String { + switch self { + case .fileDoesNotExist(let path): + return "File does not exist at path '\(path)'" + } + } + } +} + +public extension JavaScriptFileCollectionStep { + func makeInputSourcesProvider() -> InputSourcesProvider { + return InternalSourcesProvider(files: files) + } + + private struct InternalSourcesProvider: InputSourcesProvider { + let files: [DiskInputFile] + + func sources() -> [InputSource] { + return files + } + } +} + +// TODO: Maybe merge with JavaScriptFileCollectionStepDelegate? +public protocol JavaScriptFileCollectionStepListener { + func javaScriptFileCollectionStep( + _ collectionStep: JavaScriptFileCollectionStep, + didAddReferencedFile referencedUrl: URL, + forInputFile inputFile: DiskInputFile + ) +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptFileCollectionStepDelegate.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptFileCollectionStepDelegate.swift new file mode 100644 index 000000000..eaaa46c49 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptFileCollectionStepDelegate.swift @@ -0,0 +1,9 @@ +import Foundation +import SwiftRewriterLib + +public protocol JavaScriptFileCollectionStepDelegate: AnyObject { + func javaScriptFileCollectionStep( + _ fileCollectionStep: JavaScriptFileCollectionStep, + referencedFilesForFile file: InputSource + ) throws -> [URL] +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptFrontend.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptFrontend.swift new file mode 100644 index 000000000..612fd711b --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptFrontend.swift @@ -0,0 +1,7 @@ +@_exported import JsParser +@_exported import GlobalsProviders +@_exported import ExpressionPasses +@_exported import IntentionPasses +@_exported import SwiftSyntaxRewriterPasses +@_exported import SourcePreprocessors +@_exported import SwiftRewriterLib diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptImportDirectiveFileCollectionDelegate.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptImportDirectiveFileCollectionDelegate.swift new file mode 100644 index 000000000..ddeac16f4 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptImportDirectiveFileCollectionDelegate.swift @@ -0,0 +1,43 @@ +import Foundation +import ObjcParser +import SwiftRewriterLib + +public class JavaScriptImportDirectiveFileCollectionDelegate { + var parserCache: JavaScriptParserCache + let fileProvider: FileProvider + + public init(parserCache: JavaScriptParserCache, fileProvider: FileProvider) { + self.parserCache = parserCache + self.fileProvider = fileProvider + } +} + +extension JavaScriptImportDirectiveFileCollectionDelegate: JavaScriptFileCollectionStepDelegate { + public func javaScriptFileCollectionStep( + _ fileCollectionStep: JavaScriptFileCollectionStep, + referencedFilesForFile file: InputSource + ) throws -> [URL] { + + let parserTree = try parserCache.loadParsedTree(input: file) + let fileReferences = + parserTree.importDirectives + .filter { !$0.isSystemImport } + .map { $0.path } + .filter { $0.hasSuffix(".js") } + + let basePath = URL(fileURLWithPath: file.sourcePath()).deletingLastPathComponent() + + var urls: [URL] = [] + + for reference in fileReferences { + let fileName = (reference as NSString).lastPathComponent + let path = basePath.appendingPathComponent(fileName) + + if fileProvider.fileExists(atUrl: path) { + urls.append(path) + } + } + + return urls + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptIntentionCollector.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptIntentionCollector.swift new file mode 100644 index 000000000..73bd26a6c --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptIntentionCollector.swift @@ -0,0 +1,341 @@ +import GrammarModelBase +import JsGrammarModels +import JsParser +import SwiftAST +import KnownType +import Intentions +import TypeSystem +import SwiftRewriterLib +import Utils + +// TODO: Move lazy parse object reporting to use a `JavaScriptLazyParseItem` like +// TODO: the Objective-C frontend does. +public protocol JavaScriptIntentionCollectorDelegate: AnyObject { + func reportForLazyParsing(_ item: JavaScriptLazyParseItem) +} + +/// Traverses a provided AST node, and produces intentions that are recorded by +/// pushing and popping them as contexts on a delegate's context object. +public class JavaScriptIntentionCollector { + /// Represents a local context for constructing types with. + public class Context { + var contexts: [Intention] = [] + var ivarAccessLevel: AccessLevel = .private + + public init() { + + } + + public func pushContext(_ intention: Intention) { + contexts.append(intention) + } + + /// Returns the latest context on the contexts stack that matches a given type. + /// + /// Searches from top-to-bottom, so the last context `T` that was pushed is + /// returned first. + public func findContext(ofType type: T.Type = T.self) -> T? { + contexts.reversed().first { $0 is T } as? T + } + + /// Returns the topmost context on the contexts stack casted to a specific type. + /// + /// If the topmost context is not T, nil is returned instead. + public func currentContext(as type: T.Type = T.self) -> T? { + contexts.last as? T + } + + @discardableResult + public func popContext() -> Intention { + contexts.removeLast() + } + } + + public weak var delegate: JavaScriptIntentionCollectorDelegate? + + var context: Context + + public init(delegate: JavaScriptIntentionCollectorDelegate, context: Context) { + self.delegate = delegate + self.context = context + } + + public func collectIntentions(_ node: JsASTNode) { + startNodeVisit(node) + } + + private func startNodeVisit(_ node: JsASTNode) { + let visitor = AnyASTVisitor() + let traverser = ASTTraverser(node: node, visitor: visitor) + + visitor.onEnterClosure = { node in + switch node { + case let n as JsClassNode: + self.enterJsClassNode(n) + + case let n as JsFunctionDeclarationNode: + self.enterJsFunctionDeclarationNode(n) + + default: + return + } + } + + visitor.visitClosure = { node in + switch node { + case let n as JsConstructorDefinitionNode: + self.visitJsConstructorDefinitionNode(n) + + case let n as JsMethodDefinitionNode: + self.visitJsMethodDefinitionNode(n) + + case let n as JsVariableDeclarationListNode: + self.visitJsVariableDeclarationListNode(n) + + case let n as JsClassPropertyNode: + self.visitJsClassPropertyNode(n) + + default: + return + } + } + + visitor.onExitClosure = { node in + switch node { + case let n as JsClassNode: + self.exitJsClassNode(n) + + case let n as JsFunctionDeclarationNode: + self.exitJsFunctionDeclarationNode(n) + + default: + return + } + } + + traverser.traverse() + } + + private func enterJsClassNode(_ node: JsClassNode) { + guard let name = node.identifier?.name else { + return + } + + let intent = ClassGenerationIntention(typeName: name, source: node) + + configure(node: node, intention: intent) + + context + .findContext(ofType: FileGenerationIntention.self)? + .addType(intent) + + context.pushContext(intent) + } + + private func exitJsClassNode(_ node: JsClassNode) { + if node.identifier?.name != nil { + context.popContext() // ClassGenerationIntention + } + } + + private func enterJsFunctionDeclarationNode(_ node: JsFunctionDeclarationNode) { + guard node.identifier != nil else { + return + } + + guard let signature = signatureConverter().generateDefinitionSignature(from: node) else { + return + } + + let globalFunc = GlobalFunctionGenerationIntention(signature: signature, source: node) + + configure(node: node, intention: globalFunc) + + context + .findContext(ofType: FileGenerationIntention.self)? + .addGlobalFunction(globalFunc) + + context.pushContext(globalFunc) + + if let body = node.body { + let methodBodyIntention = FunctionBodyIntention(body: [], source: body) + globalFunc.functionBody = methodBodyIntention + + configure(node: body, intention: methodBodyIntention) + + delegate?.reportForLazyParsing(.globalFunction(methodBodyIntention, globalFunc)) + } + } + + private func exitJsFunctionDeclarationNode(_ node: JsFunctionDeclarationNode) { + if context.currentContext(as: GlobalFunctionGenerationIntention.self) != nil { + context.popContext() // GlobalFunctionGenerationIntention + } + } + + private func visitJsConstructorDefinitionNode(_ node: JsConstructorDefinitionNode) { + guard let ctx = context.findContext(ofType: TypeGenerationIntention.self) else { + return + } + + guard let sign = signatureConverter().generateDefinitionSignature(from: node) else { + return + } + + let intention = InitGenerationIntention(parameters: sign.parameters, source: node) + + configure(node: node, intention: intention) + + if let body = node.body { + let methodBodyIntention = FunctionBodyIntention(body: [], source: body) + intention.functionBody = methodBodyIntention + + configure(node: body, intention: methodBodyIntention) + + delegate?.reportForLazyParsing(.initializer(methodBodyIntention, intention)) + } + + ctx.addConstructor(intention) + } + + private func visitJsMethodDefinitionNode(_ node: JsMethodDefinitionNode) { + guard let ctx = context.findContext(ofType: TypeGenerationIntention.self) else { + return + } + + guard let sign = signatureConverter().generateDefinitionSignature(from: node) else { + return + } + + let method = MethodGenerationIntention(signature: sign, source: node) + + configure(node: node, intention: method) + + if let body = node.body { + let methodBodyIntention = FunctionBodyIntention(body: [], source: body) + method.functionBody = methodBodyIntention + + configure(node: body, intention: methodBodyIntention) + + delegate?.reportForLazyParsing(.method(methodBodyIntention, method)) + } + + ctx.addMethod(method) + } + + private func visitJsClassPropertyNode(_ node: JsClassPropertyNode) { + guard let ctx = context.findContext(ofType: TypeGenerationIntention.self) else { + return + } + guard let identifier = node.identifier else { + return + } + + let property = PropertyGenerationIntention( + name: identifier.name, + type: .any, + objcAttributes: [], + source: node + ) + + configure(node: node, intention: property) + + if let initialExpression = node.expression { + let initialExpr = + PropertyInitialValueGenerationIntention( + expression: .constant(0), + source: initialExpression + ) + property.initialValueIntention = initialExpr + + configure(node: initialExpression, intention: initialExpr) + + delegate?.reportForLazyParsing(.classProperty(initialExpr, property)) + } + + ctx.addProperty(property) + } + + private func visitJsVariableDeclarationListNode(_ node: JsVariableDeclarationListNode) { + guard let ctx = context.currentContext(as: FileGenerationIntention.self) else { + return + } + + var attributedComments = false + + for variableNode in node.variableDeclarations { + guard let identifier = variableNode.identifier else { + continue + } + + let intention = GlobalVariableGenerationIntention( + name: identifier.name, + type: .any, + source: variableNode + ) + + if !attributedComments { + attributedComments = true + + _mapComments(node, intention) + } + + configure(node: variableNode, intention: intention) + + if let initialExpression = variableNode.expression { + let initialExpr = + GlobalVariableInitialValueIntention( + expression: .constant(0), + source: initialExpression + ) + + intention.initialValueIntention = initialExpr + + configure(node: initialExpression, intention: initialExpr) + + delegate?.reportForLazyParsing(.globalVar(initialExpr, intention)) + } + + ctx.addGlobalVariable(intention) + } + } + + // MARK: - Instance factories + + private func signatureConverter() -> JavaScriptMethodSignatureConverter { + return JavaScriptMethodSignatureConverter() + } +} + +extension JavaScriptIntentionCollector { + +} + +extension JavaScriptIntentionCollector { + private func configure(node: JsASTNode, intention: FromSourceIntention) { + _recordSourceHistory(node, intention) + _mapComments(node, intention) + } + + private func _recordSourceHistory(_ node: JsASTNode, _ intention: FromSourceIntention) { + intention.history.recordSourceHistory(node: node) + } + + private func _mapComments(_ node: JsASTNode, _ intention: FromSourceIntention) { + let applier = SwiftASTCommentApplier(comments: node.precedingComments) + + intention.precedingComments.append(contentsOf: applier.popAllComments()) + } + + private func convertComments(_ comments: [RawCodeComment]) -> [String] { + return comments.map { $0.string.trimmingWhitespace() } + } +} + +public enum JavaScriptLazyParseItem { + case globalFunction(FunctionBodyIntention, GlobalFunctionGenerationIntention) + case method(FunctionBodyIntention, MethodGenerationIntention) + case initializer(FunctionBodyIntention, InitGenerationIntention) + case classProperty(PropertyInitialValueGenerationIntention, PropertyGenerationIntention) + case globalVar(GlobalVariableInitialValueIntention, GlobalVariableGenerationIntention) +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptMethodSignatureConverter.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptMethodSignatureConverter.swift new file mode 100644 index 000000000..f6f267159 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptMethodSignatureConverter.swift @@ -0,0 +1,51 @@ +import JsGrammarModels +import SwiftAST +import TypeSystem + +/// A helper class that can be used to generate a proper swift method signature +/// from an JavaScript method signature. +public class JavaScriptMethodSignatureConverter { + public init() { + + } + + /// Generates a function definition from an JavaScript signature to use as + /// a function definition. + /// + /// Returns `nil` if `function.identifier` and/or `function.signature` is `nil`. + public func generateDefinitionSignature(from function: JsFunctionNodeType) -> FunctionSignature? { + _generate(from: function) + } + + /// Generates a function definition from an JavaScript signature to use as + /// a function definition. + /// + /// Returns `nil` if `function.identifier` and/or `function.signature` is `nil`. + public func generateDefinitionSignature(from method: JsMethodDefinitionNode) -> FunctionSignature? { + var signature = _generate(from: method) + signature?.isStatic = method.isStatic + + return signature + } + + private func _generate(from function: JsFunctionNodeType) -> FunctionSignature? { + guard let identifier = function.identifier else { + return nil + } + guard let signature = function.signature else { + return nil + } + + let parameters: [ParameterSignature] = signature.arguments.map { + .init(label: nil, name: $0.identifier, type: .any, isVariadic: $0.isVariadic, hasDefaultValue: false) + } + + return FunctionSignature( + name: identifier.name, + parameters: parameters, + returnType: .any, + isStatic: false, + isMutating: false + ) + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptObjectGenerator.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptObjectGenerator.swift new file mode 100644 index 000000000..d75a16c55 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptObjectGenerator.swift @@ -0,0 +1,111 @@ +import Intentions +import SwiftAST + +/// Class that emits `JavaScriptObject` declarations. +public final class JavaScriptObjectGenerator { + /// Generates the intention for a `JavaScriptObject` declaration. + public func generateTypeIntention() -> ClassGenerationIntention { + // TODO: Move TestCommons.IntentionBuilder to Intentions target and + // TODO: use it here + + let type = ClassGenerationIntention(typeName: "JavaScriptObject") + type.isFinal = true + type.addProtocol("ExpressibleByDictionaryLiteral") + type.addAttribute("dynamicMemberLookup") + + // Backing property + type.addInstanceVariable( + .init( + name: "values", + storage: .variable(ofType: .dictionary(key: .string, value: .any)), + accessLevel: .private + ) + ) + + // Subscription + type.addSubscript({ + let body = FunctionBodyIntention( + body: [ + .return(.identifier("values").sub(.identifier("member"))) + ] + ) + + let intention = SubscriptGenerationIntention( + parameters: [ + .init( + label: "dynamicMember", + name: "member", + type: .string + ) + ], + returnType: .optional(.any), + mode: .getter(body) + ) + + return intention + }()) + + // Initializers + type.addConstructor({ + let intention = InitGenerationIntention(parameters: []) + intention.functionBody = FunctionBodyIntention( + body: [ + .expression(.identifier("self").dot("values").assignment(op: .assign, rhs: .dictionaryLiteral([:]))) + ] + ) + + return intention + }()) + + type.addConstructor({ + let intention = InitGenerationIntention(parameters: [ + ParameterSignature( + label: "dictionaryLiteral", + name: "elements", + type: .tuple(.types([.string, .any])), + isVariadic: true + ) + ]) + intention.functionBody = FunctionBodyIntention( + body: [ + .for( + Pattern.tuple([.identifier("key"), .identifier("value")]), + .identifier("elements"), + body: [ + .expression( + .identifier("self") + .dot("values") + .sub(.identifier("key")) + .assignment( + op: .assign, + rhs: .identifier("value") + ) + ) + ] + ) + ] + ) + + return intention + }()) + + type.addConstructor({ + let intention = InitGenerationIntention(parameters: [ + ParameterSignature( + label: nil, + name: "values", + type: .dictionary(key: .string, value: .any) + ) + ]) + intention.functionBody = FunctionBodyIntention( + body: [ + .expression(.identifier("self").dot("values").assignment(op: .assign, rhs: .identifier("values"))) + ] + ) + + return intention + }()) + + return type + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptParserCache.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptParserCache.swift new file mode 100644 index 000000000..1579aaa5f --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptParserCache.swift @@ -0,0 +1,61 @@ +import Foundation +import AntlrCommons +import JsParser +import SourcePreprocessors +import Utils +import SwiftRewriterLib + +/// A parser cache that stores pre-parsed trees based on input file URLs +public class JavaScriptParserCache { + @ConcurrentValue var cache: [URL: JsParser] = [:] + let fileProvider: FileProvider + let parserStatePool: JsParserStatePool + let sourcePreprocessors: [SourcePreprocessor] + let antlrSettings: AntlrSettings + + public init( + fileProvider: FileProvider, + parserStatePool: JsParserStatePool, + sourcePreprocessors: [SourcePreprocessor] = [], + antlrSettings: AntlrSettings = .default + ) { + + self.fileProvider = fileProvider + self.parserStatePool = parserStatePool + self.sourcePreprocessors = sourcePreprocessors + self.antlrSettings = antlrSettings + } + + public func replaceCachedParsedTree(file: URL, parser: JsParser) { + cache[file] = parser + } + + public func loadParsedTree(input: InputSource) throws -> JsParser { + return try _cache.modifyingValue { cache in + let url = URL(fileURLWithPath: input.sourcePath()) + + if let parser = cache[url] { + try parser.parse() + return parser + } + + let src = try input.loadSource().fetchSource() + + let state = self.parserStatePool.pull() + let parser = JsParser( + string: src, + fileName: url.path, + state: state + ) + parser.antlrSettings = antlrSettings + try parser.parse() + parserStatePool.repool(state) + cache[url] = parser + return parser + } + } + + public enum Error: Swift.Error { + case invalidFile + } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptStatementASTReader.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptStatementASTReader.swift new file mode 100644 index 000000000..5ee5d0dd2 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptStatementASTReader.swift @@ -0,0 +1,730 @@ +import JsGrammarModels +import JsParserAntlr +import JsParser +import Antlr4 +import SwiftAST + +public final class JavaScriptStatementASTReader: JavaScriptParserBaseVisitor { + public typealias Parser = JavaScriptParser + + var expressionReader: JavaScriptExprASTReader + var context: JavaScriptASTReaderContext + public weak var delegate: JavaScriptASTReaderDelegate? + + public init( + expressionReader: JavaScriptExprASTReader, + context: JavaScriptASTReaderContext, + delegate: JavaScriptASTReaderDelegate? + ) { + + self.expressionReader = expressionReader + self.context = context + self.delegate = delegate + } + + + public override func visitBlock(_ ctx: JavaScriptParser.BlockContext) -> Statement? { + compoundVisitor().visitBlock(ctx) + } + + public override func visitStatement(_ ctx: JavaScriptParser.StatementContext) -> Statement? { + guard let result = super.visitStatement(ctx) else { + return nil + } + + context.applyComments(to: result, ctx) + + return result + } + + public override func visitVariableStatement(_ ctx: JavaScriptParser.VariableStatementContext) -> Statement? { + ctx.variableDeclarationList()?.accept(self) + } + + public override func visitVariableDeclarationList(_ ctx: JavaScriptParser.VariableDeclarationListContext) -> Statement? { + guard let declarations = variableDeclarations(from: ctx) else { + return unknown(ctx) + } + + return .variableDeclarations(declarations) + } + + public override func visitExpressionStatement(_ ctx: JavaScriptParser.ExpressionStatementContext) -> Statement? { + ctx.expressionSequence()?.accept(self) + } + + public override func visitExpressionSequence(_ ctx: JavaScriptParser.ExpressionSequenceContext) -> Statement? { + guard let expression = ctx.accept(expressionReader) else { + return unknown(ctx) + } + + return .expression(expression) + } + + public override func visitIfStatement(_ ctx: JavaScriptParser.IfStatementContext) -> Statement? { + guard let expression = ctx.expressionSequence()?.accept(expressionReader) else { + return unknown(ctx) + } + guard let statement = ctx.statement(0)?.accept(compoundVisitor()) else { + return unknown(ctx) + } + + return .if( + expression, + body: statement, + else: ctx.statement(1)?.accept(compoundVisitor()) + ) + } + + public override func visitDoStatement(_ ctx: JavaScriptParser.DoStatementContext) -> Statement? { + guard let expression = ctx.expressionSequence()?.accept(expressionReader) else { + return unknown(ctx) + } + guard let statement = ctx.statement()?.accept(compoundVisitor()) else { + return unknown(ctx) + } + + return .repeatWhile(expression, body: statement) + } + + public override func visitWhileStatement(_ ctx: JavaScriptParser.WhileStatementContext) -> Statement? { + guard let expression = ctx.expressionSequence()?.accept(expressionReader) else { + return unknown(ctx) + } + guard let statement = ctx.statement()?.accept(compoundVisitor()) else { + return unknown(ctx) + } + + return .while(expression, body: statement) + } + + public override func visitForStatement(_ ctx: JavaScriptParser.ForStatementContext) -> Statement? { + let generator = ForStatementGenerator(reader: self, context: context) + + return generator.generate(ctx) + } + + public override func visitForInStatement(_ ctx: JavaScriptParser.ForInStatementContext) -> Statement? { + // TODO: Add support for for-in statement + return unknown(ctx) + } + + public override func visitForOfStatement(_ ctx: JavaScriptParser.ForOfStatementContext) -> Statement? { + // TODO: Improve support for tuple-based for-in loops. + + let identifier: String? + + if let singleExpression = ctx.singleExpression() { + identifier = singleExpression.accept(expressionReader)?.asIdentifier?.identifier + } else if let declList = ctx.variableDeclarationList() { + let decl = variableDeclarations(from: declList) + + identifier = decl?.first?.identifier + } else { + return unknown(ctx) + } + + let expression = ctx.expressionSequence()?.accept(expressionReader) + let body = ctx.statement()?.accept(compoundVisitor()) + + if let identifier = identifier, let expression = expression, let body = body { + return .for( + .identifier(identifier), + expression, + body: body + ) + } + + return unknown(ctx) + } + + public override func visitContinueStatement(_ ctx: JavaScriptParser.ContinueStatementContext) -> Statement? { + .continue(targetLabel: ctx.identifier()?.getText()) + } + + public override func visitBreakStatement(_ ctx: JavaScriptParser.BreakStatementContext) -> Statement? { + .break(targetLabel: ctx.identifier()?.getText()) + } + + public override func visitReturnStatement(_ ctx: JavaScriptParser.ReturnStatementContext) -> Statement? { + .return(ctx.expressionSequence()?.accept(expressionReader)) + } + + public override func visitYieldExpression(_ ctx: JavaScriptParser.YieldExpressionContext) -> Statement? { + // TODO: Support yield statement + unknown(ctx) + } + + public override func visitWithStatement(_ ctx: JavaScriptParser.WithStatementContext) -> Statement? { + // TODO: Support with statement + unknown(ctx) + } + + public override func visitLabelledStatement(_ ctx: JavaScriptParser.LabelledStatementContext) -> Statement? { + ctx.statement()?.accept(self)?.labeled(ctx.identifier()?.getText()) + } + + public override func visitSwitchStatement(_ ctx: JavaScriptParser.SwitchStatementContext) -> Statement? { + guard let exp = ctx.expressionSequence()?.accept(expressionReader) else { return unknown(ctx) } + guard let block = ctx.caseBlock() else { return unknown(ctx) } + + let cases = block.caseClauses().flatMap(causeClauses(_:)) + var defaultCase = block.defaultClause().flatMap(defaultClause(_:)) + + // If no default is present, always emit a `default: break` statement, + // since switches in Swift must be exhaustive. + if defaultCase == nil { + defaultCase = [.break()] + } + + return .switch( + exp, + cases: cases, + defaultStatements: defaultCase + ) + } + + public override func visitThrowStatement(_ ctx: JavaScriptParser.ThrowStatementContext) -> Statement? { + guard let exp = ctx.expressionSequence()?.accept(expressionReader) else { + return unknown(ctx) + } + + return .throw(exp) + } + + public override func visitTryStatement(_ ctx: JavaScriptParser.TryStatementContext) -> Statement? { + // TODO: Support try statement + unknown(ctx) + } + + public override func visitFunctionDeclaration(_ ctx: JavaScriptParser.FunctionDeclarationContext) -> Statement? { + guard let identifier = ctx.identifier()?.getText() else { + return unknown(ctx) + } + guard let body = ctx.functionBody()?.accept(compoundVisitor()) else { + return unknown(ctx) + } + + let parameters = self.parameterSignatures(from: ctx.formalParameterList()) + + let function = LocalFunction( + identifier: identifier, + parameters: parameters, + returnType: .any, + body: body + ) + + return .localFunction(function) + } + + // MARK: - Helper generators + + private func causeClauses(_ ctx: JavaScriptParser.CaseClausesContext) -> [SwitchCase] { + var cases: [SwitchCase] = [] + + for clause in ctx.caseClause() { + context.pushDefinitionContext() + defer { context.popDefinitionContext() } + + guard let labels = clause.expressionSequence() else { + continue + } + guard let expr = labels.accept(expressionReader) else { + continue + } + + let patterns: [Pattern] = [.expression(expr)] + var statements = clause.statementList()?.accept(compoundVisitor())?.statements ?? [] + + if statements.count == 1, let stmt = statements[0].asCompound { + statements = stmt.statements + } + + // Merge sequential switch cases that have empty statements + if cases.count > 0, let last = cases.last { + if last.statements.isEmpty { + cases[cases.count - 1].patterns.append(contentsOf: patterns) + cases[cases.count - 1].body.statements.append(contentsOf: statements) + continue + } + } + + cases.append( + SwitchCase( + patterns: [.expression(expr)], + statements: statements + ) + ) + } + + // Append a default fallthrough to empty cases, in case the last statement + // is not a jump stmt to somewhere else (`return`, `continue` or + // `break`) + return cases.map { caseClause in + var statements = caseClause.statements.map { $0.copy() } + + let hasBreak = statements.last?.isUnconditionalJump ?? false + if !hasBreak { + statements.append(.fallthrough) + } + + return .init(patterns: caseClause.patterns.map { $0.copy() }, statements: statements) + } + } + + private func defaultClause(_ ctx: JavaScriptParser.DefaultClauseContext) -> [Statement]? { + ctx.statementList()?.accept(compoundVisitor())?.statements + } + + private func parameterSignatures(from ctx: JavaScriptParser.FormalParameterListContext?) -> [ParameterSignature] { + let signature = JsParser.functionSignature(from: ctx) + + return signature.arguments.map { + .init(label: nil, name: $0.identifier, type: .any) + } + } + + fileprivate func variableDeclarations(from ctx: JavaScriptParser.VariableDeclarationListContext) -> [StatementVariableDeclaration]? { + guard let modifier = ctx.varModifier().map(varModifier(from:)) else { + return nil + } + + var declarations: [StatementVariableDeclaration] = [] + + for declaration in ctx.variableDeclaration() { + if let decl = variableDeclaration(from: declaration, modifier: modifier) { + declarations.append(decl) + } + } + + return declarations + } + + fileprivate func variableDeclaration(from ctx: JavaScriptParser.VariableDeclarationContext, modifier: JsVariableDeclarationListNode.VarModifier) -> StatementVariableDeclaration? { + guard let identifier = ctx.assignable()?.identifier() else { + return nil + } + + var initialization: Expression? + let type: SwiftType = .any + let isConstant = modifier == .const + + if let singleExpression = ctx.singleExpression() { + initialization = singleExpression.accept(expressionReader) + } + + return .init( + identifier: identifier.getText(), + type: type, + isConstant: isConstant, + initialization: initialization + ) + } + + fileprivate func varModifier(from ctx: JavaScriptParser.VarModifierContext) -> JsVariableDeclarationListNode.VarModifier { + JsParser.varModifier(from: ctx) + } + + fileprivate func unknown(_ ctx: ParserRuleContext) -> Statement { + .unknown(UnknownASTContext(context: _sourceText(for: ctx))) + } + + private func _sourceText(for ctx: ParserRuleContext) -> String { + return self.context.sourceCode(for: ctx).map(String.init) ?? "" + } + + // MARK: - AST reader factories + + fileprivate func compoundVisitor() -> CompoundStatementVisitor { + CompoundStatementVisitor( + expressionReader: expressionReader, + context: context, + delegate: delegate + ) + } + + // MARK: - Compound statement visitor + class CompoundStatementVisitor: JavaScriptParserBaseVisitor { + var expressionReader: JavaScriptExprASTReader + var context: JavaScriptASTReaderContext + weak var delegate: JavaScriptASTReaderDelegate? + + init( + expressionReader: JavaScriptExprASTReader, + context: JavaScriptASTReaderContext, + delegate: JavaScriptASTReaderDelegate? + ) { + + self.expressionReader = expressionReader + self.context = context + self.delegate = delegate + } + + override func visitFunctionBody(_ ctx: JavaScriptParser.FunctionBodyContext) -> CompoundStatement? { + guard let sourceElements = ctx.sourceElements() else { + let result = CompoundStatement() + context.applyOverlappingComments(to: result, ctx) + return result + } + + context.commentApplier.pushRangeContext(rule: ctx) + guard let result = sourceElements.accept(self) else { + context.commentApplier.popRangeContext() + return nil + } + + context.commentApplier.popRangeContext(applyingUnusedCommentsTo: result) + + return result + } + + override func visitStatement(_ ctx: Parser.StatementContext) -> CompoundStatement? { + if let block = ctx.block() { + return block.accept(self) + } + + let reader = statementReader() + + if let stmt = reader.visitStatement(ctx) { + return CompoundStatement(statements: [stmt]) + } + + return nil + } + + override func visitSourceElements(_ ctx: JavaScriptParser.SourceElementsContext) -> CompoundStatement? { + context.pushDefinitionContext() + + let reader = statementReader() + + let statements: [Statement] = ctx.sourceElement().map { element in + let unknown = UnknownStatement.unknown(UnknownASTContext(context: element.getText())) + + return element.statement().flatMap { $0.accept(reader) } ?? unknown + } + + let result = makeCompoundStatement(statements) + + context.popDefinitionContext() + + return result + } + + override func visitArrowFunctionBody(_ ctx: JavaScriptParser.ArrowFunctionBodyContext) -> CompoundStatement? { + if let singleExpression = ctx.singleExpression(), let expression = singleExpression.accept(expressionReader) { + return [ + .expression(expression) + ] + } + if let functionBody = ctx.functionBody() { + return functionBody.accept(self) + } + + return nil + } + + override func visitBlock(_ ctx: Parser.BlockContext) -> CompoundStatement? { + context.pushDefinitionContext() + context.commentApplier.pushRangeContext(rule: ctx) + + let reader = statementReader() + + let statements: [Statement] = ctx.statementList()?.statement().map { stmt in + let unknown = UnknownStatement.unknown(UnknownASTContext(context: stmt.getText())) + + return stmt.accept(reader) ?? unknown + } ?? [] + + let result = makeCompoundStatement(statements) + + context.popDefinitionContext() + context.commentApplier.popRangeContext( + applyingUnusedCommentsTo: result + ) + + return result + } + + private func makeCompoundStatement(_ statements: [Statement]) -> CompoundStatement { + return CompoundStatement(statements: statements.flatMap { stmt -> [Statement] in + // Free compound blocks cannot be declared in Swift + if let inner = stmt.asCompound { + // Label the first statement with the compound's label, as + // well + inner.statements.first?.label = stmt.label + + return inner.statements.map { $0.copy() } + } + + return [stmt] + }) + } + + private func statementReader() -> JavaScriptStatementASTReader { + JavaScriptStatementASTReader( + expressionReader: expressionReader, + context: context, + delegate: delegate + ) + } + } +} + +private class ForStatementGenerator { + typealias Parser = JavaScriptParser + + var reader: JavaScriptStatementASTReader + var context: JavaScriptASTReaderContext + + init(reader: JavaScriptStatementASTReader, context: JavaScriptASTReaderContext) { + self.reader = reader + self.context = context + } + + func generate(_ ctx: Parser.ForStatementContext) -> Statement { + guard let compoundStatement = ctx.statement()?.accept(reader.compoundVisitor()) else { + return reader.unknown(ctx) + } + + // Do a trickery here: We bloat the loop by unrolling it into a plain while + // loop that is compatible with the original for-loop's behavior + + // for(; ; ) + let initExpr: Statement? + let condition: Expression? + let iteration: Statement? + + let expressions = ctx.expressionSequence() + + if expressions.count == 3 { + initExpr = expressions[0].accept(reader) + condition = expressions[1].accept(reader.expressionReader) + iteration = expressions[2].accept(reader) + } else if expressions.count == 2 { + initExpr = ctx.variableDeclarationList()?.accept(reader) + condition = expressions[0].accept(reader.expressionReader) + iteration = expressions[1].accept(reader) + } else { + return reader.unknown(ctx) + } + + // Try to come up with a clean for-in loop with a range + if let initExpr = initExpr, let condition = condition, let iteration = iteration { + let result = genSimplifiedFor(initExpr: + initExpr, + condition: condition, + iteration: iteration, + body: compoundStatement + ) + + if let result = result { + return result + } + } + + return genWhileLoop(initExpr, condition, iteration, compoundStatement) + } + + private func genWhileLoop(_ initExpr: Statement?, + _ condition: Expression?, + _ iteration: Statement?, + _ compoundStatement: CompoundStatement) -> Statement { + + // Come up with a while loop, now + + // Loop body + let body = CompoundStatement() + if let iteration = iteration { + body.statements.append(.defer([iteration])) + } + + body.statements.append(contentsOf: compoundStatement.statements.map { $0.copy() }) + + let whileBody = Statement.while(condition ?? .constant(true), + body: body) + + // Loop init (pre-loop) + let bodyWithWhile: Statement + if let initExpr = initExpr { + let body = CompoundStatement() + body.statements.append(initExpr) + body.statements.append(whileBody) + + bodyWithWhile = body + } else { + bodyWithWhile = whileBody + } + + return bodyWithWhile + } + + private func genSimplifiedFor(initExpr: Statement, + condition: Expression, + iteration: Statement, + body compoundStatement: CompoundStatement) -> Statement? { + + // Search for inits like 'int i = ' + guard let decl = initExpr.asVariableDeclaration?.decl, decl.count == 1 else { + return nil + } + let loopVar = decl[0] + if loopVar.type != .int { + return nil + } + guard let loopStart = (loopVar.initialization as? ConstantExpression)?.constant else { + return nil + } + + // Look for conditions of the form 'i < ' + guard let binary = condition.asBinary else { + return nil + } + + let op = binary.op + guard binary.lhs.asIdentifier?.identifier == loopVar.identifier else { + return nil + } + + guard op == .lessThan || op == .lessThanOrEqual else { + return nil + } + + // Look for loop iterations of the form 'i++' + guard let exps = iteration.asExpressions?.expressions, exps.count == 1 else { + return nil + } + guard exps[0].asAssignment == + .assignment(lhs: .identifier(loopVar.identifier), op: .addAssign, rhs: .constant(1)) else { + return nil + } + + // Check if the loop variable is not being modified within the loop's + // body + if ASTAnalyzer(compoundStatement).isLocalMutated(localName: loopVar.identifier) { + return nil + } + + let loopEnd: Expression + let counter = loopCounter(in: binary.rhs) + + switch counter { + case let .literal(int, type)?: + loopEnd = .constant(.int(int, type)) + + case .local(let local)?: + // Check if the local is not modified within the loop's body + if !local.storage.isConstant { + if ASTAnalyzer(compoundStatement).isLocalMutated(localName: local.name) { + return nil + } + } + + loopEnd = .identifier(local.name) + + case let .propertyAccess(local, member)?: + if ASTAnalyzer(compoundStatement).isLocalMutated(localName: local.name) { + return nil + } + + loopEnd = .identifier(local.name).dot(member) + + case nil: + return nil + } + + // All good! Simplify now. + let rangeOp: SwiftOperator = op == .lessThan ? .openRange : .closedRange + + return .for( + .identifier(loopVar.identifier), + .binary(lhs: .constant(loopStart), + op: rangeOp, + rhs: loopEnd), + body: compoundStatement + ) + } + + func loopCounter(in expression: Expression) -> LoopCounter? { + switch expression { + case let constant as ConstantExpression: + switch constant.constant { + case let .int(value, type): + return .literal(value, type) + default: + return nil + } + + case let ident as IdentifierExpression: + if let local = context.localNamed(ident.identifier) { + return .local(local) + } + + case let postfix as PostfixExpression: + guard let identifier = postfix.exp.asIdentifier else { + return nil + } + guard let member = postfix.op.asMember else { + return nil + } + guard let local = context.localNamed(identifier.identifier) else { + return nil + } + + return .propertyAccess(local, property: member.name) + + default: + return nil + } + + return nil + } + + enum LoopCounter { + case literal(Int, Constant.IntegerType) + case local(JavaScriptASTReaderContext.Local) + case propertyAccess(JavaScriptASTReaderContext.Local, property: String) + } +} + +private class ASTAnalyzer { + let node: SyntaxNode + + init(_ node: SyntaxNode) { + self.node = node + } + + func isLocalMutated(localName: String) -> Bool { + var sequence: AnySequence + + switch node { + case let exp as Expression: + sequence = expressions(in: exp, inspectBlocks: true) + + case let stmt as Statement: + sequence = expressions(in: stmt, inspectBlocks: true) + + default: + return false + } + + return sequence.contains { exp in + exp.asAssignment?.lhs.asIdentifier?.identifier == localName + } + } +} + +private func expressions(in statement: Statement, inspectBlocks: Bool) -> AnySequence { + let sequence = + SyntaxNodeSequence(node: statement, + inspectBlocks: inspectBlocks) + + return AnySequence(sequence.lazy.compactMap { $0 as? Expression }) +} + +private func expressions(in expression: Expression, inspectBlocks: Bool) -> AnySequence { + let sequence = + SyntaxNodeSequence(node: expression, + inspectBlocks: inspectBlocks) + + return AnySequence(sequence.lazy.compactMap { $0 as? Expression }) +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptSwiftRewriterService.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptSwiftRewriterService.swift new file mode 100644 index 000000000..9fbf47ae2 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JavaScriptSwiftRewriterService.swift @@ -0,0 +1,7 @@ +import SwiftRewriterLib + +/// Refined protocol for JavaScript rewriter services. +public protocol JavaScriptSwiftRewriterService: SwiftRewriterService { + /// Gets the shared parser cache. + var parserCache: JavaScriptParserCache { get } +} diff --git a/Sources/Frontend/JavaScript/JavaScriptFrontend/JsParserStatePool.swift b/Sources/Frontend/JavaScript/JavaScriptFrontend/JsParserStatePool.swift new file mode 100644 index 000000000..0383a86b6 --- /dev/null +++ b/Sources/Frontend/JavaScript/JavaScriptFrontend/JsParserStatePool.swift @@ -0,0 +1,35 @@ +import JsParser +import Utils + +/// A class to aid in managing pooling of JsParserState instances +public final class JsParserStatePool { + let mutex = Mutex() + + private var pool: [JsParserState] = [] + + public init() { + + } + + /// Pulls a new instance of an `JsParserState` to parse with. + /// + /// - Returns: An `JsParserState` ready to parse data. + public func pull() -> JsParserState { + mutex.locking { + if !pool.isEmpty { + return pool.removeFirst() + } + + return JsParserState() + } + } + + /// Repools and `JsParserState` instance for reusal. + /// + /// - Parameter parserState: Parser state to reuse. + public func repool(_ parserState: JsParserState) { + mutex.locking { + pool.append(parserState) + } + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsASTNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsASTNode.swift new file mode 100644 index 000000000..92060a791 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsASTNode.swift @@ -0,0 +1,21 @@ +import GrammarModelBase +import Utils + +/// Base JavaScript node type +open class JsASTNode: ASTNode { + + /// Instantiates a bare JsASTNode with a given range. + /// Defaults to an invalid range + public override init( + location: SourceLocation = .invalid, + length: SourceLength = .zero, + existsInSource: Bool = true + ) { + + super.init( + location: location, + length: length, + existsInSource: existsInSource + ) + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsAnonymousFunction.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsAnonymousFunction.swift new file mode 100644 index 000000000..64dbe7611 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsAnonymousFunction.swift @@ -0,0 +1,27 @@ +import JsParserAntlr + +/// Represents an anonymous, in-line JavaScript function declaration. +public struct JsAnonymousFunction { + /// Identifier for the function. + /// + /// Is `nil` for fully anonymous inline functions. + public var identifier: String? + + /// The signature of this function. + public var signature: JsFunctionSignature + + /// The body of this anonymous function. + public var body: Body + + public init(identifier: String? = nil, signature: JsFunctionSignature, body: Body) { + self.identifier = identifier + self.signature = signature + self.body = body + } + + /// Represents one of the types of anonymous function bodies. + public enum Body { + case singleExpression(JavaScriptParser.SingleExpressionContext) + case functionBody(JavaScriptParser.FunctionBodyContext) + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsClassNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsClassNode.swift new file mode 100644 index 000000000..9b6793b0e --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsClassNode.swift @@ -0,0 +1,28 @@ +/// A node describing a JavaScript class. +public class JsClassNode: JsASTNode, JsInitializableNode { + /// The name identifier for this class. + public var identifier: JsIdentifierNode? { + firstChild() + } + + /// A list of constructors + public var constructors: [JsConstructorDefinitionNode] { + childrenMatching() + } + + /// A list of methods. + public var methods: [JsMethodDefinitionNode] { + childrenMatching() + } + + /// A list of class properties. + public var properties: [JsClassPropertyNode] { + childrenMatching() + } + + /// A list of properties. + + public required init() { + super.init() + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsClassPropertyNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsClassPropertyNode.swift new file mode 100644 index 000000000..079935a7c --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsClassPropertyNode.swift @@ -0,0 +1,28 @@ +/// A class-scoped property declaration. +public class JsClassPropertyNode: JsASTNode, JsInitializableNode { + /// The identifier for this property. + public var identifier: JsIdentifierNode? { + firstChild() + } + + /// The initial expression for this property declaration. + public var expression: JsExpressionNode? { + firstChild() + } + + public var attributes: Attributes = Attributes() + + public required init() { + super.init() + } + + public struct Attributes: OptionSet { + public var rawValue: Int + + public init(rawValue: Int) { + self.rawValue = rawValue + } + + public static let isPrivate = Attributes(rawValue: 0b000_0001) + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsConstructorDefinitionNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsConstructorDefinitionNode.swift new file mode 100644 index 000000000..c18e43e8c --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsConstructorDefinitionNode.swift @@ -0,0 +1,22 @@ +/// A node for JavaScript constructor definitions. +public class JsConstructorDefinitionNode: JsASTNode, JsFunctionNodeType, JsInitializableNode { + /// Whether this method is defined as static. + public var isStatic: Bool = false + + /// Gets the identifier node for this constructor. + public var identifier: JsIdentifierNode? { + firstChild() + } + + /// The signature for this constructor. + public var signature: JsFunctionSignature? + + /// Gets the function body for this constructor. + public var body: JsFunctionBodyNode? { + firstChild() + } + + public required init() { + super.init() + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsExpressionNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsExpressionNode.swift new file mode 100644 index 000000000..981a3f84f --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsExpressionNode.swift @@ -0,0 +1,6 @@ +import JsParserAntlr + +/// An expression for a variable definition. +public final class JsExpressionNode: JsASTNode { + public var expression: JavaScriptParser.SingleExpressionContext? +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionBodyNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionBodyNode.swift new file mode 100644 index 000000000..24d19da1a --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionBodyNode.swift @@ -0,0 +1,18 @@ +import JsParserAntlr +import GrammarModelBase + +/// A body of a JavaScript function declaration. +public final class JsFunctionBodyNode: JsASTNode, JsInitializableNode { + public var body: JavaScriptParser.FunctionBodyContext? + + /// List of comments found within the range of this method body + public var comments: [RawCodeComment] = [] + + public override var shortDescription: String { + body?.getText() ?? "" + } + + public init() { + super.init() + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionDeclarationNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionDeclarationNode.swift new file mode 100644 index 000000000..1dd123a98 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionDeclarationNode.swift @@ -0,0 +1,19 @@ +/// A plain JavaScript function node. +public class JsFunctionDeclarationNode: JsASTNode, JsFunctionNodeType, JsInitializableNode { + /// The identifier for the function's name. + public var identifier: JsIdentifierNode? { + firstChild() + } + + /// The signature for this function's arguments. + public var signature: JsFunctionSignature? + + /// Gets the function body for this function declaration. + public var body: JsFunctionBodyNode? { + firstChild() + } + + public required init() { + super.init() + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionNodeType.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionNodeType.swift new file mode 100644 index 000000000..2a5192fde --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionNodeType.swift @@ -0,0 +1,8 @@ +/// Common protocol for function and callable JavaScript node types. +public protocol JsFunctionNodeType: JsASTNode { + /// Gets the identifier for this function node. + var identifier: JsIdentifierNode? { get } + + /// Gets the function signature associated to this function node. + var signature: JsFunctionSignature? { get } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionSignature.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionSignature.swift new file mode 100644 index 000000000..46c45b2cb --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsFunctionSignature.swift @@ -0,0 +1,20 @@ +public struct JsFunctionSignature: Equatable { + public var arguments: [JsFunctionArgument] + + public init(arguments: [JsFunctionArgument] = []) { + self.arguments = arguments + } +} + +// TODO: Support default argument values. + +/// Argument for a JavaScript function signature. +public struct JsFunctionArgument: Equatable { + public var identifier: String + public var isVariadic: Bool + + public init(identifier: String, isVariadic: Bool) { + self.identifier = identifier + self.isVariadic = isVariadic + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsGlobalContextNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsGlobalContextNode.swift new file mode 100644 index 000000000..afce1401b --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsGlobalContextNode.swift @@ -0,0 +1,6 @@ +/// A node that represents the global namespace +public final class JsGlobalContextNode: JsASTNode, JsInitializableNode { + public init() { + super.init() + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsIdentifierNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsIdentifierNode.swift new file mode 100644 index 000000000..48dec659c --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsIdentifierNode.swift @@ -0,0 +1,21 @@ +import Utils +import GrammarModelBase + +/// An identifier node +public class JsIdentifierNode: JsASTNode { + /// String identifier + public var name: String + + public override var shortDescription: String { + name + } + + public init(name: String, + location: SourceLocation = .invalid, + length: SourceLength = .zero) { + + self.name = name + + super.init(location: location, length: length) + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsInitializableNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsInitializableNode.swift new file mode 100644 index 000000000..96ec39652 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsInitializableNode.swift @@ -0,0 +1,5 @@ +/// Describes a node with a default parameterized `init` which is a known +/// base node requirement initializer. +public protocol JsInitializableNode: JsASTNode { + init() +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsMethodDefinitionNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsMethodDefinitionNode.swift new file mode 100644 index 000000000..eb52dd3c6 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsMethodDefinitionNode.swift @@ -0,0 +1,34 @@ +/// A node for JavaScript method definitions. +public class JsMethodDefinitionNode: JsASTNode, JsFunctionNodeType, JsInitializableNode { + /// The name of the method. + public var identifier: JsIdentifierNode? { + firstChild() + } + + /// Whether this method is defined as static. + public var isStatic: Bool = false + + /// The signature for this function. + public var signature: JsFunctionSignature? + + /// The context associated to this method definition. + public var context: Context? + + /// Gets the function body for this method definition. + public var body: JsFunctionBodyNode? { + firstChild() + } + + public required init() { + super.init() + } + + /// Extra context that can be appended to a method definition. + public enum Context { + /// Method was parsed from a property getter. + case isGetter + + /// Method was parsed from a property setter. + case isSetter + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsVariableDeclarationListNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsVariableDeclarationListNode.swift new file mode 100644 index 000000000..cb51e38e1 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsVariableDeclarationListNode.swift @@ -0,0 +1,22 @@ +/// A variable declaration list. +public class JsVariableDeclarationListNode: JsASTNode { + /// The modifier for this declaration, aka `var`, `let`, or `const`. + public var varModifier: VarModifier + + /// A list of variable declarations within this node. + public var variableDeclarations: [JsVariableDeclarationNode] { + childrenMatching() + } + + public init(varModifier: VarModifier) { + self.varModifier = varModifier + + super.init() + } + + public enum VarModifier: String { + case `var` + case `let` + case const + } +} diff --git a/Sources/Frontend/JavaScript/JsGrammarModels/JsVariableDeclarationNode.swift b/Sources/Frontend/JavaScript/JsGrammarModels/JsVariableDeclarationNode.swift new file mode 100644 index 000000000..cccdac7f7 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsGrammarModels/JsVariableDeclarationNode.swift @@ -0,0 +1,16 @@ +/// A variable definition contained within a `JsVariableDeclarationListNode`. +public class JsVariableDeclarationNode: JsASTNode, JsInitializableNode { + /// The identifier for this variable. + public var identifier: JsIdentifierNode? { + firstChild() + } + + /// The initial expression for this variable declaration. + public var expression: JsExpressionNode? { + firstChild() + } + + public required init() { + super.init() + } +} diff --git a/Sources/Frontend/JavaScript/JsParser/JsASTNodeFactory.swift b/Sources/Frontend/JavaScript/JsParser/JsASTNodeFactory.swift new file mode 100644 index 000000000..9e5d38edf --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParser/JsASTNodeFactory.swift @@ -0,0 +1,121 @@ +import Antlr4 +import Utils +import GrammarModelBase +import JsParserAntlr +import JsGrammarModels + +class JsASTNodeFactory { + typealias Parser = JavaScriptParser + + let source: Source + + init(source: Source) { + self.source = source + } + + func makeIdentifier(from context: Parser.IdentifierContext) -> JsIdentifierNode { + let node = JsIdentifierNode(name: context.getText()) + updateSourceLocation(for: node, with: context) + return node + } + + func makeVariableDeclarationList(from context: Parser.VariableDeclarationListContext, + varModifier: Parser.VarModifierContext) -> JsVariableDeclarationListNode { + + let varModifier = makeVarModifier(from: varModifier) + let node = JsVariableDeclarationListNode(varModifier: varModifier) + + return node + } + + func makeVariableDeclaration(from context: Parser.VariableDeclarationContext, + identifier: Parser.IdentifierContext, + initialExpression: Parser.SingleExpressionContext?) -> JsVariableDeclarationNode { + + let node = JsVariableDeclarationNode() + node.addChild(makeIdentifier(from: identifier)) + + if let initialExpression = initialExpression { + node.addChild(makeExpressionNode(from: initialExpression)) + } + + updateSourceLocation(for: node, with: context) + return node + } + + func makeExpressionNode(from context: Parser.SingleExpressionContext) -> JsExpressionNode { + let node = JsExpressionNode() + node.expression = context + updateSourceLocation(for: node, with: context) + return node + } + + func makeFunctionBodyNode(from context: Parser.FunctionBodyContext) -> JsFunctionBodyNode { + let node = JsFunctionBodyNode() + node.body = context + updateSourceLocation(for: node, with: context) + return node + } + + func makeClassPropertyNode( + from context: Parser.ClassElementContext, + identifier: Parser.IdentifierContext, + expression: Parser.SingleExpressionContext + ) -> JsClassPropertyNode { + let node = JsClassPropertyNode() + node.addChild(makeIdentifier(from: identifier)) + node.addChild(makeExpressionNode(from: expression)) + updateSourceLocation(for: node, with: context) + return node + } + + func makeVarModifier(from context: Parser.VarModifierContext) -> JsVariableDeclarationListNode.VarModifier { + Self.makeVarModifier(from: context) + } + + static func makeVarModifier(from context: Parser.VarModifierContext) -> JsVariableDeclarationListNode.VarModifier { + if context.Var() != nil { + return .var + } + if context.let_() != nil { + return .let + } + if context.Const() != nil { + return .const + } + + return .var + } + + // MARK: - Source location update + + func updateSourceLocation(for node: JsASTNode, with rule: ParserRuleContext) { + (node.location, node.length) = sourceLocationAndLength(for: rule) + } + + func sourceLocationAndLength(for rule: ParserRuleContext) -> (SourceLocation, SourceLength) { + guard let startIndex = rule.start?.getStartIndex(), let endIndex = rule.stop?.getStopIndex() else { + return (.invalid, .zero) + } + + let sourceStartIndex = source.stringIndex(forCharOffset: startIndex) + let sourceEndIndex = source.stringIndex(forCharOffset: endIndex) + + let startLine = source.lineNumber(at: sourceStartIndex) + let startColumn = source.columnNumber(at: sourceStartIndex) + let endLine = source.lineNumber(at: sourceEndIndex) + let endColumn = source.columnNumber(at: sourceEndIndex) + + let location = + SourceLocation(line: startLine, + column: startColumn, + utf8Offset: startIndex) + + let length = + SourceLength(newlines: endLine - startLine, + columnsAtLastLine: endColumn, + utf8Length: endIndex - startIndex) + + return (location, length) + } +} diff --git a/Sources/Frontend/JavaScript/JsParser/JsImportDecl.swift b/Sources/Frontend/JavaScript/JsParser/JsImportDecl.swift new file mode 100644 index 000000000..8c622fa76 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParser/JsImportDecl.swift @@ -0,0 +1,21 @@ +import Foundation + +// TODO: Support aliases in imported symbols for type resolution purposes. + +public struct JsImportDecl: Equatable { + /// List of symbols that the import directive is declaring. + /// If no symbols are present, this indicates a full import from a file. + public var symbols: [String] + public var path: String + public var isSystemImport: Bool + + public var pathComponents: [String] { + (path as NSString).pathComponents + } + + public init(symbols: [String], path: String, isSystemImport: Bool) { + self.symbols = symbols + self.path = path + self.isSystemImport = isSystemImport + } +} diff --git a/Sources/Frontend/JavaScript/JsParser/JsImportDeclListener.swift b/Sources/Frontend/JavaScript/JsParser/JsImportDeclListener.swift new file mode 100644 index 000000000..b0273828d --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParser/JsImportDeclListener.swift @@ -0,0 +1,57 @@ +import Antlr4 +import Utils +import AntlrCommons +import JsParserAntlr +import GrammarModelBase +import JsGrammarModels + +/// Listener that collects import declarations from a JavaScript syntax tree. +internal class JsImportDeclListener: JavaScriptParserBaseListener { + var importDecls: [JsImportDecl] = [] + + override func enterImportStatement(_ ctx: JavaScriptParser.ImportStatementContext) { + guard let importFromBlock = ctx.importFromBlock() else { return } + guard let pathNode = importFromBlock.importFrom()?.StringLiteral() ?? importFromBlock.StringLiteral() else { return } + + let path = JsParser.parseStringContents(pathNode) + + var symbols: [String] = [] + + func inspectAlias(_ aliasName: JavaScriptParser.AliasNameContext) { + if let identifierName = aliasName.identifierName(0) { + symbols.append(identifierName.getText()) + } + } + + // import defaultExport from "module-name"; + // or: + // import defaultExport as alias from "module-name"; + if let aliasName = importFromBlock.importDefault()?.aliasName() { + inspectAlias(aliasName) + } + + // import * as name from "module-name" + if importFromBlock.importNamespace()?.Multiply() != nil { + symbols.append("*") + } + // import identifier as name from "module-name" + else if let importNamespace = importFromBlock.importNamespace()?.identifierName(0) { + symbols.append(importNamespace.getText()) + } + + // import { export1, export2 as alias2, /* … */ } from "module-name"; + if let moduleItems = importFromBlock.moduleItems() { + for aliasName in moduleItems.aliasName() { + inspectAlias(aliasName) + } + } + + let importDecl = JsImportDecl( + symbols: symbols, + path: path, + isSystemImport: false + ) + + importDecls.append(importDecl) + } +} diff --git a/Sources/Frontend/JavaScript/JsParser/JsNodeCreationContext.swift b/Sources/Frontend/JavaScript/JsParser/JsNodeCreationContext.swift new file mode 100644 index 000000000..02d27d732 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParser/JsNodeCreationContext.swift @@ -0,0 +1,116 @@ +import JsGrammarModels + +// TODO: Create a base implementation to cover this file and with ObjcParser.ObjcParserListener. + +/// A class used to nest up hierarchic node creations +public class NodeCreationContext { + /// Current top-most node + public var topmostNode: JsASTNode? { + _nodeStack.last + } + + public var autoUpdatesSourceRange = true + + private var _nodeStack: [JsASTNode] = [] + private var _staticContext: [Bool] = [] + + /// Returns `true` if the topmost static context is true. + /// + /// Returns `false` if there is no static context appended. + public var isStaticContext: Bool { + _staticContext.last ?? false + } + + public func pushStaticContext(isStatic: Bool) { + _staticContext.append(isStatic) + } + + @discardableResult + public func popStaticContext() -> Bool { + _staticContext.removeLast() + } + + /// Pushes a new node context + @discardableResult + public func pushContext(nodeType type: T.Type = T.self) -> T { + let node = T.init() + + pushContext(node: node) + + return node + } + + /// Searches for a context node with a given node type. + /// Returns nil, if no nodes along the context stack are of type `T`. + /// + /// Searches from most recently added to least recently added nodes. + public func findContextNode(as node: T.Type = T.self) -> T? { + for node in _nodeStack.reversed() { + if let node = node as? T { + return node + } + } + + return nil + } + + /// Gets the current context node as a given node type. + /// Returns nil, if `topmostNode` is nil or if it cannot be cast to `T`. + public func currentContextNode(as node: T.Type = T.self) -> T? { + topmostNode as? T + } + + /// Gets the topmost context node of a specified type that sits bellow the + /// given node. + /// + /// If the node is not within the context stack, `nil` is returned. + public func findContextNodeBellow(node: JsASTNode, as nodeType: T.Type = T.self) -> T? { + guard let index = _nodeStack.firstIndex(where: { $0 === node }) else { + return nil + } + + for node in _nodeStack[.. JsASTNode? { + guard let top = _nodeStack.popLast() else { + return nil + } + + if autoUpdatesSourceRange { + if top.location == .invalid { + top.updateSourceRange() + } + } + + return top + } +} diff --git a/Sources/Frontend/JavaScript/JsParser/JsParser.swift b/Sources/Frontend/JavaScript/JsParser/JsParser.swift new file mode 100644 index 000000000..cf48b7fcb --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParser/JsParser.swift @@ -0,0 +1,283 @@ +import class Antlr4.BaseErrorListener +import class Antlr4.Recognizer +import class Antlr4.ATNSimulator +import class Antlr4.ParseTreeWalker +import class Antlr4.ParserRuleContext +import class Antlr4.Parser +import class Antlr4.DFA +import protocol Antlr4.TerminalNode +import struct Foundation.CharacterSet + +import JsParserAntlr +import AntlrCommons +import Utils +import JsGrammarModels +import GrammarModelBase + +/// Main entry point for parsing JavaScript code. +public class JsParser { + /// A state used to instance single threaded parsers. + /// The default parser state, in case the user did not provide one on init. + private static var _singleThreadState: JsParserState = JsParserState() + + var parsed: Bool = false + + // MARK: ANTLR parser + var mainParser: AntlrParser? + + /// Gets the source that is being parsed. + public let source: CodeSource + + /// Gets the parsed global context node. + public var rootNode: JsGlobalContextNode = JsGlobalContextNode() + + /// Gets or sets the underlying parser state for this parser + public var state: JsParserState + + public var diagnostics: Diagnostics + + /// Contains information about all C-style comments found while parsing the + /// input file. + public var comments: [RawCodeComment] = [] + + /// Import declarations found in file. + public var importDirectives: [JsImportDecl] = [] + + public var antlrSettings: AntlrSettings = .default + + public convenience init(string: String, fileName: String = "") { + self.init(source: StringCodeSource(source: string, fileName: fileName)) + } + + public convenience init( + string: String, + fileName: String = "", + state: JsParserState + ) { + + self.init( + source: StringCodeSource(source: string, fileName: fileName), + state: state + ) + } + + public convenience init(source: CodeSource) { + self.init(source: source, state: JsParser._singleThreadState) + } + + public init(source: CodeSource, state: JsParserState) { + self.source = source + self.state = state + antlrSettings.forceUseLLPrediction = true + diagnostics = Diagnostics() + } + + /// Parses the entire source string + public func parse() throws { + if parsed { + return + } + + // Clear previous state + let src = source.fetchSource() + + parseComments(input: src) + + let parserState = try state.makeMainParser(input: src) + mainParser = parserState + let parser = parserState.parser + parser.removeErrorListeners() + + let root = try tryParse(from: parser, { try $0.program() }) + + let commentQuerier = CommentQuerier(allComments: comments) + + let listener = JsParserListener( + sourceString: src, + source: source, + commentQuerier: commentQuerier + ) + + let walker = ParseTreeWalker() + try walker.walk(listener, root) + + try collectImports(root) + + rootNode = listener.rootNode + + parsed = true + } + + private func collectImports(_ root: JavaScriptParser.ProgramContext) throws { + let listener = JsImportDeclListener() + + let walker = ParseTreeWalker() + try walker.walk(listener, root) + + self.importDirectives = listener.importDecls + } + + private func tryParse(from parser: P, _ operation: (P) throws -> T) throws -> T { + + let diag = Diagnostics() + let errorListener = AntlrDiagnosticsErrorListener(source: source, diagnostics: diag) + + parser.addErrorListener( + errorListener + ) + + try parser.reset() + + var root: T + + if antlrSettings.forceUseLLPrediction { + parser.getInterpreter().setPredictionMode(.LL) + + root = try operation(parser) + } else { + parser.getInterpreter().setPredictionMode(.SLL) + + root = try operation(parser) + + if !diag.errors.isEmpty { + diag.removeAll() + + try parser.reset() + parser.getInterpreter().setPredictionMode(.LL) + + root = try operation(parser) + } + } + + diagnostics.merge(with: diag) + + return root + } + + private func parseComments(input: String) { + comments = JsParser.parseComments(input: input) + } + + // MARK: - Global context-free parsing functions + + public static func parseStringContents(_ ctx: Antlr4.TerminalNode) -> String { + let text = ctx.getText() + + return text.trimmingCharacters(in: CharacterSet(charactersIn: "\"'`")) + } + + public static func parseComments(input: String) -> [RawCodeComment] { + var result: [RawCodeComment] = [] + + let ranges = input.cStyleCommentSectionRanges() + + for range in ranges { + let start = input.asSourceLocation(range.lowerBound) + let end = input.asSourceLocation(range.upperBound) + + let commentString = String(input[range]) + let comment = RawCodeComment( + string: commentString, + range: (start.utf8Offset)..<(end.utf8Offset), + location: start, + length: start.length(to: end) + ) + + result.append(comment) + } + + return result + } + + public static func varModifier(from ctx: JavaScriptParser.VarModifierContext) -> JsVariableDeclarationListNode.VarModifier { + JsASTNodeFactory.makeVarModifier(from: ctx) + } + + public static func anonymousFunction(from ctx: JavaScriptParser.AnonymousFunctionContext) -> JsAnonymousFunction? { + var identifier: JavaScriptParser.IdentifierContext? + var signature: JsFunctionSignature? + var body: JsAnonymousFunction.Body? + + switch ctx { + case let ctx as JavaScriptParser.FunctionDeclContext: + let functionDeclaration = ctx.functionDeclaration() + + identifier = functionDeclaration?.identifier() + signature = functionSignature(from: functionDeclaration?.formalParameterList()) + body = (functionDeclaration?.functionBody()).map(JsAnonymousFunction.Body.functionBody) + + case let ctx as JavaScriptParser.AnonymousFunctionDeclContext: + signature = functionSignature(from: ctx.formalParameterList()) + body = ctx.functionBody().map(JsAnonymousFunction.Body.functionBody) + + case let ctx as JavaScriptParser.ArrowFunctionContext: + signature = functionSignature(from: ctx.arrowFunctionParameters()) + if let singleExpression = ctx.arrowFunctionBody()?.singleExpression() { + body = .singleExpression(singleExpression) + } else if let functionBody = ctx.arrowFunctionBody()?.functionBody() { + body = .functionBody(functionBody) + } + + default: + break + } + + guard let signature = signature, let body = body else { + return nil + } + + return JsAnonymousFunction(identifier: identifier?.getText(), signature: signature, body: body) + } + + /// Reads a function signature from a formal parameter list context. + public static func functionSignature(from ctx: JavaScriptParser.FormalParameterListContext?) -> JsFunctionSignature { + func _identifier(from singleExpression: JavaScriptParser.SingleExpressionContext?) -> JavaScriptParser.IdentifierContext? { + if let result = singleExpression as? JavaScriptParser.IdentifierExpressionContext { + return result.identifier() + } + + return nil + } + func _argument(from ctx: JavaScriptParser.FormalParameterArgContext) -> JsFunctionArgument? { + guard let identifier = ctx.assignable()?.identifier()?.getText() else { + return nil + } + + return .init(identifier: identifier, isVariadic: false) + } + func _argument(from ctx: JavaScriptParser.LastFormalParameterArgContext) -> JsFunctionArgument? { + guard let identifier = _identifier(from: ctx.singleExpression())?.getText() else { + return nil + } + + return .init(identifier: identifier, isVariadic: ctx.Ellipsis() != nil) + } + + var arguments: [JsFunctionArgument] = [] + + if let ctx = ctx { + arguments = ctx.formalParameterArg().compactMap(_argument(from:)) + + if let last = ctx.lastFormalParameterArg(), let argument = _argument(from: last) { + arguments.append(argument) + } + } + + return JsFunctionSignature(arguments: arguments) + } + + /// Reads a function signature from an arrow function parameter context. + public static func functionSignature(from ctx: JavaScriptParser.ArrowFunctionParametersContext?) -> JsFunctionSignature? { + guard let ctx = ctx else { + return nil + } + + if let identifier = ctx.identifier() { + return JsFunctionSignature(arguments: [ + .init(identifier: identifier.getText(), isVariadic: false) + ]) + } + + return functionSignature(from: ctx.formalParameterList()) + } +} diff --git a/Sources/Frontend/JavaScript/JsParser/JsParserListener.swift b/Sources/Frontend/JavaScript/JsParser/JsParserListener.swift new file mode 100644 index 000000000..c3e044853 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParser/JsParserListener.swift @@ -0,0 +1,454 @@ +import Antlr4 +import Utils +import AntlrCommons +import JsParserAntlr +import GrammarModelBase +import JsGrammarModels + +internal class JsParserListener: JavaScriptParserBaseListener { + + let context: NodeCreationContext + + let rootNode: JsGlobalContextNode = JsGlobalContextNode() + + private var commentQuerier: CommentQuerier + private let mapper: GenericParseTreeContextMapper + private let sourceString: String + private let source: Source + private let nodeFactory: JsASTNodeFactory + + init( + sourceString: String, + source: Source, + commentQuerier: CommentQuerier + ) { + self.sourceString = sourceString + self.source = source + self.nodeFactory = JsASTNodeFactory(source: source) + self.commentQuerier = commentQuerier + + context = NodeCreationContext() + mapper = GenericParseTreeContextMapper( + source: source, + commentQuerier: commentQuerier, + nodeFactory: nodeFactory + ) + + super.init() + + configureMappers() + } + + /// Configures mappers in `self.mapper` so they are automatically pushed and + /// popped whenever the rules are entered and exited during visit. + /// + /// Used as a convenience over manually pushing and popping contexts every + /// time a node of significance is entered. + private func configureMappers() { + typealias P = JavaScriptParser + + mapper.addRuleMap( + rule: P.ProgramContext.self, + node: rootNode + ) + mapper.addRuleMap( + rule: P.ClassDeclarationContext.self, + nodeType: JsClassNode.self, + collectComments: true + ) + /* + mapper.addRuleMap( + rule: P.MethodDefinitionContext.self, + nodeType: JsMethodDefinitionNode.self, + collectComments: true + ) + */ + mapper.addRuleMap( + rule: P.FunctionDeclarationContext.self, + nodeType: JsFunctionDeclarationNode.self, + collectComments: true + ) + mapper.addRuleMap( + rule: P.FunctionBodyContext.self, + nodeType: JsFunctionBodyNode.self + ) + } + + override func enterEveryRule(_ ctx: ParserRuleContext) throws { + // print("Enter: \(type(of: ctx)) - \(ctx.getText())") + + mapper.matchEnter(rule: ctx, context: context) + } + + override func exitEveryRule(_ ctx: ParserRuleContext) throws { + mapper.matchExit(rule: ctx, context: context) + + // print("Exit: \(type(of: ctx)) - \(ctx.getText())") + } + + override func enterClassDeclaration(_ ctx: JavaScriptParser.ClassDeclarationContext) { + guard let classNode = context.currentContextNode(as: JsClassNode.self) else { + return + } + guard let className = ctx.identifier() else { + return + } + + // Class name + let identifierNode = nodeFactory.makeIdentifier(from: className) + classNode.addChild(identifierNode) + } + + override func enterClassElement(_ ctx: JavaScriptParser.ClassElementContext) { + guard let classNode = context.currentContextNode(as: JsClassNode.self) else { + return + } + + if ctx.methodDefinition() != nil { + // TODO: Figure out a better way to read the 'static' keyword here; + // TODO: Antlr doesn't generate this getter properly. + var isStatic = !ctx.Static().isEmpty + if !isStatic, let children = ctx.children { + isStatic = children.contains(where: { $0.getText() == "static" }) + } + + context.pushStaticContext(isStatic: isStatic) + } + + // TODO: Add support for different property name declaration types + if let identifier = ctx.propertyName()?.identifierName()?.identifier() { + guard let singleExpression = ctx.singleExpression() else { + return + } + + let node = + nodeFactory + .makeClassPropertyNode( + from: ctx, + identifier: identifier, + expression: singleExpression + ) + + node.precedingComments = commentQuerier.popAllCommentsBefore(rule: ctx) + + classNode.addChild(node) + } + } + + override func exitClassElement(_ ctx: JavaScriptParser.ClassElementContext) { + guard context.currentContextNode(as: JsClassNode.self) != nil else { + return + } + + if ctx.methodDefinition() != nil { + context.popStaticContext() + } + } + + override func enterMethodDefinition(_ ctx: JavaScriptParser.MethodDefinitionContext) { + let methodName = ctx.propertyName()?.identifierName()?.identifier() + + // TODO: Reduce duplication of code here + + // Constructor + if methodName?.getText() == "constructor" { + let methodNode = JsConstructorDefinitionNode() + context.pushContext(node: methodNode) + + nodeFactory.updateSourceLocation(for: methodNode, with: ctx) + methodNode.precedingComments = commentQuerier.popAllCommentsBefore(rule: ctx) + + if let methodName = methodName { + let identifierNode = nodeFactory.makeIdentifier(from: methodName) + methodNode.addChild(identifierNode) + } + + methodNode.signature = functionSignature(from: ctx.formalParameterList()) + methodNode.isStatic = context.isStaticContext + + return + } + + let methodNode = JsMethodDefinitionNode() + context.pushContext(node: methodNode) + + nodeFactory.updateSourceLocation(for: methodNode, with: ctx) + methodNode.precedingComments = commentQuerier.popAllCommentsBefore(rule: ctx) + + if let methodName = methodName { + let identifierNode = nodeFactory.makeIdentifier(from: methodName) + methodNode.addChild(identifierNode) + } + // Getter + if + let getter = ctx.getter(), + let methodName = getter.propertyName()?.identifierName()?.identifier() + { + let identifierNode = nodeFactory.makeIdentifier(from: methodName) + identifierNode.name = "get_\(identifierNode.name)" + + methodNode.addChild(identifierNode) + methodNode.context = .isGetter + } + // Setter + if + let setter = ctx.setter(), + let methodName = setter.propertyName()?.identifierName()?.identifier() + { + let identifierNode = nodeFactory.makeIdentifier(from: methodName) + identifierNode.name = "set_\(identifierNode.name)" + + methodNode.addChild(identifierNode) + methodNode.context = .isSetter + } + + methodNode.signature = functionSignature(from: ctx.formalParameterList()) + methodNode.isStatic = context.isStaticContext + } + + override func exitMethodDefinition(_ ctx: JavaScriptParser.MethodDefinitionContext) { + context.popContext() // JsMethodDefinitionNode | JsConstructorDefinitionNode + } + + override func enterFunctionDeclaration(_ ctx: JavaScriptParser.FunctionDeclarationContext) { + guard let functionNode = context.currentContextNode(as: JsFunctionDeclarationNode.self) else { + return + } + + // If we are within a nested function context, keep the node in the context + // but don't add it; this should be done by AST readers downpipe. + if context.findContextNodeBellow(node: functionNode, as: JsFunctionBodyNode.self) != nil { + functionNode.removeFromParentNode() + } + + guard let functionName = ctx.identifier() else { + return + } + + let identifierNode = nodeFactory.makeIdentifier(from: functionName) + functionNode.addChild(identifierNode) + functionNode.signature = functionSignature(from: ctx.formalParameterList()) + } + + override func enterFunctionBody(_ ctx: JavaScriptParser.FunctionBodyContext) { + guard let node = context.currentContextNode(as: JsFunctionBodyNode.self) else { + return + } + + node.body = ctx + node.comments = commentQuerier.popCommentsOverlapping(rule: ctx) + } + + override func enterVariableStatement(_ ctx: JavaScriptParser.VariableStatementContext) { + guard let contextNode = context.currentContextNode() else { + return + } + guard let variableDeclarationList = ctx.variableDeclarationList() else { + return + } + guard let varModifier = variableDeclarationList.varModifier() else { + return + } + + let variableDeclarationListNode = + nodeFactory.makeVariableDeclarationList( + from: variableDeclarationList, + varModifier: varModifier + ) + + variableDeclarationListNode.precedingComments = commentQuerier.popAllCommentsBefore(rule: ctx) + + for variableDeclaration in variableDeclarationList.variableDeclaration() { + // TODO: Support different assignable types? + guard let identifier = variableDeclaration.assignable()?.identifier() else { + continue + } + + let variableDeclNode = nodeFactory.makeVariableDeclaration( + from: variableDeclaration, + identifier: identifier, + initialExpression: variableDeclaration.singleExpression() + ) + + variableDeclarationListNode.addChild(variableDeclNode) + } + + switch contextNode { + case is JsGlobalContextNode: + contextNode.addChild(variableDeclarationListNode) + default: + break + } + } + + // MARK: - Internals + + func functionSignature(from ctx: JavaScriptParser.FormalParameterListContext?) -> JsFunctionSignature { + func _argument(from ctx: JavaScriptParser.FormalParameterArgContext) -> JsFunctionArgument? { + guard let identifier = ctx.assignable()?.identifier()?.getText() else { + return nil + } + + return .init(identifier: identifier, isVariadic: false) + } + func _argument(from ctx: JavaScriptParser.LastFormalParameterArgContext) -> JsFunctionArgument? { + guard let identifier = _identifier(from: ctx.singleExpression())?.getText() else { + return nil + } + + return .init(identifier: identifier, isVariadic: ctx.Ellipsis() != nil) + } + + var arguments: [JsFunctionArgument] = [] + + if let ctx = ctx { + arguments = ctx.formalParameterArg().compactMap(_argument(from:)) + + if let last = ctx.lastFormalParameterArg(), let argument = _argument(from: last) { + arguments.append(argument) + } + } + + return JsFunctionSignature(arguments: arguments) + } + + private func _identifier(from singleExpression: JavaScriptParser.SingleExpressionContext?) -> JavaScriptParser.IdentifierContext? { + singleExpression.flatMap(_identifier(from:)) + } + + private func _identifier(from singleExpression: JavaScriptParser.SingleExpressionContext) -> JavaScriptParser.IdentifierContext? { + if let result = singleExpression as? JavaScriptParser.IdentifierExpressionContext { + return result.identifier() + } + + return nil + } +} + +private class GenericParseTreeContextMapper { + private var pairs: [Pair] = [] + private var exceptions: [ParserRuleContext.Type] = [] + + private var source: Source + + private var commentQuerier: CommentQuerier + private var nodeFactory: JsASTNodeFactory + + init( + source: Source, + commentQuerier: CommentQuerier, + nodeFactory: JsASTNodeFactory + ) { + self.source = source + self.commentQuerier = commentQuerier + self.nodeFactory = nodeFactory + } + + func addRuleMap( + rule: T.Type, + nodeType: U.Type, + collectComments: Bool = false) { + + assert(match(ruleType: rule) == nil, "Duplicated mapping rule for parser rule context \(rule)") + + pairs.append(.type(rule: rule, nodeType: nodeType, collectComments: collectComments, nil)) + } + + func addRuleMapClosure( + collectComments: Bool = false, + _ closure: @escaping (T, U) -> Void + ) { + assert(match(ruleType: T.self) == nil, "Duplicated mapping rule for parser rule context \(T.self)") + + pairs.append(.type(rule: T.self, nodeType: U.self, collectComments: collectComments, { rule, node in + guard let rule = rule as? T else { + return + } + guard let node = node as? U else { + return + } + + closure(rule, node) + })) + } + + func addRuleMap(rule: T.Type, node: U) { + assert(match(ruleType: rule) == nil, "Duplicated mapping rule for parser rule context \(rule)") + + pairs.append(.instance(rule: rule, node: node)) + } + + func pushTemporaryException(forRuleType ruleType: ParserRuleContext.Type) { + exceptions.append(ruleType) + } + + @discardableResult + func popTemporaryException() -> ParserRuleContext.Type { + exceptions.removeLast() + } + + func matchEnter(rule: ParserRuleContext, context: NodeCreationContext) { + let ruleType = type(of: rule) + guard let nodeType = match(ruleType: ruleType) else { + return + } + + switch nodeType { + case .type(_, let nodeType, let collectComments, let initializer): + let node = nodeType.init() + + nodeFactory.updateSourceLocation(for: node, with: rule) + + if collectComments { + node.precedingComments = commentQuerier.popAllCommentsBefore(rule: rule) + } + + context.pushContext(node: node) + + if let initializer = initializer { + initializer(rule, node) + } + + case .instance(_, let node): + context.pushContext(node: node) + } + } + + func matchExit(rule: ParserRuleContext, context: NodeCreationContext) { + let ruleType = type(of: rule) + guard let pair = match(ruleType: ruleType) else { + return + } + + if let popped = context.popContext() { + switch pair { + case .type(_, let nodeType, _, _): + assert(type(of: popped) == nodeType, "matchExit() did not match context from popContext: \(nodeType) vs \(type(of: popped))") + case .instance(_, let node): + assert(popped === node, "matchExit() did not match context from pop: \(node) vs \(node)") + } + } + } + + private func match(ruleType: ParserRuleContext.Type) -> Pair? { + if exceptions.contains(where: { $0 == ruleType }) { + return nil + } + + return pairs.first { $0.ruleType == ruleType } + } + + private enum Pair { + case type(rule: ParserRuleContext.Type, nodeType: JsInitializableNode.Type, collectComments: Bool, ((ParserRuleContext, JsInitializableNode) -> Void)?) + case instance(rule: ParserRuleContext.Type, node: JsInitializableNode) + + var ruleType: ParserRuleContext.Type { + switch self { + case .type(let rule, _, _, _): + return rule + case .instance(let rule, _): + return rule + } + } + } +} diff --git a/Sources/Frontend/JavaScript/JsParser/JsParserState.swift b/Sources/Frontend/JavaScript/JsParser/JsParserState.swift new file mode 100644 index 000000000..d6691a332 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParser/JsParserState.swift @@ -0,0 +1,30 @@ +import class Antlr4.ANTLRInputStream +import class Antlr4.CommonTokenStream +import class Antlr4.Lexer +import class Antlr4.Parser +import AntlrCommons +import JsParserAntlr + +public typealias JavaScriptParserAntlr = AntlrParser + +/// Describes a parser state for a single `JsParser` instance, with internal +/// fields that are used by the parser. +/// +/// - Note: State instances do not support simultaneous usage across many +/// `JsParser` instances concurrently. +public final class JsParserState { + var parserState = (lexer: JavaScriptLexer.State(), parser: JavaScriptParser.State()) + + public init() { + + } + + public func makeMainParser(input: String) throws -> JavaScriptParserAntlr { + let input = ANTLRInputStream(input) + let lxr = JavaScriptLexer(input, parserState.lexer) + let tokens = CommonTokenStream(lxr) + let parser = try JavaScriptParser(tokens, parserState.parser) + + return JavaScriptParserAntlr(lexer: lxr, parser: parser, tokens: tokens) + } +} diff --git a/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptLexer.swift b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptLexer.swift new file mode 100644 index 000000000..9acc46edc --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptLexer.swift @@ -0,0 +1,894 @@ +// Generated from java-escape by ANTLR 4.11.1 +import Antlr4 + +open class JavaScriptLexer: JavaScriptLexerBase { + + public class State { + public let _ATN: ATN = try! ATNDeserializer().deserialize(_serializedATN) + internal var _decisionToDFA: [DFA] + internal let _sharedContextCache: PredictionContextCache = PredictionContextCache() + public init() { + var decisionToDFA = [DFA]() + let length = _ATN.getNumberOfDecisions() + for i in 0..>'", "'<<'", "'>>>'", "'<'", "'>'", "'<='", "'>='", + "'=='", "'!='", "'==='", "'!=='", "'&'", "'^'", "'|'", "'&&'", "'||'", "'*='", "'/='", + "'%='", "'+='", "'-='", "'<<='", "'>>='", "'>>>='", "'&='", "'^='", "'|='", "'**='", "'=>'", + "'null'", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, "'break'", "'do'", + "'instanceof'", "'typeof'", "'case'", "'else'", "'new'", "'var'", "'catch'", "'finally'", + "'return'", "'void'", "'continue'", "'for'", "'switch'", "'while'", "'debugger'", + "'function'", "'this'", "'with'", "'default'", "'if'", "'throw'", "'delete'", "'in'", + "'try'", "'as'", "'from'", "'class'", "'enum'", "'extends'", "'super'", "'const'", + "'export'", "'import'", "'async'", "'await'", "'yield'", "'implements'", nil, nil, + "'private'", "'public'", "'interface'", "'package'", "'protected'", "'static'", nil, nil, + nil, nil, nil, nil, nil, nil, "'${'", + ] + private static let _SYMBOLIC_NAMES: [String?] = [ + nil, "HashBangLine", "MultiLineComment", "SingleLineComment", "RegularExpressionLiteral", + "OpenBracket", "CloseBracket", "OpenParen", "CloseParen", "OpenBrace", "TemplateCloseBrace", + "CloseBrace", "SemiColon", "Comma", "Assign", "QuestionMark", "QuestionMarkDot", "Colon", + "Ellipsis", "Dot", "PlusPlus", "MinusMinus", "Plus", "Minus", "BitNot", "Not", "Multiply", + "Divide", "Modulus", "Power", "NullCoalesce", "Hashtag", "RightShiftArithmetic", + "LeftShiftArithmetic", "RightShiftLogical", "LessThan", "MoreThan", "LessThanEquals", + "GreaterThanEquals", "Equals_", "NotEquals", "IdentityEquals", "IdentityNotEquals", + "BitAnd", "BitXOr", "BitOr", "And", "Or", "MultiplyAssign", "DivideAssign", "ModulusAssign", + "PlusAssign", "MinusAssign", "LeftShiftArithmeticAssign", "RightShiftArithmeticAssign", + "RightShiftLogicalAssign", "BitAndAssign", "BitXorAssign", "BitOrAssign", "PowerAssign", + "ARROW", "NullLiteral", "BooleanLiteral", "DecimalLiteral", "HexIntegerLiteral", + "OctalIntegerLiteral", "OctalIntegerLiteral2", "BinaryIntegerLiteral", + "BigHexIntegerLiteral", "BigOctalIntegerLiteral", "BigBinaryIntegerLiteral", + "BigDecimalIntegerLiteral", "Break", "Do", "Instanceof", "Typeof", "Case", "Else", "New", + "Var", "Catch", "Finally", "Return", "Void", "Continue", "For", "Switch", "While", + "Debugger", "Function_", "This", "With", "Default", "If", "Throw", "Delete", "In", "Try", + "As", "From", "Class", "Enum", "Extends", "Super", "Const", "Export", "Import", "Async", + "Await", "Yield", "Implements", "StrictLet", "NonStrictLet", "Private", "Public", + "Interface", "Package", "Protected", "Static", "Identifier", "StringLiteral", "BackTick", + "WhiteSpaces", "LineTerminator", "HtmlComment", "CDataComment", "UnexpectedCharacter", + "TemplateStringStartExpression", "TemplateStringAtom", + ] + public static let VOCABULARY = Vocabulary(_LITERAL_NAMES, _SYMBOLIC_NAMES) + + override open func getVocabulary() -> Vocabulary { return JavaScriptLexer.VOCABULARY } + + public required convenience init(_ input: CharStream) { self.init(input, State()) } + + public required init(_ input: CharStream, _ state: State) { + self.state = state + + RuntimeMetaData.checkVersion("4.11.1", RuntimeMetaData.VERSION) + super.init(input) + _interp = LexerATNSimulator(self, _ATN, _decisionToDFA, _sharedContextCache) + } + + override open func getGrammarFileName() -> String { return "JavaScriptLexer.g4" } + + override open func getRuleNames() -> [String] { return JavaScriptLexer.ruleNames } + + override open func getSerializedATN() -> [Int] { return JavaScriptLexer._serializedATN } + + override open func getChannelNames() -> [String] { return JavaScriptLexer.channelNames } + + override open func getModeNames() -> [String] { return JavaScriptLexer.modeNames } + + override open func getATN() -> ATN { return _ATN } + + override open func action(_ _localctx: RuleContext?, _ ruleIndex: Int, _ actionIndex: Int) + throws + { + switch ruleIndex { + case 8: OpenBrace_action((_localctx as RuleContext?), actionIndex) + + case 10: CloseBrace_action((_localctx as RuleContext?), actionIndex) + + case 119: StringLiteral_action((_localctx as RuleContext?), actionIndex) + + case 120: BackTick_action((_localctx as RuleContext?), actionIndex) + + case 126: BackTickInside_action((_localctx as RuleContext?), actionIndex) + + default: break + } + } + private func OpenBrace_action(_ _localctx: RuleContext?, _ actionIndex: Int) { + switch actionIndex { + case 0: self.processOpenBrace() + + default: break + } + } + private func CloseBrace_action(_ _localctx: RuleContext?, _ actionIndex: Int) { + switch actionIndex { + case 1: self.processCloseBrace() + + default: break + } + } + private func StringLiteral_action(_ _localctx: RuleContext?, _ actionIndex: Int) { + switch actionIndex { + case 2: self.processStringLiteral() + + default: break + } + } + private func BackTick_action(_ _localctx: RuleContext?, _ actionIndex: Int) { + switch actionIndex { + case 3: self.increaseTemplateDepth() + + default: break + } + } + private func BackTickInside_action(_ _localctx: RuleContext?, _ actionIndex: Int) { + switch actionIndex { + case 4: self.decreaseTemplateDepth() + + default: break + } + } + override open func sempred(_ _localctx: RuleContext?, _ ruleIndex: Int, _ predIndex: Int) throws + -> Bool + { + switch ruleIndex { + case 0: return try HashBangLine_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 3: + return try RegularExpressionLiteral_sempred( + _localctx?.castdown(RuleContext.self), predIndex) + case 9: + return try TemplateCloseBrace_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 64: + return try OctalIntegerLiteral_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 109: return try Implements_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 110: return try StrictLet_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 111: return try NonStrictLet_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 112: return try Private_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 113: return try Public_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 114: return try Interface_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 115: return try Package_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 116: return try Protected_sempred(_localctx?.castdown(RuleContext.self), predIndex) + case 117: return try Static_sempred(_localctx?.castdown(RuleContext.self), predIndex) + default: return true + } + } + private func HashBangLine_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 0: return self.isStartOfFile() + default: return true + } + } + private func RegularExpressionLiteral_sempred(_ _localctx: RuleContext!, _ predIndex: Int) + throws -> Bool + { + switch predIndex { + case 1: return self.isRegexPossible() + default: return true + } + } + private func TemplateCloseBrace_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws + -> Bool + { + switch predIndex { + case 2: return self.isInTemplateString() + default: return true + } + } + private func OctalIntegerLiteral_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws + -> Bool + { + switch predIndex { + case 3: return !self.isStrictMode() + default: return true + } + } + private func Implements_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 4: return self.isStrictMode() + default: return true + } + } + private func StrictLet_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 5: return self.isStrictMode() + default: return true + } + } + private func NonStrictLet_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 6: return !self.isStrictMode() + default: return true + } + } + private func Private_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 7: return self.isStrictMode() + default: return true + } + } + private func Public_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 8: return self.isStrictMode() + default: return true + } + } + private func Interface_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 9: return self.isStrictMode() + default: return true + } + } + private func Package_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 10: return self.isStrictMode() + default: return true + } + } + private func Protected_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 11: return self.isStrictMode() + default: return true + } + } + private func Static_sempred(_ _localctx: RuleContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 12: return self.isStrictMode() + default: return true + } + } + + static let _serializedATN: [Int] = [ + 4, 0, 128, 1162, 6, -1, 6, -1, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, + 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, + 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, + 18, 2, 19, 7, 19, 2, 20, 7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, + 25, 7, 25, 2, 26, 7, 26, 2, 27, 7, 27, 2, 28, 7, 28, 2, 29, 7, 29, 2, 30, 7, 30, 2, 31, 7, + 31, 2, 32, 7, 32, 2, 33, 7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36, 7, 36, 2, 37, 7, 37, 2, + 38, 7, 38, 2, 39, 7, 39, 2, 40, 7, 40, 2, 41, 7, 41, 2, 42, 7, 42, 2, 43, 7, 43, 2, 44, 7, + 44, 2, 45, 7, 45, 2, 46, 7, 46, 2, 47, 7, 47, 2, 48, 7, 48, 2, 49, 7, 49, 2, 50, 7, 50, 2, + 51, 7, 51, 2, 52, 7, 52, 2, 53, 7, 53, 2, 54, 7, 54, 2, 55, 7, 55, 2, 56, 7, 56, 2, 57, 7, + 57, 2, 58, 7, 58, 2, 59, 7, 59, 2, 60, 7, 60, 2, 61, 7, 61, 2, 62, 7, 62, 2, 63, 7, 63, 2, + 64, 7, 64, 2, 65, 7, 65, 2, 66, 7, 66, 2, 67, 7, 67, 2, 68, 7, 68, 2, 69, 7, 69, 2, 70, 7, + 70, 2, 71, 7, 71, 2, 72, 7, 72, 2, 73, 7, 73, 2, 74, 7, 74, 2, 75, 7, 75, 2, 76, 7, 76, 2, + 77, 7, 77, 2, 78, 7, 78, 2, 79, 7, 79, 2, 80, 7, 80, 2, 81, 7, 81, 2, 82, 7, 82, 2, 83, 7, + 83, 2, 84, 7, 84, 2, 85, 7, 85, 2, 86, 7, 86, 2, 87, 7, 87, 2, 88, 7, 88, 2, 89, 7, 89, 2, + 90, 7, 90, 2, 91, 7, 91, 2, 92, 7, 92, 2, 93, 7, 93, 2, 94, 7, 94, 2, 95, 7, 95, 2, 96, 7, + 96, 2, 97, 7, 97, 2, 98, 7, 98, 2, 99, 7, 99, 2, 100, 7, 100, 2, 101, 7, 101, 2, 102, 7, + 102, 2, 103, 7, 103, 2, 104, 7, 104, 2, 105, 7, 105, 2, 106, 7, 106, 2, 107, 7, 107, 2, 108, + 7, 108, 2, 109, 7, 109, 2, 110, 7, 110, 2, 111, 7, 111, 2, 112, 7, 112, 2, 113, 7, 113, 2, + 114, 7, 114, 2, 115, 7, 115, 2, 116, 7, 116, 2, 117, 7, 117, 2, 118, 7, 118, 2, 119, 7, 119, + 2, 120, 7, 120, 2, 121, 7, 121, 2, 122, 7, 122, 2, 123, 7, 123, 2, 124, 7, 124, 2, 125, 7, + 125, 2, 126, 7, 126, 2, 127, 7, 127, 2, 128, 7, 128, 2, 129, 7, 129, 2, 130, 7, 130, 2, 131, + 7, 131, 2, 132, 7, 132, 2, 133, 7, 133, 2, 134, 7, 134, 2, 135, 7, 135, 2, 136, 7, 136, 2, + 137, 7, 137, 2, 138, 7, 138, 2, 139, 7, 139, 2, 140, 7, 140, 2, 141, 7, 141, 2, 142, 7, 142, + 2, 143, 7, 143, 2, 144, 7, 144, 2, 145, 7, 145, 2, 146, 7, 146, 2, 147, 7, 147, 2, 148, 7, + 148, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 5, 0, 306, 8, 0, 10, 0, 12, 0, 309, 9, 0, 1, 1, 1, 1, 1, + 1, 1, 1, 5, 1, 315, 8, 1, 10, 1, 12, 1, 318, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, + 1, 2, 1, 2, 5, 2, 329, 8, 2, 10, 2, 12, 2, 332, 9, 2, 1, 2, 1, 2, 1, 3, 1, 3, 1, 3, 5, 3, + 339, 8, 3, 10, 3, 12, 3, 342, 9, 3, 1, 3, 1, 3, 1, 3, 5, 3, 347, 8, 3, 10, 3, 12, 3, 350, 9, + 3, 1, 4, 1, 4, 1, 5, 1, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1, 8, 1, 8, 1, 8, 1, 9, 1, 9, 1, 9, 1, 9, + 1, 9, 1, 10, 1, 10, 1, 10, 1, 11, 1, 11, 1, 12, 1, 12, 1, 13, 1, 13, 1, 14, 1, 14, 1, 15, 1, + 15, 1, 15, 1, 16, 1, 16, 1, 17, 1, 17, 1, 17, 1, 17, 1, 18, 1, 18, 1, 19, 1, 19, 1, 19, 1, + 20, 1, 20, 1, 20, 1, 21, 1, 21, 1, 22, 1, 22, 1, 23, 1, 23, 1, 24, 1, 24, 1, 25, 1, 25, 1, + 26, 1, 26, 1, 27, 1, 27, 1, 28, 1, 28, 1, 28, 1, 29, 1, 29, 1, 29, 1, 30, 1, 30, 1, 31, 1, + 31, 1, 31, 1, 32, 1, 32, 1, 32, 1, 33, 1, 33, 1, 33, 1, 33, 1, 34, 1, 34, 1, 35, 1, 35, 1, + 36, 1, 36, 1, 36, 1, 37, 1, 37, 1, 37, 1, 38, 1, 38, 1, 38, 1, 39, 1, 39, 1, 39, 1, 40, 1, + 40, 1, 40, 1, 40, 1, 41, 1, 41, 1, 41, 1, 41, 1, 42, 1, 42, 1, 43, 1, 43, 1, 44, 1, 44, 1, + 45, 1, 45, 1, 45, 1, 46, 1, 46, 1, 46, 1, 47, 1, 47, 1, 47, 1, 48, 1, 48, 1, 48, 1, 49, 1, + 49, 1, 49, 1, 50, 1, 50, 1, 50, 1, 51, 1, 51, 1, 51, 1, 52, 1, 52, 1, 52, 1, 52, 1, 53, 1, + 53, 1, 53, 1, 53, 1, 54, 1, 54, 1, 54, 1, 54, 1, 54, 1, 55, 1, 55, 1, 55, 1, 56, 1, 56, 1, + 56, 1, 57, 1, 57, 1, 57, 1, 58, 1, 58, 1, 58, 1, 58, 1, 59, 1, 59, 1, 59, 1, 60, 1, 60, 1, + 60, 1, 60, 1, 60, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 1, 61, 3, 61, 522, + 8, 61, 1, 62, 1, 62, 1, 62, 1, 62, 5, 62, 528, 8, 62, 10, 62, 12, 62, 531, 9, 62, 1, 62, 3, + 62, 534, 8, 62, 1, 62, 1, 62, 1, 62, 5, 62, 539, 8, 62, 10, 62, 12, 62, 542, 9, 62, 1, 62, + 3, 62, 545, 8, 62, 1, 62, 1, 62, 3, 62, 549, 8, 62, 3, 62, 551, 8, 62, 1, 63, 1, 63, 1, 63, + 1, 63, 5, 63, 557, 8, 63, 10, 63, 12, 63, 560, 9, 63, 1, 64, 1, 64, 4, 64, 564, 8, 64, 11, + 64, 12, 64, 565, 1, 64, 1, 64, 1, 65, 1, 65, 1, 65, 1, 65, 5, 65, 574, 8, 65, 10, 65, 12, + 65, 577, 9, 65, 1, 66, 1, 66, 1, 66, 1, 66, 5, 66, 583, 8, 66, 10, 66, 12, 66, 586, 9, 66, + 1, 67, 1, 67, 1, 67, 1, 67, 5, 67, 592, 8, 67, 10, 67, 12, 67, 595, 9, 67, 1, 67, 1, 67, 1, + 68, 1, 68, 1, 68, 1, 68, 5, 68, 603, 8, 68, 10, 68, 12, 68, 606, 9, 68, 1, 68, 1, 68, 1, 69, + 1, 69, 1, 69, 1, 69, 5, 69, 614, 8, 69, 10, 69, 12, 69, 617, 9, 69, 1, 69, 1, 69, 1, 70, 1, + 70, 1, 70, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 71, 1, 72, 1, 72, 1, 72, 1, 73, 1, 73, 1, + 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 73, 1, 74, 1, 74, 1, 74, 1, 74, 1, + 74, 1, 74, 1, 74, 1, 75, 1, 75, 1, 75, 1, 75, 1, 75, 1, 76, 1, 76, 1, 76, 1, 76, 1, 76, 1, + 77, 1, 77, 1, 77, 1, 77, 1, 78, 1, 78, 1, 78, 1, 78, 1, 79, 1, 79, 1, 79, 1, 79, 1, 79, 1, + 79, 1, 80, 1, 80, 1, 80, 1, 80, 1, 80, 1, 80, 1, 80, 1, 80, 1, 81, 1, 81, 1, 81, 1, 81, 1, + 81, 1, 81, 1, 81, 1, 82, 1, 82, 1, 82, 1, 82, 1, 82, 1, 83, 1, 83, 1, 83, 1, 83, 1, 83, 1, + 83, 1, 83, 1, 83, 1, 83, 1, 84, 1, 84, 1, 84, 1, 84, 1, 85, 1, 85, 1, 85, 1, 85, 1, 85, 1, + 85, 1, 85, 1, 86, 1, 86, 1, 86, 1, 86, 1, 86, 1, 86, 1, 87, 1, 87, 1, 87, 1, 87, 1, 87, 1, + 87, 1, 87, 1, 87, 1, 87, 1, 88, 1, 88, 1, 88, 1, 88, 1, 88, 1, 88, 1, 88, 1, 88, 1, 88, 1, + 89, 1, 89, 1, 89, 1, 89, 1, 89, 1, 90, 1, 90, 1, 90, 1, 90, 1, 90, 1, 91, 1, 91, 1, 91, 1, + 91, 1, 91, 1, 91, 1, 91, 1, 91, 1, 92, 1, 92, 1, 92, 1, 93, 1, 93, 1, 93, 1, 93, 1, 93, 1, + 93, 1, 94, 1, 94, 1, 94, 1, 94, 1, 94, 1, 94, 1, 94, 1, 95, 1, 95, 1, 95, 1, 96, 1, 96, 1, + 96, 1, 96, 1, 97, 1, 97, 1, 97, 1, 98, 1, 98, 1, 98, 1, 98, 1, 98, 1, 99, 1, 99, 1, 99, 1, + 99, 1, 99, 1, 99, 1, 100, 1, 100, 1, 100, 1, 100, 1, 100, 1, 101, 1, 101, 1, 101, 1, 101, 1, + 101, 1, 101, 1, 101, 1, 101, 1, 102, 1, 102, 1, 102, 1, 102, 1, 102, 1, 102, 1, 103, 1, 103, + 1, 103, 1, 103, 1, 103, 1, 103, 1, 104, 1, 104, 1, 104, 1, 104, 1, 104, 1, 104, 1, 104, 1, + 105, 1, 105, 1, 105, 1, 105, 1, 105, 1, 105, 1, 105, 1, 106, 1, 106, 1, 106, 1, 106, 1, 106, + 1, 106, 1, 107, 1, 107, 1, 107, 1, 107, 1, 107, 1, 107, 1, 108, 1, 108, 1, 108, 1, 108, 1, + 108, 1, 108, 1, 109, 1, 109, 1, 109, 1, 109, 1, 109, 1, 109, 1, 109, 1, 109, 1, 109, 1, 109, + 1, 109, 1, 109, 1, 109, 1, 110, 1, 110, 1, 110, 1, 110, 1, 110, 1, 110, 1, 111, 1, 111, 1, + 111, 1, 111, 1, 111, 1, 111, 1, 112, 1, 112, 1, 112, 1, 112, 1, 112, 1, 112, 1, 112, 1, 112, + 1, 112, 1, 112, 1, 113, 1, 113, 1, 113, 1, 113, 1, 113, 1, 113, 1, 113, 1, 113, 1, 113, 1, + 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, 1, 114, + 1, 115, 1, 115, 1, 115, 1, 115, 1, 115, 1, 115, 1, 115, 1, 115, 1, 115, 1, 115, 1, 116, 1, + 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 116, 1, 117, + 1, 117, 1, 117, 1, 117, 1, 117, 1, 117, 1, 117, 1, 117, 1, 117, 1, 118, 1, 118, 5, 118, 940, + 8, 118, 10, 118, 12, 118, 943, 9, 118, 1, 119, 1, 119, 5, 119, 947, 8, 119, 10, 119, 12, + 119, 950, 9, 119, 1, 119, 1, 119, 1, 119, 5, 119, 955, 8, 119, 10, 119, 12, 119, 958, 9, + 119, 1, 119, 3, 119, 961, 8, 119, 1, 119, 1, 119, 1, 120, 1, 120, 1, 120, 1, 120, 1, 120, 1, + 121, 4, 121, 971, 8, 121, 11, 121, 12, 121, 972, 1, 121, 1, 121, 1, 122, 1, 122, 1, 122, 1, + 122, 1, 123, 1, 123, 1, 123, 1, 123, 1, 123, 1, 123, 5, 123, 987, 8, 123, 10, 123, 12, 123, + 990, 9, 123, 1, 123, 1, 123, 1, 123, 1, 123, 1, 123, 1, 123, 1, 124, 1, 124, 1, 124, 1, 124, + 1, 124, 1, 124, 1, 124, 1, 124, 1, 124, 1, 124, 1, 124, 5, 124, 1009, 8, 124, 10, 124, 12, + 124, 1012, 9, 124, 1, 124, 1, 124, 1, 124, 1, 124, 1, 124, 1, 124, 1, 125, 1, 125, 1, 125, + 1, 125, 1, 126, 1, 126, 1, 126, 1, 126, 1, 126, 1, 126, 1, 127, 1, 127, 1, 127, 1, 127, 1, + 127, 1, 128, 1, 128, 1, 129, 1, 129, 1, 129, 1, 129, 3, 129, 1041, 8, 129, 1, 130, 1, 130, + 1, 130, 1, 130, 3, 130, 1047, 8, 130, 1, 131, 1, 131, 1, 131, 1, 131, 1, 131, 3, 131, 1054, + 8, 131, 1, 132, 1, 132, 3, 132, 1058, 8, 132, 1, 133, 1, 133, 1, 133, 1, 133, 1, 134, 1, + 134, 1, 134, 1, 134, 1, 134, 1, 134, 1, 134, 1, 134, 1, 134, 1, 134, 4, 134, 1074, 8, 134, + 11, 134, 12, 134, 1075, 1, 134, 1, 134, 3, 134, 1080, 8, 134, 1, 135, 1, 135, 1, 135, 4, + 135, 1085, 8, 135, 11, 135, 12, 135, 1086, 1, 135, 1, 135, 1, 136, 1, 136, 1, 137, 1, 137, + 1, 138, 1, 138, 3, 138, 1097, 8, 138, 1, 139, 1, 139, 1, 139, 1, 140, 1, 140, 1, 141, 1, + 141, 1, 141, 5, 141, 1107, 8, 141, 10, 141, 12, 141, 1110, 9, 141, 3, 141, 1112, 8, 141, 1, + 142, 1, 142, 3, 142, 1116, 8, 142, 1, 142, 4, 142, 1119, 8, 142, 11, 142, 12, 142, 1120, 1, + 143, 1, 143, 3, 143, 1125, 8, 143, 1, 144, 1, 144, 1, 144, 3, 144, 1130, 8, 144, 1, 145, 1, + 145, 1, 145, 1, 145, 5, 145, 1136, 8, 145, 10, 145, 12, 145, 1139, 9, 145, 1, 145, 3, 145, + 1142, 8, 145, 1, 146, 1, 146, 1, 146, 1, 146, 5, 146, 1148, 8, 146, 10, 146, 12, 146, 1151, + 9, 146, 1, 146, 3, 146, 1154, 8, 146, 1, 147, 1, 147, 3, 147, 1158, 8, 147, 1, 148, 1, 148, + 1, 148, 3, 316, 988, 1010, 0, 149, 2, 1, 4, 2, 6, 3, 8, 4, 10, 5, 12, 6, 14, 7, 16, 8, 18, + 9, 20, 10, 22, 11, 24, 12, 26, 13, 28, 14, 30, 15, 32, 16, 34, 17, 36, 18, 38, 19, 40, 20, + 42, 21, 44, 22, 46, 23, 48, 24, 50, 25, 52, 26, 54, 27, 56, 28, 58, 29, 60, 30, 62, 31, 64, + 32, 66, 33, 68, 34, 70, 35, 72, 36, 74, 37, 76, 38, 78, 39, 80, 40, 82, 41, 84, 42, 86, 43, + 88, 44, 90, 45, 92, 46, 94, 47, 96, 48, 98, 49, 100, 50, 102, 51, 104, 52, 106, 53, 108, 54, + 110, 55, 112, 56, 114, 57, 116, 58, 118, 59, 120, 60, 122, 61, 124, 62, 126, 63, 128, 64, + 130, 65, 132, 66, 134, 67, 136, 68, 138, 69, 140, 70, 142, 71, 144, 72, 146, 73, 148, 74, + 150, 75, 152, 76, 154, 77, 156, 78, 158, 79, 160, 80, 162, 81, 164, 82, 166, 83, 168, 84, + 170, 85, 172, 86, 174, 87, 176, 88, 178, 89, 180, 90, 182, 91, 184, 92, 186, 93, 188, 94, + 190, 95, 192, 96, 194, 97, 196, 98, 198, 99, 200, 100, 202, 101, 204, 102, 206, 103, 208, + 104, 210, 105, 212, 106, 214, 107, 216, 108, 218, 109, 220, 110, 222, 111, 224, 112, 226, + 113, 228, 114, 230, 115, 232, 116, 234, 117, 236, 118, 238, 119, 240, 120, 242, 121, 244, + 122, 246, 123, 248, 124, 250, 125, 252, 126, 254, 0, 256, 127, 258, 128, 260, 0, 262, 0, + 264, 0, 266, 0, 268, 0, 270, 0, 272, 0, 274, 0, 276, 0, 278, 0, 280, 0, 282, 0, 284, 0, 286, + 0, 288, 0, 290, 0, 292, 0, 294, 0, 296, 0, 298, 0, 2, 0, 1, 27, 3, 0, 10, 10, 13, 13, 8232, + 8233, 1, 0, 48, 57, 2, 0, 48, 57, 95, 95, 2, 0, 88, 88, 120, 120, 3, 0, 48, 57, 65, 70, 97, + 102, 1, 0, 48, 55, 2, 0, 79, 79, 111, 111, 2, 0, 48, 55, 95, 95, 2, 0, 66, 66, 98, 98, 1, 0, + 48, 49, 2, 0, 48, 49, 95, 95, 4, 0, 9, 9, 11, 12, 32, 32, 160, 160, 1, 0, 96, 96, 4, 0, 10, + 10, 13, 13, 34, 34, 92, 92, 4, 0, 10, 10, 13, 13, 39, 39, 92, 92, 9, 0, 34, 34, 39, 39, 92, + 92, 98, 98, 102, 102, 110, 110, 114, 114, 116, 116, 118, 118, 12, 0, 10, 10, 13, 13, 34, 34, + 39, 39, 48, 57, 92, 92, 98, 98, 102, 102, 110, 110, 114, 114, 116, 118, 120, 120, 3, 0, 48, + 57, 117, 117, 120, 120, 4, 0, 48, 57, 65, 70, 95, 95, 97, 102, 1, 0, 49, 57, 2, 0, 69, 69, + 101, 101, 2, 0, 43, 43, 45, 45, 397, 0, 48, 57, 95, 95, 768, 879, 1155, 1159, 1425, 1469, + 1471, 1471, 1473, 1474, 1476, 1477, 1479, 1479, 1552, 1562, 1611, 1641, 1648, 1648, 1750, + 1756, 1759, 1764, 1767, 1768, 1770, 1773, 1776, 1785, 1809, 1809, 1840, 1866, 1958, 1968, + 1984, 1993, 2027, 2035, 2045, 2045, 2070, 2073, 2075, 2083, 2085, 2087, 2089, 2093, 2137, + 2139, 2200, 2207, 2250, 2273, 2275, 2306, 2362, 2362, 2364, 2364, 2369, 2376, 2381, 2381, + 2385, 2391, 2402, 2403, 2406, 2415, 2433, 2433, 2492, 2492, 2497, 2500, 2509, 2509, 2530, + 2531, 2534, 2543, 2558, 2558, 2561, 2562, 2620, 2620, 2625, 2626, 2631, 2632, 2635, 2637, + 2641, 2641, 2662, 2673, 2677, 2677, 2689, 2690, 2748, 2748, 2753, 2757, 2759, 2760, 2765, + 2765, 2786, 2787, 2790, 2799, 2810, 2815, 2817, 2817, 2876, 2876, 2879, 2879, 2881, 2884, + 2893, 2893, 2901, 2902, 2914, 2915, 2918, 2927, 2946, 2946, 3008, 3008, 3021, 3021, 3046, + 3055, 3072, 3072, 3076, 3076, 3132, 3132, 3134, 3136, 3142, 3144, 3146, 3149, 3157, 3158, + 3170, 3171, 3174, 3183, 3201, 3201, 3260, 3260, 3263, 3263, 3270, 3270, 3276, 3277, 3298, + 3299, 3302, 3311, 3328, 3329, 3387, 3388, 3393, 3396, 3405, 3405, 3426, 3427, 3430, 3439, + 3457, 3457, 3530, 3530, 3538, 3540, 3542, 3542, 3558, 3567, 3633, 3633, 3636, 3642, 3655, + 3662, 3664, 3673, 3761, 3761, 3764, 3772, 3784, 3789, 3792, 3801, 3864, 3865, 3872, 3881, + 3893, 3893, 3895, 3895, 3897, 3897, 3953, 3966, 3968, 3972, 3974, 3975, 3981, 3991, 3993, + 4028, 4038, 4038, 4141, 4144, 4146, 4151, 4153, 4154, 4157, 4158, 4160, 4169, 4184, 4185, + 4190, 4192, 4209, 4212, 4226, 4226, 4229, 4230, 4237, 4237, 4240, 4249, 4253, 4253, 4957, + 4959, 5906, 5908, 5938, 5939, 5970, 5971, 6002, 6003, 6068, 6069, 6071, 6077, 6086, 6086, + 6089, 6099, 6109, 6109, 6112, 6121, 6155, 6157, 6159, 6169, 6277, 6278, 6313, 6313, 6432, + 6434, 6439, 6440, 6450, 6450, 6457, 6459, 6470, 6479, 6608, 6617, 6679, 6680, 6683, 6683, + 6742, 6742, 6744, 6750, 6752, 6752, 6754, 6754, 6757, 6764, 6771, 6780, 6783, 6793, 6800, + 6809, 6832, 6845, 6847, 6862, 6912, 6915, 6964, 6964, 6966, 6970, 6972, 6972, 6978, 6978, + 6992, 7001, 7019, 7027, 7040, 7041, 7074, 7077, 7080, 7081, 7083, 7085, 7088, 7097, 7142, + 7142, 7144, 7145, 7149, 7149, 7151, 7153, 7212, 7219, 7222, 7223, 7232, 7241, 7248, 7257, + 7376, 7378, 7380, 7392, 7394, 7400, 7405, 7405, 7412, 7412, 7416, 7417, 7616, 7679, 8204, + 8205, 8255, 8256, 8276, 8276, 8400, 8412, 8417, 8417, 8421, 8432, 11503, 11505, 11647, + 11647, 11744, 11775, 12330, 12333, 12441, 12442, 42528, 42537, 42607, 42607, 42612, 42621, + 42654, 42655, 42736, 42737, 43010, 43010, 43014, 43014, 43019, 43019, 43045, 43046, 43052, + 43052, 43204, 43205, 43216, 43225, 43232, 43249, 43263, 43273, 43302, 43309, 43335, 43345, + 43392, 43394, 43443, 43443, 43446, 43449, 43452, 43453, 43472, 43481, 43493, 43493, 43504, + 43513, 43561, 43566, 43569, 43570, 43573, 43574, 43587, 43587, 43596, 43596, 43600, 43609, + 43644, 43644, 43696, 43696, 43698, 43700, 43703, 43704, 43710, 43711, 43713, 43713, 43756, + 43757, 43766, 43766, 44005, 44005, 44008, 44008, 44013, 44013, 44016, 44025, 64286, 64286, + 65024, 65039, 65056, 65071, 65075, 65076, 65101, 65103, 65296, 65305, 65343, 65343, 66045, + 66045, 66272, 66272, 66422, 66426, 66720, 66729, 68097, 68099, 68101, 68102, 68108, 68111, + 68152, 68154, 68159, 68159, 68325, 68326, 68900, 68903, 68912, 68921, 69291, 69292, 69446, + 69456, 69506, 69509, 69633, 69633, 69688, 69702, 69734, 69744, 69747, 69748, 69759, 69761, + 69811, 69814, 69817, 69818, 69826, 69826, 69872, 69881, 69888, 69890, 69927, 69931, 69933, + 69940, 69942, 69951, 70003, 70003, 70016, 70017, 70070, 70078, 70089, 70092, 70095, 70105, + 70191, 70193, 70196, 70196, 70198, 70199, 70206, 70206, 70367, 70367, 70371, 70378, 70384, + 70393, 70400, 70401, 70459, 70460, 70464, 70464, 70502, 70508, 70512, 70516, 70712, 70719, + 70722, 70724, 70726, 70726, 70736, 70745, 70750, 70750, 70835, 70840, 70842, 70842, 70847, + 70848, 70850, 70851, 70864, 70873, 71090, 71093, 71100, 71101, 71103, 71104, 71132, 71133, + 71219, 71226, 71229, 71229, 71231, 71232, 71248, 71257, 71339, 71339, 71341, 71341, 71344, + 71349, 71351, 71351, 71360, 71369, 71453, 71455, 71458, 71461, 71463, 71467, 71472, 71481, + 71727, 71735, 71737, 71738, 71904, 71913, 71995, 71996, 71998, 71998, 72003, 72003, 72016, + 72025, 72148, 72151, 72154, 72155, 72160, 72160, 72193, 72202, 72243, 72248, 72251, 72254, + 72263, 72263, 72273, 72278, 72281, 72283, 72330, 72342, 72344, 72345, 72752, 72758, 72760, + 72765, 72767, 72767, 72784, 72793, 72850, 72871, 72874, 72880, 72882, 72883, 72885, 72886, + 73009, 73014, 73018, 73018, 73020, 73021, 73023, 73029, 73031, 73031, 73040, 73049, 73104, + 73105, 73109, 73109, 73111, 73111, 73120, 73129, 73459, 73460, 92768, 92777, 92864, 92873, + 92912, 92916, 92976, 92982, 93008, 93017, 94031, 94031, 94095, 94098, 94180, 94180, 113821, + 113822, 118528, 118573, 118576, 118598, 119143, 119145, 119163, 119170, 119173, 119179, + 119210, 119213, 119362, 119364, 120782, 120831, 121344, 121398, 121403, 121452, 121461, + 121461, 121476, 121476, 121499, 121503, 121505, 121519, 122880, 122886, 122888, 122904, + 122907, 122913, 122915, 122916, 122918, 122922, 123184, 123190, 123200, 123209, 123566, + 123566, 123628, 123641, 125136, 125142, 125252, 125258, 125264, 125273, 130032, 130041, + 917760, 917999, 650, 0, 36, 36, 65, 90, 95, 95, 97, 122, 170, 170, 181, 181, 186, 186, 192, + 214, 216, 246, 248, 705, 710, 721, 736, 740, 748, 748, 750, 750, 880, 884, 886, 887, 890, + 893, 895, 895, 902, 902, 904, 906, 908, 908, 910, 929, 931, 1013, 1015, 1153, 1162, 1327, + 1329, 1366, 1369, 1369, 1376, 1416, 1488, 1514, 1519, 1522, 1568, 1610, 1646, 1647, 1649, + 1747, 1749, 1749, 1765, 1766, 1774, 1775, 1786, 1788, 1791, 1791, 1808, 1808, 1810, 1839, + 1869, 1957, 1969, 1969, 1994, 2026, 2036, 2037, 2042, 2042, 2048, 2069, 2074, 2074, 2084, + 2084, 2088, 2088, 2112, 2136, 2144, 2154, 2160, 2183, 2185, 2190, 2208, 2249, 2308, 2361, + 2365, 2365, 2384, 2384, 2392, 2401, 2417, 2432, 2437, 2444, 2447, 2448, 2451, 2472, 2474, + 2480, 2482, 2482, 2486, 2489, 2493, 2493, 2510, 2510, 2524, 2525, 2527, 2529, 2544, 2545, + 2556, 2556, 2565, 2570, 2575, 2576, 2579, 2600, 2602, 2608, 2610, 2611, 2613, 2614, 2616, + 2617, 2649, 2652, 2654, 2654, 2674, 2676, 2693, 2701, 2703, 2705, 2707, 2728, 2730, 2736, + 2738, 2739, 2741, 2745, 2749, 2749, 2768, 2768, 2784, 2785, 2809, 2809, 2821, 2828, 2831, + 2832, 2835, 2856, 2858, 2864, 2866, 2867, 2869, 2873, 2877, 2877, 2908, 2909, 2911, 2913, + 2929, 2929, 2947, 2947, 2949, 2954, 2958, 2960, 2962, 2965, 2969, 2970, 2972, 2972, 2974, + 2975, 2979, 2980, 2984, 2986, 2990, 3001, 3024, 3024, 3077, 3084, 3086, 3088, 3090, 3112, + 3114, 3129, 3133, 3133, 3160, 3162, 3165, 3165, 3168, 3169, 3200, 3200, 3205, 3212, 3214, + 3216, 3218, 3240, 3242, 3251, 3253, 3257, 3261, 3261, 3293, 3294, 3296, 3297, 3313, 3314, + 3332, 3340, 3342, 3344, 3346, 3386, 3389, 3389, 3406, 3406, 3412, 3414, 3423, 3425, 3450, + 3455, 3461, 3478, 3482, 3505, 3507, 3515, 3517, 3517, 3520, 3526, 3585, 3632, 3634, 3635, + 3648, 3654, 3713, 3714, 3716, 3716, 3718, 3722, 3724, 3747, 3749, 3749, 3751, 3760, 3762, + 3763, 3773, 3773, 3776, 3780, 3782, 3782, 3804, 3807, 3840, 3840, 3904, 3911, 3913, 3948, + 3976, 3980, 4096, 4138, 4159, 4159, 4176, 4181, 4186, 4189, 4193, 4193, 4197, 4198, 4206, + 4208, 4213, 4225, 4238, 4238, 4256, 4293, 4295, 4295, 4301, 4301, 4304, 4346, 4348, 4680, + 4682, 4685, 4688, 4694, 4696, 4696, 4698, 4701, 4704, 4744, 4746, 4749, 4752, 4784, 4786, + 4789, 4792, 4798, 4800, 4800, 4802, 4805, 4808, 4822, 4824, 4880, 4882, 4885, 4888, 4954, + 4992, 5007, 5024, 5109, 5112, 5117, 5121, 5740, 5743, 5759, 5761, 5786, 5792, 5866, 5873, + 5880, 5888, 5905, 5919, 5937, 5952, 5969, 5984, 5996, 5998, 6000, 6016, 6067, 6103, 6103, + 6108, 6108, 6176, 6264, 6272, 6276, 6279, 6312, 6314, 6314, 6320, 6389, 6400, 6430, 6480, + 6509, 6512, 6516, 6528, 6571, 6576, 6601, 6656, 6678, 6688, 6740, 6823, 6823, 6917, 6963, + 6981, 6988, 7043, 7072, 7086, 7087, 7098, 7141, 7168, 7203, 7245, 7247, 7258, 7293, 7296, + 7304, 7312, 7354, 7357, 7359, 7401, 7404, 7406, 7411, 7413, 7414, 7418, 7418, 7424, 7615, + 7680, 7957, 7960, 7965, 7968, 8005, 8008, 8013, 8016, 8023, 8025, 8025, 8027, 8027, 8029, + 8029, 8031, 8061, 8064, 8116, 8118, 8124, 8126, 8126, 8130, 8132, 8134, 8140, 8144, 8147, + 8150, 8155, 8160, 8172, 8178, 8180, 8182, 8188, 8305, 8305, 8319, 8319, 8336, 8348, 8450, + 8450, 8455, 8455, 8458, 8467, 8469, 8469, 8473, 8477, 8484, 8484, 8486, 8486, 8488, 8488, + 8490, 8493, 8495, 8505, 8508, 8511, 8517, 8521, 8526, 8526, 8579, 8580, 11264, 11492, 11499, + 11502, 11506, 11507, 11520, 11557, 11559, 11559, 11565, 11565, 11568, 11623, 11631, 11631, + 11648, 11670, 11680, 11686, 11688, 11694, 11696, 11702, 11704, 11710, 11712, 11718, 11720, + 11726, 11728, 11734, 11736, 11742, 11823, 11823, 12293, 12294, 12337, 12341, 12347, 12348, + 12353, 12438, 12445, 12447, 12449, 12538, 12540, 12543, 12549, 12591, 12593, 12686, 12704, + 12735, 12784, 12799, 13312, 19903, 19968, 42124, 42192, 42237, 42240, 42508, 42512, 42527, + 42538, 42539, 42560, 42606, 42623, 42653, 42656, 42725, 42775, 42783, 42786, 42888, 42891, + 42954, 42960, 42961, 42963, 42963, 42965, 42969, 42994, 43009, 43011, 43013, 43015, 43018, + 43020, 43042, 43072, 43123, 43138, 43187, 43250, 43255, 43259, 43259, 43261, 43262, 43274, + 43301, 43312, 43334, 43360, 43388, 43396, 43442, 43471, 43471, 43488, 43492, 43494, 43503, + 43514, 43518, 43520, 43560, 43584, 43586, 43588, 43595, 43616, 43638, 43642, 43642, 43646, + 43695, 43697, 43697, 43701, 43702, 43705, 43709, 43712, 43712, 43714, 43714, 43739, 43741, + 43744, 43754, 43762, 43764, 43777, 43782, 43785, 43790, 43793, 43798, 43808, 43814, 43816, + 43822, 43824, 43866, 43868, 43881, 43888, 44002, 44032, 55203, 55216, 55238, 55243, 55291, + 63744, 64109, 64112, 64217, 64256, 64262, 64275, 64279, 64285, 64285, 64287, 64296, 64298, + 64310, 64312, 64316, 64318, 64318, 64320, 64321, 64323, 64324, 64326, 64433, 64467, 64829, + 64848, 64911, 64914, 64967, 65008, 65019, 65136, 65140, 65142, 65276, 65313, 65338, 65345, + 65370, 65382, 65470, 65474, 65479, 65482, 65487, 65490, 65495, 65498, 65500, 65536, 65547, + 65549, 65574, 65576, 65594, 65596, 65597, 65599, 65613, 65616, 65629, 65664, 65786, 66176, + 66204, 66208, 66256, 66304, 66335, 66349, 66368, 66370, 66377, 66384, 66421, 66432, 66461, + 66464, 66499, 66504, 66511, 66560, 66717, 66736, 66771, 66776, 66811, 66816, 66855, 66864, + 66915, 66928, 66938, 66940, 66954, 66956, 66962, 66964, 66965, 66967, 66977, 66979, 66993, + 66995, 67001, 67003, 67004, 67072, 67382, 67392, 67413, 67424, 67431, 67456, 67461, 67463, + 67504, 67506, 67514, 67584, 67589, 67592, 67592, 67594, 67637, 67639, 67640, 67644, 67644, + 67647, 67669, 67680, 67702, 67712, 67742, 67808, 67826, 67828, 67829, 67840, 67861, 67872, + 67897, 67968, 68023, 68030, 68031, 68096, 68096, 68112, 68115, 68117, 68119, 68121, 68149, + 68192, 68220, 68224, 68252, 68288, 68295, 68297, 68324, 68352, 68405, 68416, 68437, 68448, + 68466, 68480, 68497, 68608, 68680, 68736, 68786, 68800, 68850, 68864, 68899, 69248, 69289, + 69296, 69297, 69376, 69404, 69415, 69415, 69424, 69445, 69488, 69505, 69552, 69572, 69600, + 69622, 69635, 69687, 69745, 69746, 69749, 69749, 69763, 69807, 69840, 69864, 69891, 69926, + 69956, 69956, 69959, 69959, 69968, 70002, 70006, 70006, 70019, 70066, 70081, 70084, 70106, + 70106, 70108, 70108, 70144, 70161, 70163, 70187, 70272, 70278, 70280, 70280, 70282, 70285, + 70287, 70301, 70303, 70312, 70320, 70366, 70405, 70412, 70415, 70416, 70419, 70440, 70442, + 70448, 70450, 70451, 70453, 70457, 70461, 70461, 70480, 70480, 70493, 70497, 70656, 70708, + 70727, 70730, 70751, 70753, 70784, 70831, 70852, 70853, 70855, 70855, 71040, 71086, 71128, + 71131, 71168, 71215, 71236, 71236, 71296, 71338, 71352, 71352, 71424, 71450, 71488, 71494, + 71680, 71723, 71840, 71903, 71935, 71942, 71945, 71945, 71948, 71955, 71957, 71958, 71960, + 71983, 71999, 71999, 72001, 72001, 72096, 72103, 72106, 72144, 72161, 72161, 72163, 72163, + 72192, 72192, 72203, 72242, 72250, 72250, 72272, 72272, 72284, 72329, 72349, 72349, 72368, + 72440, 72704, 72712, 72714, 72750, 72768, 72768, 72818, 72847, 72960, 72966, 72968, 72969, + 72971, 73008, 73030, 73030, 73056, 73061, 73063, 73064, 73066, 73097, 73112, 73112, 73440, + 73458, 73648, 73648, 73728, 74649, 74880, 75075, 77712, 77808, 77824, 78894, 82944, 83526, + 92160, 92728, 92736, 92766, 92784, 92862, 92880, 92909, 92928, 92975, 92992, 92995, 93027, + 93047, 93053, 93071, 93760, 93823, 93952, 94026, 94032, 94032, 94099, 94111, 94176, 94177, + 94179, 94179, 94208, 100343, 100352, 101589, 101632, 101640, 110576, 110579, 110581, 110587, + 110589, 110590, 110592, 110882, 110928, 110930, 110948, 110951, 110960, 111355, 113664, + 113770, 113776, 113788, 113792, 113800, 113808, 113817, 119808, 119892, 119894, 119964, + 119966, 119967, 119970, 119970, 119973, 119974, 119977, 119980, 119982, 119993, 119995, + 119995, 119997, 120003, 120005, 120069, 120071, 120074, 120077, 120084, 120086, 120092, + 120094, 120121, 120123, 120126, 120128, 120132, 120134, 120134, 120138, 120144, 120146, + 120485, 120488, 120512, 120514, 120538, 120540, 120570, 120572, 120596, 120598, 120628, + 120630, 120654, 120656, 120686, 120688, 120712, 120714, 120744, 120746, 120770, 120772, + 120779, 122624, 122654, 123136, 123180, 123191, 123197, 123214, 123214, 123536, 123565, + 123584, 123627, 124896, 124902, 124904, 124907, 124909, 124910, 124912, 124926, 124928, + 125124, 125184, 125251, 125259, 125259, 126464, 126467, 126469, 126495, 126497, 126498, + 126500, 126500, 126503, 126503, 126505, 126514, 126516, 126519, 126521, 126521, 126523, + 126523, 126530, 126530, 126535, 126535, 126537, 126537, 126539, 126539, 126541, 126543, + 126545, 126546, 126548, 126548, 126551, 126551, 126553, 126553, 126555, 126555, 126557, + 126557, 126559, 126559, 126561, 126562, 126564, 126564, 126567, 126570, 126572, 126578, + 126580, 126583, 126585, 126588, 126590, 126590, 126592, 126601, 126603, 126619, 126625, + 126627, 126629, 126633, 126635, 126651, 131072, 173791, 173824, 177976, 177984, 178205, + 178208, 183969, 183984, 191456, 194560, 195101, 196608, 201546, 6, 0, 10, 10, 13, 13, 42, + 42, 47, 47, 91, 92, 8232, 8233, 5, 0, 10, 10, 13, 13, 47, 47, 91, 92, 8232, 8233, 4, 0, 10, + 10, 13, 13, 92, 93, 8232, 8233, 1193, 0, 2, 1, 0, 0, 0, 0, 4, 1, 0, 0, 0, 0, 6, 1, 0, 0, 0, + 0, 8, 1, 0, 0, 0, 0, 10, 1, 0, 0, 0, 0, 12, 1, 0, 0, 0, 0, 14, 1, 0, 0, 0, 0, 16, 1, 0, 0, + 0, 0, 18, 1, 0, 0, 0, 0, 20, 1, 0, 0, 0, 0, 22, 1, 0, 0, 0, 0, 24, 1, 0, 0, 0, 0, 26, 1, 0, + 0, 0, 0, 28, 1, 0, 0, 0, 0, 30, 1, 0, 0, 0, 0, 32, 1, 0, 0, 0, 0, 34, 1, 0, 0, 0, 0, 36, 1, + 0, 0, 0, 0, 38, 1, 0, 0, 0, 0, 40, 1, 0, 0, 0, 0, 42, 1, 0, 0, 0, 0, 44, 1, 0, 0, 0, 0, 46, + 1, 0, 0, 0, 0, 48, 1, 0, 0, 0, 0, 50, 1, 0, 0, 0, 0, 52, 1, 0, 0, 0, 0, 54, 1, 0, 0, 0, 0, + 56, 1, 0, 0, 0, 0, 58, 1, 0, 0, 0, 0, 60, 1, 0, 0, 0, 0, 62, 1, 0, 0, 0, 0, 64, 1, 0, 0, 0, + 0, 66, 1, 0, 0, 0, 0, 68, 1, 0, 0, 0, 0, 70, 1, 0, 0, 0, 0, 72, 1, 0, 0, 0, 0, 74, 1, 0, 0, + 0, 0, 76, 1, 0, 0, 0, 0, 78, 1, 0, 0, 0, 0, 80, 1, 0, 0, 0, 0, 82, 1, 0, 0, 0, 0, 84, 1, 0, + 0, 0, 0, 86, 1, 0, 0, 0, 0, 88, 1, 0, 0, 0, 0, 90, 1, 0, 0, 0, 0, 92, 1, 0, 0, 0, 0, 94, 1, + 0, 0, 0, 0, 96, 1, 0, 0, 0, 0, 98, 1, 0, 0, 0, 0, 100, 1, 0, 0, 0, 0, 102, 1, 0, 0, 0, 0, + 104, 1, 0, 0, 0, 0, 106, 1, 0, 0, 0, 0, 108, 1, 0, 0, 0, 0, 110, 1, 0, 0, 0, 0, 112, 1, 0, + 0, 0, 0, 114, 1, 0, 0, 0, 0, 116, 1, 0, 0, 0, 0, 118, 1, 0, 0, 0, 0, 120, 1, 0, 0, 0, 0, + 122, 1, 0, 0, 0, 0, 124, 1, 0, 0, 0, 0, 126, 1, 0, 0, 0, 0, 128, 1, 0, 0, 0, 0, 130, 1, 0, + 0, 0, 0, 132, 1, 0, 0, 0, 0, 134, 1, 0, 0, 0, 0, 136, 1, 0, 0, 0, 0, 138, 1, 0, 0, 0, 0, + 140, 1, 0, 0, 0, 0, 142, 1, 0, 0, 0, 0, 144, 1, 0, 0, 0, 0, 146, 1, 0, 0, 0, 0, 148, 1, 0, + 0, 0, 0, 150, 1, 0, 0, 0, 0, 152, 1, 0, 0, 0, 0, 154, 1, 0, 0, 0, 0, 156, 1, 0, 0, 0, 0, + 158, 1, 0, 0, 0, 0, 160, 1, 0, 0, 0, 0, 162, 1, 0, 0, 0, 0, 164, 1, 0, 0, 0, 0, 166, 1, 0, + 0, 0, 0, 168, 1, 0, 0, 0, 0, 170, 1, 0, 0, 0, 0, 172, 1, 0, 0, 0, 0, 174, 1, 0, 0, 0, 0, + 176, 1, 0, 0, 0, 0, 178, 1, 0, 0, 0, 0, 180, 1, 0, 0, 0, 0, 182, 1, 0, 0, 0, 0, 184, 1, 0, + 0, 0, 0, 186, 1, 0, 0, 0, 0, 188, 1, 0, 0, 0, 0, 190, 1, 0, 0, 0, 0, 192, 1, 0, 0, 0, 0, + 194, 1, 0, 0, 0, 0, 196, 1, 0, 0, 0, 0, 198, 1, 0, 0, 0, 0, 200, 1, 0, 0, 0, 0, 202, 1, 0, + 0, 0, 0, 204, 1, 0, 0, 0, 0, 206, 1, 0, 0, 0, 0, 208, 1, 0, 0, 0, 0, 210, 1, 0, 0, 0, 0, + 212, 1, 0, 0, 0, 0, 214, 1, 0, 0, 0, 0, 216, 1, 0, 0, 0, 0, 218, 1, 0, 0, 0, 0, 220, 1, 0, + 0, 0, 0, 222, 1, 0, 0, 0, 0, 224, 1, 0, 0, 0, 0, 226, 1, 0, 0, 0, 0, 228, 1, 0, 0, 0, 0, + 230, 1, 0, 0, 0, 0, 232, 1, 0, 0, 0, 0, 234, 1, 0, 0, 0, 0, 236, 1, 0, 0, 0, 0, 238, 1, 0, + 0, 0, 0, 240, 1, 0, 0, 0, 0, 242, 1, 0, 0, 0, 0, 244, 1, 0, 0, 0, 0, 246, 1, 0, 0, 0, 0, + 248, 1, 0, 0, 0, 0, 250, 1, 0, 0, 0, 0, 252, 1, 0, 0, 0, 1, 254, 1, 0, 0, 0, 1, 256, 1, 0, + 0, 0, 1, 258, 1, 0, 0, 0, 2, 300, 1, 0, 0, 0, 4, 310, 1, 0, 0, 0, 6, 324, 1, 0, 0, 0, 8, + 335, 1, 0, 0, 0, 10, 351, 1, 0, 0, 0, 12, 353, 1, 0, 0, 0, 14, 355, 1, 0, 0, 0, 16, 357, 1, + 0, 0, 0, 18, 359, 1, 0, 0, 0, 20, 362, 1, 0, 0, 0, 22, 367, 1, 0, 0, 0, 24, 370, 1, 0, 0, 0, + 26, 372, 1, 0, 0, 0, 28, 374, 1, 0, 0, 0, 30, 376, 1, 0, 0, 0, 32, 378, 1, 0, 0, 0, 34, 381, + 1, 0, 0, 0, 36, 383, 1, 0, 0, 0, 38, 387, 1, 0, 0, 0, 40, 389, 1, 0, 0, 0, 42, 392, 1, 0, 0, + 0, 44, 395, 1, 0, 0, 0, 46, 397, 1, 0, 0, 0, 48, 399, 1, 0, 0, 0, 50, 401, 1, 0, 0, 0, 52, + 403, 1, 0, 0, 0, 54, 405, 1, 0, 0, 0, 56, 407, 1, 0, 0, 0, 58, 409, 1, 0, 0, 0, 60, 412, 1, + 0, 0, 0, 62, 415, 1, 0, 0, 0, 64, 417, 1, 0, 0, 0, 66, 420, 1, 0, 0, 0, 68, 423, 1, 0, 0, 0, + 70, 427, 1, 0, 0, 0, 72, 429, 1, 0, 0, 0, 74, 431, 1, 0, 0, 0, 76, 434, 1, 0, 0, 0, 78, 437, + 1, 0, 0, 0, 80, 440, 1, 0, 0, 0, 82, 443, 1, 0, 0, 0, 84, 447, 1, 0, 0, 0, 86, 451, 1, 0, 0, + 0, 88, 453, 1, 0, 0, 0, 90, 455, 1, 0, 0, 0, 92, 457, 1, 0, 0, 0, 94, 460, 1, 0, 0, 0, 96, + 463, 1, 0, 0, 0, 98, 466, 1, 0, 0, 0, 100, 469, 1, 0, 0, 0, 102, 472, 1, 0, 0, 0, 104, 475, + 1, 0, 0, 0, 106, 478, 1, 0, 0, 0, 108, 482, 1, 0, 0, 0, 110, 486, 1, 0, 0, 0, 112, 491, 1, + 0, 0, 0, 114, 494, 1, 0, 0, 0, 116, 497, 1, 0, 0, 0, 118, 500, 1, 0, 0, 0, 120, 504, 1, 0, + 0, 0, 122, 507, 1, 0, 0, 0, 124, 521, 1, 0, 0, 0, 126, 550, 1, 0, 0, 0, 128, 552, 1, 0, 0, + 0, 130, 561, 1, 0, 0, 0, 132, 569, 1, 0, 0, 0, 134, 578, 1, 0, 0, 0, 136, 587, 1, 0, 0, 0, + 138, 598, 1, 0, 0, 0, 140, 609, 1, 0, 0, 0, 142, 620, 1, 0, 0, 0, 144, 623, 1, 0, 0, 0, 146, + 629, 1, 0, 0, 0, 148, 632, 1, 0, 0, 0, 150, 643, 1, 0, 0, 0, 152, 650, 1, 0, 0, 0, 154, 655, + 1, 0, 0, 0, 156, 660, 1, 0, 0, 0, 158, 664, 1, 0, 0, 0, 160, 668, 1, 0, 0, 0, 162, 674, 1, + 0, 0, 0, 164, 682, 1, 0, 0, 0, 166, 689, 1, 0, 0, 0, 168, 694, 1, 0, 0, 0, 170, 703, 1, 0, + 0, 0, 172, 707, 1, 0, 0, 0, 174, 714, 1, 0, 0, 0, 176, 720, 1, 0, 0, 0, 178, 729, 1, 0, 0, + 0, 180, 738, 1, 0, 0, 0, 182, 743, 1, 0, 0, 0, 184, 748, 1, 0, 0, 0, 186, 756, 1, 0, 0, 0, + 188, 759, 1, 0, 0, 0, 190, 765, 1, 0, 0, 0, 192, 772, 1, 0, 0, 0, 194, 775, 1, 0, 0, 0, 196, + 779, 1, 0, 0, 0, 198, 782, 1, 0, 0, 0, 200, 787, 1, 0, 0, 0, 202, 793, 1, 0, 0, 0, 204, 798, + 1, 0, 0, 0, 206, 806, 1, 0, 0, 0, 208, 812, 1, 0, 0, 0, 210, 818, 1, 0, 0, 0, 212, 825, 1, + 0, 0, 0, 214, 832, 1, 0, 0, 0, 216, 838, 1, 0, 0, 0, 218, 844, 1, 0, 0, 0, 220, 850, 1, 0, + 0, 0, 222, 863, 1, 0, 0, 0, 224, 869, 1, 0, 0, 0, 226, 875, 1, 0, 0, 0, 228, 885, 1, 0, 0, + 0, 230, 894, 1, 0, 0, 0, 232, 906, 1, 0, 0, 0, 234, 916, 1, 0, 0, 0, 236, 928, 1, 0, 0, 0, + 238, 937, 1, 0, 0, 0, 240, 960, 1, 0, 0, 0, 242, 964, 1, 0, 0, 0, 244, 970, 1, 0, 0, 0, 246, + 976, 1, 0, 0, 0, 248, 980, 1, 0, 0, 0, 250, 997, 1, 0, 0, 0, 252, 1019, 1, 0, 0, 0, 254, + 1023, 1, 0, 0, 0, 256, 1029, 1, 0, 0, 0, 258, 1034, 1, 0, 0, 0, 260, 1040, 1, 0, 0, 0, 262, + 1046, 1, 0, 0, 0, 264, 1053, 1, 0, 0, 0, 266, 1057, 1, 0, 0, 0, 268, 1059, 1, 0, 0, 0, 270, + 1079, 1, 0, 0, 0, 272, 1081, 1, 0, 0, 0, 274, 1090, 1, 0, 0, 0, 276, 1092, 1, 0, 0, 0, 278, + 1096, 1, 0, 0, 0, 280, 1098, 1, 0, 0, 0, 282, 1101, 1, 0, 0, 0, 284, 1111, 1, 0, 0, 0, 286, + 1113, 1, 0, 0, 0, 288, 1124, 1, 0, 0, 0, 290, 1129, 1, 0, 0, 0, 292, 1141, 1, 0, 0, 0, 294, + 1153, 1, 0, 0, 0, 296, 1157, 1, 0, 0, 0, 298, 1159, 1, 0, 0, 0, 300, 301, 4, 0, 0, 0, 301, + 302, 5, 35, 0, 0, 302, 303, 5, 33, 0, 0, 303, 307, 1, 0, 0, 0, 304, 306, 8, 0, 0, 0, 305, + 304, 1, 0, 0, 0, 306, 309, 1, 0, 0, 0, 307, 305, 1, 0, 0, 0, 307, 308, 1, 0, 0, 0, 308, 3, + 1, 0, 0, 0, 309, 307, 1, 0, 0, 0, 310, 311, 5, 47, 0, 0, 311, 312, 5, 42, 0, 0, 312, 316, 1, + 0, 0, 0, 313, 315, 9, 0, 0, 0, 314, 313, 1, 0, 0, 0, 315, 318, 1, 0, 0, 0, 316, 317, 1, 0, + 0, 0, 316, 314, 1, 0, 0, 0, 317, 319, 1, 0, 0, 0, 318, 316, 1, 0, 0, 0, 319, 320, 5, 42, 0, + 0, 320, 321, 5, 47, 0, 0, 321, 322, 1, 0, 0, 0, 322, 323, 6, 1, 0, 0, 323, 5, 1, 0, 0, 0, + 324, 325, 5, 47, 0, 0, 325, 326, 5, 47, 0, 0, 326, 330, 1, 0, 0, 0, 327, 329, 8, 0, 0, 0, + 328, 327, 1, 0, 0, 0, 329, 332, 1, 0, 0, 0, 330, 328, 1, 0, 0, 0, 330, 331, 1, 0, 0, 0, 331, + 333, 1, 0, 0, 0, 332, 330, 1, 0, 0, 0, 333, 334, 6, 2, 0, 0, 334, 7, 1, 0, 0, 0, 335, 336, + 5, 47, 0, 0, 336, 340, 3, 292, 145, 0, 337, 339, 3, 294, 146, 0, 338, 337, 1, 0, 0, 0, 339, + 342, 1, 0, 0, 0, 340, 338, 1, 0, 0, 0, 340, 341, 1, 0, 0, 0, 341, 343, 1, 0, 0, 0, 342, 340, + 1, 0, 0, 0, 343, 344, 4, 3, 1, 0, 344, 348, 5, 47, 0, 0, 345, 347, 3, 288, 143, 0, 346, 345, + 1, 0, 0, 0, 347, 350, 1, 0, 0, 0, 348, 346, 1, 0, 0, 0, 348, 349, 1, 0, 0, 0, 349, 9, 1, 0, + 0, 0, 350, 348, 1, 0, 0, 0, 351, 352, 5, 91, 0, 0, 352, 11, 1, 0, 0, 0, 353, 354, 5, 93, 0, + 0, 354, 13, 1, 0, 0, 0, 355, 356, 5, 40, 0, 0, 356, 15, 1, 0, 0, 0, 357, 358, 5, 41, 0, 0, + 358, 17, 1, 0, 0, 0, 359, 360, 5, 123, 0, 0, 360, 361, 6, 8, 1, 0, 361, 19, 1, 0, 0, 0, 362, + 363, 4, 9, 2, 0, 363, 364, 5, 125, 0, 0, 364, 365, 1, 0, 0, 0, 365, 366, 6, 9, 2, 0, 366, + 21, 1, 0, 0, 0, 367, 368, 5, 125, 0, 0, 368, 369, 6, 10, 3, 0, 369, 23, 1, 0, 0, 0, 370, + 371, 5, 59, 0, 0, 371, 25, 1, 0, 0, 0, 372, 373, 5, 44, 0, 0, 373, 27, 1, 0, 0, 0, 374, 375, + 5, 61, 0, 0, 375, 29, 1, 0, 0, 0, 376, 377, 5, 63, 0, 0, 377, 31, 1, 0, 0, 0, 378, 379, 5, + 63, 0, 0, 379, 380, 5, 46, 0, 0, 380, 33, 1, 0, 0, 0, 381, 382, 5, 58, 0, 0, 382, 35, 1, 0, + 0, 0, 383, 384, 5, 46, 0, 0, 384, 385, 5, 46, 0, 0, 385, 386, 5, 46, 0, 0, 386, 37, 1, 0, 0, + 0, 387, 388, 5, 46, 0, 0, 388, 39, 1, 0, 0, 0, 389, 390, 5, 43, 0, 0, 390, 391, 5, 43, 0, 0, + 391, 41, 1, 0, 0, 0, 392, 393, 5, 45, 0, 0, 393, 394, 5, 45, 0, 0, 394, 43, 1, 0, 0, 0, 395, + 396, 5, 43, 0, 0, 396, 45, 1, 0, 0, 0, 397, 398, 5, 45, 0, 0, 398, 47, 1, 0, 0, 0, 399, 400, + 5, 126, 0, 0, 400, 49, 1, 0, 0, 0, 401, 402, 5, 33, 0, 0, 402, 51, 1, 0, 0, 0, 403, 404, 5, + 42, 0, 0, 404, 53, 1, 0, 0, 0, 405, 406, 5, 47, 0, 0, 406, 55, 1, 0, 0, 0, 407, 408, 5, 37, + 0, 0, 408, 57, 1, 0, 0, 0, 409, 410, 5, 42, 0, 0, 410, 411, 5, 42, 0, 0, 411, 59, 1, 0, 0, + 0, 412, 413, 5, 63, 0, 0, 413, 414, 5, 63, 0, 0, 414, 61, 1, 0, 0, 0, 415, 416, 5, 35, 0, 0, + 416, 63, 1, 0, 0, 0, 417, 418, 5, 62, 0, 0, 418, 419, 5, 62, 0, 0, 419, 65, 1, 0, 0, 0, 420, + 421, 5, 60, 0, 0, 421, 422, 5, 60, 0, 0, 422, 67, 1, 0, 0, 0, 423, 424, 5, 62, 0, 0, 424, + 425, 5, 62, 0, 0, 425, 426, 5, 62, 0, 0, 426, 69, 1, 0, 0, 0, 427, 428, 5, 60, 0, 0, 428, + 71, 1, 0, 0, 0, 429, 430, 5, 62, 0, 0, 430, 73, 1, 0, 0, 0, 431, 432, 5, 60, 0, 0, 432, 433, + 5, 61, 0, 0, 433, 75, 1, 0, 0, 0, 434, 435, 5, 62, 0, 0, 435, 436, 5, 61, 0, 0, 436, 77, 1, + 0, 0, 0, 437, 438, 5, 61, 0, 0, 438, 439, 5, 61, 0, 0, 439, 79, 1, 0, 0, 0, 440, 441, 5, 33, + 0, 0, 441, 442, 5, 61, 0, 0, 442, 81, 1, 0, 0, 0, 443, 444, 5, 61, 0, 0, 444, 445, 5, 61, 0, + 0, 445, 446, 5, 61, 0, 0, 446, 83, 1, 0, 0, 0, 447, 448, 5, 33, 0, 0, 448, 449, 5, 61, 0, 0, + 449, 450, 5, 61, 0, 0, 450, 85, 1, 0, 0, 0, 451, 452, 5, 38, 0, 0, 452, 87, 1, 0, 0, 0, 453, + 454, 5, 94, 0, 0, 454, 89, 1, 0, 0, 0, 455, 456, 5, 124, 0, 0, 456, 91, 1, 0, 0, 0, 457, + 458, 5, 38, 0, 0, 458, 459, 5, 38, 0, 0, 459, 93, 1, 0, 0, 0, 460, 461, 5, 124, 0, 0, 461, + 462, 5, 124, 0, 0, 462, 95, 1, 0, 0, 0, 463, 464, 5, 42, 0, 0, 464, 465, 5, 61, 0, 0, 465, + 97, 1, 0, 0, 0, 466, 467, 5, 47, 0, 0, 467, 468, 5, 61, 0, 0, 468, 99, 1, 0, 0, 0, 469, 470, + 5, 37, 0, 0, 470, 471, 5, 61, 0, 0, 471, 101, 1, 0, 0, 0, 472, 473, 5, 43, 0, 0, 473, 474, + 5, 61, 0, 0, 474, 103, 1, 0, 0, 0, 475, 476, 5, 45, 0, 0, 476, 477, 5, 61, 0, 0, 477, 105, + 1, 0, 0, 0, 478, 479, 5, 60, 0, 0, 479, 480, 5, 60, 0, 0, 480, 481, 5, 61, 0, 0, 481, 107, + 1, 0, 0, 0, 482, 483, 5, 62, 0, 0, 483, 484, 5, 62, 0, 0, 484, 485, 5, 61, 0, 0, 485, 109, + 1, 0, 0, 0, 486, 487, 5, 62, 0, 0, 487, 488, 5, 62, 0, 0, 488, 489, 5, 62, 0, 0, 489, 490, + 5, 61, 0, 0, 490, 111, 1, 0, 0, 0, 491, 492, 5, 38, 0, 0, 492, 493, 5, 61, 0, 0, 493, 113, + 1, 0, 0, 0, 494, 495, 5, 94, 0, 0, 495, 496, 5, 61, 0, 0, 496, 115, 1, 0, 0, 0, 497, 498, 5, + 124, 0, 0, 498, 499, 5, 61, 0, 0, 499, 117, 1, 0, 0, 0, 500, 501, 5, 42, 0, 0, 501, 502, 5, + 42, 0, 0, 502, 503, 5, 61, 0, 0, 503, 119, 1, 0, 0, 0, 504, 505, 5, 61, 0, 0, 505, 506, 5, + 62, 0, 0, 506, 121, 1, 0, 0, 0, 507, 508, 5, 110, 0, 0, 508, 509, 5, 117, 0, 0, 509, 510, 5, + 108, 0, 0, 510, 511, 5, 108, 0, 0, 511, 123, 1, 0, 0, 0, 512, 513, 5, 116, 0, 0, 513, 514, + 5, 114, 0, 0, 514, 515, 5, 117, 0, 0, 515, 522, 5, 101, 0, 0, 516, 517, 5, 102, 0, 0, 517, + 518, 5, 97, 0, 0, 518, 519, 5, 108, 0, 0, 519, 520, 5, 115, 0, 0, 520, 522, 5, 101, 0, 0, + 521, 512, 1, 0, 0, 0, 521, 516, 1, 0, 0, 0, 522, 125, 1, 0, 0, 0, 523, 524, 3, 284, 141, 0, + 524, 525, 5, 46, 0, 0, 525, 529, 7, 1, 0, 0, 526, 528, 7, 2, 0, 0, 527, 526, 1, 0, 0, 0, + 528, 531, 1, 0, 0, 0, 529, 527, 1, 0, 0, 0, 529, 530, 1, 0, 0, 0, 530, 533, 1, 0, 0, 0, 531, + 529, 1, 0, 0, 0, 532, 534, 3, 286, 142, 0, 533, 532, 1, 0, 0, 0, 533, 534, 1, 0, 0, 0, 534, + 551, 1, 0, 0, 0, 535, 536, 5, 46, 0, 0, 536, 540, 7, 1, 0, 0, 537, 539, 7, 2, 0, 0, 538, + 537, 1, 0, 0, 0, 539, 542, 1, 0, 0, 0, 540, 538, 1, 0, 0, 0, 540, 541, 1, 0, 0, 0, 541, 544, + 1, 0, 0, 0, 542, 540, 1, 0, 0, 0, 543, 545, 3, 286, 142, 0, 544, 543, 1, 0, 0, 0, 544, 545, + 1, 0, 0, 0, 545, 551, 1, 0, 0, 0, 546, 548, 3, 284, 141, 0, 547, 549, 3, 286, 142, 0, 548, + 547, 1, 0, 0, 0, 548, 549, 1, 0, 0, 0, 549, 551, 1, 0, 0, 0, 550, 523, 1, 0, 0, 0, 550, 535, + 1, 0, 0, 0, 550, 546, 1, 0, 0, 0, 551, 127, 1, 0, 0, 0, 552, 553, 5, 48, 0, 0, 553, 554, 7, + 3, 0, 0, 554, 558, 7, 4, 0, 0, 555, 557, 3, 282, 140, 0, 556, 555, 1, 0, 0, 0, 557, 560, 1, + 0, 0, 0, 558, 556, 1, 0, 0, 0, 558, 559, 1, 0, 0, 0, 559, 129, 1, 0, 0, 0, 560, 558, 1, 0, + 0, 0, 561, 563, 5, 48, 0, 0, 562, 564, 7, 5, 0, 0, 563, 562, 1, 0, 0, 0, 564, 565, 1, 0, 0, + 0, 565, 563, 1, 0, 0, 0, 565, 566, 1, 0, 0, 0, 566, 567, 1, 0, 0, 0, 567, 568, 4, 64, 3, 0, + 568, 131, 1, 0, 0, 0, 569, 570, 5, 48, 0, 0, 570, 571, 7, 6, 0, 0, 571, 575, 7, 5, 0, 0, + 572, 574, 7, 7, 0, 0, 573, 572, 1, 0, 0, 0, 574, 577, 1, 0, 0, 0, 575, 573, 1, 0, 0, 0, 575, + 576, 1, 0, 0, 0, 576, 133, 1, 0, 0, 0, 577, 575, 1, 0, 0, 0, 578, 579, 5, 48, 0, 0, 579, + 580, 7, 8, 0, 0, 580, 584, 7, 9, 0, 0, 581, 583, 7, 10, 0, 0, 582, 581, 1, 0, 0, 0, 583, + 586, 1, 0, 0, 0, 584, 582, 1, 0, 0, 0, 584, 585, 1, 0, 0, 0, 585, 135, 1, 0, 0, 0, 586, 584, + 1, 0, 0, 0, 587, 588, 5, 48, 0, 0, 588, 589, 7, 3, 0, 0, 589, 593, 7, 4, 0, 0, 590, 592, 3, + 282, 140, 0, 591, 590, 1, 0, 0, 0, 592, 595, 1, 0, 0, 0, 593, 591, 1, 0, 0, 0, 593, 594, 1, + 0, 0, 0, 594, 596, 1, 0, 0, 0, 595, 593, 1, 0, 0, 0, 596, 597, 5, 110, 0, 0, 597, 137, 1, 0, + 0, 0, 598, 599, 5, 48, 0, 0, 599, 600, 7, 6, 0, 0, 600, 604, 7, 5, 0, 0, 601, 603, 7, 7, 0, + 0, 602, 601, 1, 0, 0, 0, 603, 606, 1, 0, 0, 0, 604, 602, 1, 0, 0, 0, 604, 605, 1, 0, 0, 0, + 605, 607, 1, 0, 0, 0, 606, 604, 1, 0, 0, 0, 607, 608, 5, 110, 0, 0, 608, 139, 1, 0, 0, 0, + 609, 610, 5, 48, 0, 0, 610, 611, 7, 8, 0, 0, 611, 615, 7, 9, 0, 0, 612, 614, 7, 10, 0, 0, + 613, 612, 1, 0, 0, 0, 614, 617, 1, 0, 0, 0, 615, 613, 1, 0, 0, 0, 615, 616, 1, 0, 0, 0, 616, + 618, 1, 0, 0, 0, 617, 615, 1, 0, 0, 0, 618, 619, 5, 110, 0, 0, 619, 141, 1, 0, 0, 0, 620, + 621, 3, 284, 141, 0, 621, 622, 5, 110, 0, 0, 622, 143, 1, 0, 0, 0, 623, 624, 5, 98, 0, 0, + 624, 625, 5, 114, 0, 0, 625, 626, 5, 101, 0, 0, 626, 627, 5, 97, 0, 0, 627, 628, 5, 107, 0, + 0, 628, 145, 1, 0, 0, 0, 629, 630, 5, 100, 0, 0, 630, 631, 5, 111, 0, 0, 631, 147, 1, 0, 0, + 0, 632, 633, 5, 105, 0, 0, 633, 634, 5, 110, 0, 0, 634, 635, 5, 115, 0, 0, 635, 636, 5, 116, + 0, 0, 636, 637, 5, 97, 0, 0, 637, 638, 5, 110, 0, 0, 638, 639, 5, 99, 0, 0, 639, 640, 5, + 101, 0, 0, 640, 641, 5, 111, 0, 0, 641, 642, 5, 102, 0, 0, 642, 149, 1, 0, 0, 0, 643, 644, + 5, 116, 0, 0, 644, 645, 5, 121, 0, 0, 645, 646, 5, 112, 0, 0, 646, 647, 5, 101, 0, 0, 647, + 648, 5, 111, 0, 0, 648, 649, 5, 102, 0, 0, 649, 151, 1, 0, 0, 0, 650, 651, 5, 99, 0, 0, 651, + 652, 5, 97, 0, 0, 652, 653, 5, 115, 0, 0, 653, 654, 5, 101, 0, 0, 654, 153, 1, 0, 0, 0, 655, + 656, 5, 101, 0, 0, 656, 657, 5, 108, 0, 0, 657, 658, 5, 115, 0, 0, 658, 659, 5, 101, 0, 0, + 659, 155, 1, 0, 0, 0, 660, 661, 5, 110, 0, 0, 661, 662, 5, 101, 0, 0, 662, 663, 5, 119, 0, + 0, 663, 157, 1, 0, 0, 0, 664, 665, 5, 118, 0, 0, 665, 666, 5, 97, 0, 0, 666, 667, 5, 114, 0, + 0, 667, 159, 1, 0, 0, 0, 668, 669, 5, 99, 0, 0, 669, 670, 5, 97, 0, 0, 670, 671, 5, 116, 0, + 0, 671, 672, 5, 99, 0, 0, 672, 673, 5, 104, 0, 0, 673, 161, 1, 0, 0, 0, 674, 675, 5, 102, 0, + 0, 675, 676, 5, 105, 0, 0, 676, 677, 5, 110, 0, 0, 677, 678, 5, 97, 0, 0, 678, 679, 5, 108, + 0, 0, 679, 680, 5, 108, 0, 0, 680, 681, 5, 121, 0, 0, 681, 163, 1, 0, 0, 0, 682, 683, 5, + 114, 0, 0, 683, 684, 5, 101, 0, 0, 684, 685, 5, 116, 0, 0, 685, 686, 5, 117, 0, 0, 686, 687, + 5, 114, 0, 0, 687, 688, 5, 110, 0, 0, 688, 165, 1, 0, 0, 0, 689, 690, 5, 118, 0, 0, 690, + 691, 5, 111, 0, 0, 691, 692, 5, 105, 0, 0, 692, 693, 5, 100, 0, 0, 693, 167, 1, 0, 0, 0, + 694, 695, 5, 99, 0, 0, 695, 696, 5, 111, 0, 0, 696, 697, 5, 110, 0, 0, 697, 698, 5, 116, 0, + 0, 698, 699, 5, 105, 0, 0, 699, 700, 5, 110, 0, 0, 700, 701, 5, 117, 0, 0, 701, 702, 5, 101, + 0, 0, 702, 169, 1, 0, 0, 0, 703, 704, 5, 102, 0, 0, 704, 705, 5, 111, 0, 0, 705, 706, 5, + 114, 0, 0, 706, 171, 1, 0, 0, 0, 707, 708, 5, 115, 0, 0, 708, 709, 5, 119, 0, 0, 709, 710, + 5, 105, 0, 0, 710, 711, 5, 116, 0, 0, 711, 712, 5, 99, 0, 0, 712, 713, 5, 104, 0, 0, 713, + 173, 1, 0, 0, 0, 714, 715, 5, 119, 0, 0, 715, 716, 5, 104, 0, 0, 716, 717, 5, 105, 0, 0, + 717, 718, 5, 108, 0, 0, 718, 719, 5, 101, 0, 0, 719, 175, 1, 0, 0, 0, 720, 721, 5, 100, 0, + 0, 721, 722, 5, 101, 0, 0, 722, 723, 5, 98, 0, 0, 723, 724, 5, 117, 0, 0, 724, 725, 5, 103, + 0, 0, 725, 726, 5, 103, 0, 0, 726, 727, 5, 101, 0, 0, 727, 728, 5, 114, 0, 0, 728, 177, 1, + 0, 0, 0, 729, 730, 5, 102, 0, 0, 730, 731, 5, 117, 0, 0, 731, 732, 5, 110, 0, 0, 732, 733, + 5, 99, 0, 0, 733, 734, 5, 116, 0, 0, 734, 735, 5, 105, 0, 0, 735, 736, 5, 111, 0, 0, 736, + 737, 5, 110, 0, 0, 737, 179, 1, 0, 0, 0, 738, 739, 5, 116, 0, 0, 739, 740, 5, 104, 0, 0, + 740, 741, 5, 105, 0, 0, 741, 742, 5, 115, 0, 0, 742, 181, 1, 0, 0, 0, 743, 744, 5, 119, 0, + 0, 744, 745, 5, 105, 0, 0, 745, 746, 5, 116, 0, 0, 746, 747, 5, 104, 0, 0, 747, 183, 1, 0, + 0, 0, 748, 749, 5, 100, 0, 0, 749, 750, 5, 101, 0, 0, 750, 751, 5, 102, 0, 0, 751, 752, 5, + 97, 0, 0, 752, 753, 5, 117, 0, 0, 753, 754, 5, 108, 0, 0, 754, 755, 5, 116, 0, 0, 755, 185, + 1, 0, 0, 0, 756, 757, 5, 105, 0, 0, 757, 758, 5, 102, 0, 0, 758, 187, 1, 0, 0, 0, 759, 760, + 5, 116, 0, 0, 760, 761, 5, 104, 0, 0, 761, 762, 5, 114, 0, 0, 762, 763, 5, 111, 0, 0, 763, + 764, 5, 119, 0, 0, 764, 189, 1, 0, 0, 0, 765, 766, 5, 100, 0, 0, 766, 767, 5, 101, 0, 0, + 767, 768, 5, 108, 0, 0, 768, 769, 5, 101, 0, 0, 769, 770, 5, 116, 0, 0, 770, 771, 5, 101, 0, + 0, 771, 191, 1, 0, 0, 0, 772, 773, 5, 105, 0, 0, 773, 774, 5, 110, 0, 0, 774, 193, 1, 0, 0, + 0, 775, 776, 5, 116, 0, 0, 776, 777, 5, 114, 0, 0, 777, 778, 5, 121, 0, 0, 778, 195, 1, 0, + 0, 0, 779, 780, 5, 97, 0, 0, 780, 781, 5, 115, 0, 0, 781, 197, 1, 0, 0, 0, 782, 783, 5, 102, + 0, 0, 783, 784, 5, 114, 0, 0, 784, 785, 5, 111, 0, 0, 785, 786, 5, 109, 0, 0, 786, 199, 1, + 0, 0, 0, 787, 788, 5, 99, 0, 0, 788, 789, 5, 108, 0, 0, 789, 790, 5, 97, 0, 0, 790, 791, 5, + 115, 0, 0, 791, 792, 5, 115, 0, 0, 792, 201, 1, 0, 0, 0, 793, 794, 5, 101, 0, 0, 794, 795, + 5, 110, 0, 0, 795, 796, 5, 117, 0, 0, 796, 797, 5, 109, 0, 0, 797, 203, 1, 0, 0, 0, 798, + 799, 5, 101, 0, 0, 799, 800, 5, 120, 0, 0, 800, 801, 5, 116, 0, 0, 801, 802, 5, 101, 0, 0, + 802, 803, 5, 110, 0, 0, 803, 804, 5, 100, 0, 0, 804, 805, 5, 115, 0, 0, 805, 205, 1, 0, 0, + 0, 806, 807, 5, 115, 0, 0, 807, 808, 5, 117, 0, 0, 808, 809, 5, 112, 0, 0, 809, 810, 5, 101, + 0, 0, 810, 811, 5, 114, 0, 0, 811, 207, 1, 0, 0, 0, 812, 813, 5, 99, 0, 0, 813, 814, 5, 111, + 0, 0, 814, 815, 5, 110, 0, 0, 815, 816, 5, 115, 0, 0, 816, 817, 5, 116, 0, 0, 817, 209, 1, + 0, 0, 0, 818, 819, 5, 101, 0, 0, 819, 820, 5, 120, 0, 0, 820, 821, 5, 112, 0, 0, 821, 822, + 5, 111, 0, 0, 822, 823, 5, 114, 0, 0, 823, 824, 5, 116, 0, 0, 824, 211, 1, 0, 0, 0, 825, + 826, 5, 105, 0, 0, 826, 827, 5, 109, 0, 0, 827, 828, 5, 112, 0, 0, 828, 829, 5, 111, 0, 0, + 829, 830, 5, 114, 0, 0, 830, 831, 5, 116, 0, 0, 831, 213, 1, 0, 0, 0, 832, 833, 5, 97, 0, 0, + 833, 834, 5, 115, 0, 0, 834, 835, 5, 121, 0, 0, 835, 836, 5, 110, 0, 0, 836, 837, 5, 99, 0, + 0, 837, 215, 1, 0, 0, 0, 838, 839, 5, 97, 0, 0, 839, 840, 5, 119, 0, 0, 840, 841, 5, 97, 0, + 0, 841, 842, 5, 105, 0, 0, 842, 843, 5, 116, 0, 0, 843, 217, 1, 0, 0, 0, 844, 845, 5, 121, + 0, 0, 845, 846, 5, 105, 0, 0, 846, 847, 5, 101, 0, 0, 847, 848, 5, 108, 0, 0, 848, 849, 5, + 100, 0, 0, 849, 219, 1, 0, 0, 0, 850, 851, 5, 105, 0, 0, 851, 852, 5, 109, 0, 0, 852, 853, + 5, 112, 0, 0, 853, 854, 5, 108, 0, 0, 854, 855, 5, 101, 0, 0, 855, 856, 5, 109, 0, 0, 856, + 857, 5, 101, 0, 0, 857, 858, 5, 110, 0, 0, 858, 859, 5, 116, 0, 0, 859, 860, 5, 115, 0, 0, + 860, 861, 1, 0, 0, 0, 861, 862, 4, 109, 4, 0, 862, 221, 1, 0, 0, 0, 863, 864, 5, 108, 0, 0, + 864, 865, 5, 101, 0, 0, 865, 866, 5, 116, 0, 0, 866, 867, 1, 0, 0, 0, 867, 868, 4, 110, 5, + 0, 868, 223, 1, 0, 0, 0, 869, 870, 5, 108, 0, 0, 870, 871, 5, 101, 0, 0, 871, 872, 5, 116, + 0, 0, 872, 873, 1, 0, 0, 0, 873, 874, 4, 111, 6, 0, 874, 225, 1, 0, 0, 0, 875, 876, 5, 112, + 0, 0, 876, 877, 5, 114, 0, 0, 877, 878, 5, 105, 0, 0, 878, 879, 5, 118, 0, 0, 879, 880, 5, + 97, 0, 0, 880, 881, 5, 116, 0, 0, 881, 882, 5, 101, 0, 0, 882, 883, 1, 0, 0, 0, 883, 884, 4, + 112, 7, 0, 884, 227, 1, 0, 0, 0, 885, 886, 5, 112, 0, 0, 886, 887, 5, 117, 0, 0, 887, 888, + 5, 98, 0, 0, 888, 889, 5, 108, 0, 0, 889, 890, 5, 105, 0, 0, 890, 891, 5, 99, 0, 0, 891, + 892, 1, 0, 0, 0, 892, 893, 4, 113, 8, 0, 893, 229, 1, 0, 0, 0, 894, 895, 5, 105, 0, 0, 895, + 896, 5, 110, 0, 0, 896, 897, 5, 116, 0, 0, 897, 898, 5, 101, 0, 0, 898, 899, 5, 114, 0, 0, + 899, 900, 5, 102, 0, 0, 900, 901, 5, 97, 0, 0, 901, 902, 5, 99, 0, 0, 902, 903, 5, 101, 0, + 0, 903, 904, 1, 0, 0, 0, 904, 905, 4, 114, 9, 0, 905, 231, 1, 0, 0, 0, 906, 907, 5, 112, 0, + 0, 907, 908, 5, 97, 0, 0, 908, 909, 5, 99, 0, 0, 909, 910, 5, 107, 0, 0, 910, 911, 5, 97, 0, + 0, 911, 912, 5, 103, 0, 0, 912, 913, 5, 101, 0, 0, 913, 914, 1, 0, 0, 0, 914, 915, 4, 115, + 10, 0, 915, 233, 1, 0, 0, 0, 916, 917, 5, 112, 0, 0, 917, 918, 5, 114, 0, 0, 918, 919, 5, + 111, 0, 0, 919, 920, 5, 116, 0, 0, 920, 921, 5, 101, 0, 0, 921, 922, 5, 99, 0, 0, 922, 923, + 5, 116, 0, 0, 923, 924, 5, 101, 0, 0, 924, 925, 5, 100, 0, 0, 925, 926, 1, 0, 0, 0, 926, + 927, 4, 116, 11, 0, 927, 235, 1, 0, 0, 0, 928, 929, 5, 115, 0, 0, 929, 930, 5, 116, 0, 0, + 930, 931, 5, 97, 0, 0, 931, 932, 5, 116, 0, 0, 932, 933, 5, 105, 0, 0, 933, 934, 5, 99, 0, + 0, 934, 935, 1, 0, 0, 0, 935, 936, 4, 117, 12, 0, 936, 237, 1, 0, 0, 0, 937, 941, 3, 290, + 144, 0, 938, 940, 3, 288, 143, 0, 939, 938, 1, 0, 0, 0, 940, 943, 1, 0, 0, 0, 941, 939, 1, + 0, 0, 0, 941, 942, 1, 0, 0, 0, 942, 239, 1, 0, 0, 0, 943, 941, 1, 0, 0, 0, 944, 948, 5, 34, + 0, 0, 945, 947, 3, 260, 129, 0, 946, 945, 1, 0, 0, 0, 947, 950, 1, 0, 0, 0, 948, 946, 1, 0, + 0, 0, 948, 949, 1, 0, 0, 0, 949, 951, 1, 0, 0, 0, 950, 948, 1, 0, 0, 0, 951, 961, 5, 34, 0, + 0, 952, 956, 5, 39, 0, 0, 953, 955, 3, 262, 130, 0, 954, 953, 1, 0, 0, 0, 955, 958, 1, 0, 0, + 0, 956, 954, 1, 0, 0, 0, 956, 957, 1, 0, 0, 0, 957, 959, 1, 0, 0, 0, 958, 956, 1, 0, 0, 0, + 959, 961, 5, 39, 0, 0, 960, 944, 1, 0, 0, 0, 960, 952, 1, 0, 0, 0, 961, 962, 1, 0, 0, 0, + 962, 963, 6, 119, 4, 0, 963, 241, 1, 0, 0, 0, 964, 965, 5, 96, 0, 0, 965, 966, 6, 120, 5, 0, + 966, 967, 1, 0, 0, 0, 967, 968, 6, 120, 6, 0, 968, 243, 1, 0, 0, 0, 969, 971, 7, 11, 0, 0, + 970, 969, 1, 0, 0, 0, 971, 972, 1, 0, 0, 0, 972, 970, 1, 0, 0, 0, 972, 973, 1, 0, 0, 0, 973, + 974, 1, 0, 0, 0, 974, 975, 6, 121, 0, 0, 975, 245, 1, 0, 0, 0, 976, 977, 7, 0, 0, 0, 977, + 978, 1, 0, 0, 0, 978, 979, 6, 122, 0, 0, 979, 247, 1, 0, 0, 0, 980, 981, 5, 60, 0, 0, 981, + 982, 5, 33, 0, 0, 982, 983, 5, 45, 0, 0, 983, 984, 5, 45, 0, 0, 984, 988, 1, 0, 0, 0, 985, + 987, 9, 0, 0, 0, 986, 985, 1, 0, 0, 0, 987, 990, 1, 0, 0, 0, 988, 989, 1, 0, 0, 0, 988, 986, + 1, 0, 0, 0, 989, 991, 1, 0, 0, 0, 990, 988, 1, 0, 0, 0, 991, 992, 5, 45, 0, 0, 992, 993, 5, + 45, 0, 0, 993, 994, 5, 62, 0, 0, 994, 995, 1, 0, 0, 0, 995, 996, 6, 123, 0, 0, 996, 249, 1, + 0, 0, 0, 997, 998, 5, 60, 0, 0, 998, 999, 5, 33, 0, 0, 999, 1000, 5, 91, 0, 0, 1000, 1001, + 5, 67, 0, 0, 1001, 1002, 5, 68, 0, 0, 1002, 1003, 5, 65, 0, 0, 1003, 1004, 5, 84, 0, 0, + 1004, 1005, 5, 65, 0, 0, 1005, 1006, 5, 91, 0, 0, 1006, 1010, 1, 0, 0, 0, 1007, 1009, 9, 0, + 0, 0, 1008, 1007, 1, 0, 0, 0, 1009, 1012, 1, 0, 0, 0, 1010, 1011, 1, 0, 0, 0, 1010, 1008, 1, + 0, 0, 0, 1011, 1013, 1, 0, 0, 0, 1012, 1010, 1, 0, 0, 0, 1013, 1014, 5, 93, 0, 0, 1014, + 1015, 5, 93, 0, 0, 1015, 1016, 5, 62, 0, 0, 1016, 1017, 1, 0, 0, 0, 1017, 1018, 6, 124, 0, + 0, 1018, 251, 1, 0, 0, 0, 1019, 1020, 9, 0, 0, 0, 1020, 1021, 1, 0, 0, 0, 1021, 1022, 6, + 125, 7, 0, 1022, 253, 1, 0, 0, 0, 1023, 1024, 5, 96, 0, 0, 1024, 1025, 6, 126, 8, 0, 1025, + 1026, 1, 0, 0, 0, 1026, 1027, 6, 126, 9, 0, 1027, 1028, 6, 126, 2, 0, 1028, 255, 1, 0, 0, 0, + 1029, 1030, 5, 36, 0, 0, 1030, 1031, 5, 123, 0, 0, 1031, 1032, 1, 0, 0, 0, 1032, 1033, 6, + 127, 10, 0, 1033, 257, 1, 0, 0, 0, 1034, 1035, 8, 12, 0, 0, 1035, 259, 1, 0, 0, 0, 1036, + 1041, 8, 13, 0, 0, 1037, 1038, 5, 92, 0, 0, 1038, 1041, 3, 264, 131, 0, 1039, 1041, 3, 280, + 139, 0, 1040, 1036, 1, 0, 0, 0, 1040, 1037, 1, 0, 0, 0, 1040, 1039, 1, 0, 0, 0, 1041, 261, + 1, 0, 0, 0, 1042, 1047, 8, 14, 0, 0, 1043, 1044, 5, 92, 0, 0, 1044, 1047, 3, 264, 131, 0, + 1045, 1047, 3, 280, 139, 0, 1046, 1042, 1, 0, 0, 0, 1046, 1043, 1, 0, 0, 0, 1046, 1045, 1, + 0, 0, 0, 1047, 263, 1, 0, 0, 0, 1048, 1054, 3, 266, 132, 0, 1049, 1054, 5, 48, 0, 0, 1050, + 1054, 3, 268, 133, 0, 1051, 1054, 3, 270, 134, 0, 1052, 1054, 3, 272, 135, 0, 1053, 1048, 1, + 0, 0, 0, 1053, 1049, 1, 0, 0, 0, 1053, 1050, 1, 0, 0, 0, 1053, 1051, 1, 0, 0, 0, 1053, 1052, + 1, 0, 0, 0, 1054, 265, 1, 0, 0, 0, 1055, 1058, 3, 274, 136, 0, 1056, 1058, 3, 276, 137, 0, + 1057, 1055, 1, 0, 0, 0, 1057, 1056, 1, 0, 0, 0, 1058, 267, 1, 0, 0, 0, 1059, 1060, 5, 120, + 0, 0, 1060, 1061, 3, 282, 140, 0, 1061, 1062, 3, 282, 140, 0, 1062, 269, 1, 0, 0, 0, 1063, + 1064, 5, 117, 0, 0, 1064, 1065, 3, 282, 140, 0, 1065, 1066, 3, 282, 140, 0, 1066, 1067, 3, + 282, 140, 0, 1067, 1068, 3, 282, 140, 0, 1068, 1080, 1, 0, 0, 0, 1069, 1070, 5, 117, 0, 0, + 1070, 1071, 5, 123, 0, 0, 1071, 1073, 3, 282, 140, 0, 1072, 1074, 3, 282, 140, 0, 1073, + 1072, 1, 0, 0, 0, 1074, 1075, 1, 0, 0, 0, 1075, 1073, 1, 0, 0, 0, 1075, 1076, 1, 0, 0, 0, + 1076, 1077, 1, 0, 0, 0, 1077, 1078, 5, 125, 0, 0, 1078, 1080, 1, 0, 0, 0, 1079, 1063, 1, 0, + 0, 0, 1079, 1069, 1, 0, 0, 0, 1080, 271, 1, 0, 0, 0, 1081, 1082, 5, 117, 0, 0, 1082, 1084, + 5, 123, 0, 0, 1083, 1085, 3, 282, 140, 0, 1084, 1083, 1, 0, 0, 0, 1085, 1086, 1, 0, 0, 0, + 1086, 1084, 1, 0, 0, 0, 1086, 1087, 1, 0, 0, 0, 1087, 1088, 1, 0, 0, 0, 1088, 1089, 5, 125, + 0, 0, 1089, 273, 1, 0, 0, 0, 1090, 1091, 7, 15, 0, 0, 1091, 275, 1, 0, 0, 0, 1092, 1093, 8, + 16, 0, 0, 1093, 277, 1, 0, 0, 0, 1094, 1097, 3, 274, 136, 0, 1095, 1097, 7, 17, 0, 0, 1096, + 1094, 1, 0, 0, 0, 1096, 1095, 1, 0, 0, 0, 1097, 279, 1, 0, 0, 0, 1098, 1099, 5, 92, 0, 0, + 1099, 1100, 7, 0, 0, 0, 1100, 281, 1, 0, 0, 0, 1101, 1102, 7, 18, 0, 0, 1102, 283, 1, 0, 0, + 0, 1103, 1112, 5, 48, 0, 0, 1104, 1108, 7, 19, 0, 0, 1105, 1107, 7, 2, 0, 0, 1106, 1105, 1, + 0, 0, 0, 1107, 1110, 1, 0, 0, 0, 1108, 1106, 1, 0, 0, 0, 1108, 1109, 1, 0, 0, 0, 1109, 1112, + 1, 0, 0, 0, 1110, 1108, 1, 0, 0, 0, 1111, 1103, 1, 0, 0, 0, 1111, 1104, 1, 0, 0, 0, 1112, + 285, 1, 0, 0, 0, 1113, 1115, 7, 20, 0, 0, 1114, 1116, 7, 21, 0, 0, 1115, 1114, 1, 0, 0, 0, + 1115, 1116, 1, 0, 0, 0, 1116, 1118, 1, 0, 0, 0, 1117, 1119, 7, 2, 0, 0, 1118, 1117, 1, 0, 0, + 0, 1119, 1120, 1, 0, 0, 0, 1120, 1118, 1, 0, 0, 0, 1120, 1121, 1, 0, 0, 0, 1121, 287, 1, 0, + 0, 0, 1122, 1125, 3, 290, 144, 0, 1123, 1125, 7, 22, 0, 0, 1124, 1122, 1, 0, 0, 0, 1124, + 1123, 1, 0, 0, 0, 1125, 289, 1, 0, 0, 0, 1126, 1130, 7, 23, 0, 0, 1127, 1128, 5, 92, 0, 0, + 1128, 1130, 3, 270, 134, 0, 1129, 1126, 1, 0, 0, 0, 1129, 1127, 1, 0, 0, 0, 1130, 291, 1, 0, + 0, 0, 1131, 1142, 8, 24, 0, 0, 1132, 1142, 3, 298, 148, 0, 1133, 1137, 5, 91, 0, 0, 1134, + 1136, 3, 296, 147, 0, 1135, 1134, 1, 0, 0, 0, 1136, 1139, 1, 0, 0, 0, 1137, 1135, 1, 0, 0, + 0, 1137, 1138, 1, 0, 0, 0, 1138, 1140, 1, 0, 0, 0, 1139, 1137, 1, 0, 0, 0, 1140, 1142, 5, + 93, 0, 0, 1141, 1131, 1, 0, 0, 0, 1141, 1132, 1, 0, 0, 0, 1141, 1133, 1, 0, 0, 0, 1142, 293, + 1, 0, 0, 0, 1143, 1154, 8, 25, 0, 0, 1144, 1154, 3, 298, 148, 0, 1145, 1149, 5, 91, 0, 0, + 1146, 1148, 3, 296, 147, 0, 1147, 1146, 1, 0, 0, 0, 1148, 1151, 1, 0, 0, 0, 1149, 1147, 1, + 0, 0, 0, 1149, 1150, 1, 0, 0, 0, 1150, 1152, 1, 0, 0, 0, 1151, 1149, 1, 0, 0, 0, 1152, 1154, + 5, 93, 0, 0, 1153, 1143, 1, 0, 0, 0, 1153, 1144, 1, 0, 0, 0, 1153, 1145, 1, 0, 0, 0, 1154, + 295, 1, 0, 0, 0, 1155, 1158, 8, 26, 0, 0, 1156, 1158, 3, 298, 148, 0, 1157, 1155, 1, 0, 0, + 0, 1157, 1156, 1, 0, 0, 0, 1158, 297, 1, 0, 0, 0, 1159, 1160, 5, 92, 0, 0, 1160, 1161, 8, 0, + 0, 0, 1161, 299, 1, 0, 0, 0, 47, 0, 1, 307, 316, 330, 340, 348, 521, 529, 533, 540, 544, + 548, 550, 558, 565, 575, 584, 593, 604, 615, 941, 948, 956, 960, 972, 988, 1010, 1040, 1046, + 1053, 1057, 1075, 1079, 1086, 1096, 1108, 1111, 1115, 1120, 1124, 1129, 1137, 1141, 1149, + 1153, 1157, 11, 0, 1, 0, 1, 8, 0, 4, 0, 0, 1, 10, 1, 1, 119, 2, 1, 120, 3, 5, 1, 0, 0, 2, 0, + 1, 126, 4, 7, 121, 0, 5, 0, 0, + ] +} diff --git a/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptLexerBase.swift b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptLexerBase.swift new file mode 100644 index 000000000..3d810c02b --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptLexerBase.swift @@ -0,0 +1,143 @@ +import Antlr4 + +open class JavaScriptLexerBase: Lexer { + private let DEFAULT_CHANNEL: Int = 0 + private let HIDDEN_CHANNEL: Int = 1 + + /** + * Stores values of nested modes. By default mode is strict or + * defined externally (_useStrictDefault) + */ + private var _scopeStrictModes: [Bool] = [] + + private var _lastToken: Token? = nil + /** + * Default value of strict mode + * Can be defined externally by setUseStrictDefault + */ + private var _useStrictDefault: Bool = false + /** + * Current value of strict mode + * Can be defined during parsing, see StringFunctions.js and StringGlobal.js samples + */ + private var _useStrictCurrent: Bool = false + /** + * Keeps track of the the current depth of nested template string backticks. + * E.g. after the X in: + * + * `${a ? `${X + * + * _templateDepth will be 2. This variable is needed to determine if a `}` is a + * plain CloseBrace, or one that closes an expression inside a template string. + */ + private var _templateDepth: Int = 0 + + public func isStartOfFile() -> Bool { + return _lastToken == nil + } + + public func getStrictDefault() -> Bool { + return _useStrictDefault + } + + public func setUseStrictDefault(_ value: Bool) { + _useStrictDefault = value + _useStrictCurrent = value + } + + public func isStrictMode() -> Bool { + return _useStrictCurrent + } + + public func isInTemplateString() -> Bool { + return self._templateDepth > 0 + } + + /** + * Return the next token from the character stream and records this last + * token in case it resides on the default channel. This recorded token + * is used to determine when the lexer could possibly match a regex + * literal. Also changes _scopeStrictModes stack if tokenize special + * string 'use strict' + * + * @return the next token from the character stream. + */ + public override func nextToken() throws -> Token { + let next = try super.nextToken() + + if next.getChannel() == DEFAULT_CHANNEL { + // Keep track of the last token on the default channel. + self._lastToken = next + } + + return next + } + + func processOpenBrace() { + _useStrictCurrent = _scopeStrictModes.last == true ? true : _useStrictDefault + _scopeStrictModes.append(_useStrictCurrent) + } + + func processCloseBrace() { + _useStrictCurrent = _scopeStrictModes.popLast() ?? _useStrictDefault + } + + func processStringLiteral() { + guard (_lastToken == nil || _lastToken?.getType() == JavaScriptLexer.OpenBrace) else { + return + } + + let text = getText() + if text == "\"use strict\"" || text == "'use strict'" { + if !_scopeStrictModes.isEmpty { + _scopeStrictModes.removeLast() + } + + _useStrictCurrent = true + _scopeStrictModes.append(_useStrictCurrent) + } + } + + public func increaseTemplateDepth() { + self._templateDepth += 1 + } + + public func decreaseTemplateDepth() { + self._templateDepth -= 1 + } + + /** + * Returns {@code true} if the lexer can match a regex literal. + */ + func isRegexPossible() -> Bool { + if self._lastToken == nil { + // No token has been produced yet: at the start of the input, + // no division is possible, so a regex literal _is_ possible. + return true + } + + guard let tokenType = self._lastToken?.getType() else { + return true + } + + switch tokenType { + case JavaScriptLexer.Identifier, + JavaScriptLexer.NullLiteral, + JavaScriptLexer.BooleanLiteral, + JavaScriptLexer.This, + JavaScriptLexer.CloseBracket, + JavaScriptLexer.CloseParen, + JavaScriptLexer.OctalIntegerLiteral, + JavaScriptLexer.DecimalLiteral, + JavaScriptLexer.HexIntegerLiteral, + JavaScriptLexer.StringLiteral, + JavaScriptLexer.PlusPlus, + JavaScriptLexer.MinusMinus: + // After any of the tokens above, no regex literal can follow. + return false + default: + // In all other cases, a regex literal _is_ possible. + return true + } + } +} diff --git a/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParser.swift b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParser.swift new file mode 100644 index 000000000..19d1ea2cc --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParser.swift @@ -0,0 +1,9993 @@ +// Generated from java-escape by ANTLR 4.11.1 +import Antlr4 + +open class JavaScriptParser: JavaScriptParserBase { + + public class State { + public let _ATN: ATN = try! ATNDeserializer().deserialize(_serializedATN) + internal var _decisionToDFA: [DFA] + internal let _sharedContextCache: PredictionContextCache = PredictionContextCache() + public init() { + var decisionToDFA = [DFA]() + let length = _ATN.getNumberOfDecisions() + for i in 0..>'", "'<<'", "'>>>'", "'<'", "'>'", "'<='", "'>='", + "'=='", "'!='", "'==='", "'!=='", "'&'", "'^'", "'|'", "'&&'", "'||'", "'*='", "'/='", + "'%='", "'+='", "'-='", "'<<='", "'>>='", "'>>>='", "'&='", "'^='", "'|='", "'**='", "'=>'", + "'null'", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, "'break'", "'do'", + "'instanceof'", "'typeof'", "'case'", "'else'", "'new'", "'var'", "'catch'", "'finally'", + "'return'", "'void'", "'continue'", "'for'", "'switch'", "'while'", "'debugger'", + "'function'", "'this'", "'with'", "'default'", "'if'", "'throw'", "'delete'", "'in'", + "'try'", "'as'", "'from'", "'class'", "'enum'", "'extends'", "'super'", "'const'", + "'export'", "'import'", "'async'", "'await'", "'yield'", "'implements'", nil, nil, + "'private'", "'public'", "'interface'", "'package'", "'protected'", "'static'", nil, nil, + nil, nil, nil, nil, nil, nil, "'${'", + ] + private static let _SYMBOLIC_NAMES: [String?] = [ + nil, "HashBangLine", "MultiLineComment", "SingleLineComment", "RegularExpressionLiteral", + "OpenBracket", "CloseBracket", "OpenParen", "CloseParen", "OpenBrace", "TemplateCloseBrace", + "CloseBrace", "SemiColon", "Comma", "Assign", "QuestionMark", "QuestionMarkDot", "Colon", + "Ellipsis", "Dot", "PlusPlus", "MinusMinus", "Plus", "Minus", "BitNot", "Not", "Multiply", + "Divide", "Modulus", "Power", "NullCoalesce", "Hashtag", "RightShiftArithmetic", + "LeftShiftArithmetic", "RightShiftLogical", "LessThan", "MoreThan", "LessThanEquals", + "GreaterThanEquals", "Equals_", "NotEquals", "IdentityEquals", "IdentityNotEquals", + "BitAnd", "BitXOr", "BitOr", "And", "Or", "MultiplyAssign", "DivideAssign", "ModulusAssign", + "PlusAssign", "MinusAssign", "LeftShiftArithmeticAssign", "RightShiftArithmeticAssign", + "RightShiftLogicalAssign", "BitAndAssign", "BitXorAssign", "BitOrAssign", "PowerAssign", + "ARROW", "NullLiteral", "BooleanLiteral", "DecimalLiteral", "HexIntegerLiteral", + "OctalIntegerLiteral", "OctalIntegerLiteral2", "BinaryIntegerLiteral", + "BigHexIntegerLiteral", "BigOctalIntegerLiteral", "BigBinaryIntegerLiteral", + "BigDecimalIntegerLiteral", "Break", "Do", "Instanceof", "Typeof", "Case", "Else", "New", + "Var", "Catch", "Finally", "Return", "Void", "Continue", "For", "Switch", "While", + "Debugger", "Function_", "This", "With", "Default", "If", "Throw", "Delete", "In", "Try", + "As", "From", "Class", "Enum", "Extends", "Super", "Const", "Export", "Import", "Async", + "Await", "Yield", "Implements", "StrictLet", "NonStrictLet", "Private", "Public", + "Interface", "Package", "Protected", "Static", "Identifier", "StringLiteral", "BackTick", + "WhiteSpaces", "LineTerminator", "HtmlComment", "CDataComment", "UnexpectedCharacter", + "TemplateStringStartExpression", "TemplateStringAtom", + ] + public static let VOCABULARY = Vocabulary(_LITERAL_NAMES, _SYMBOLIC_NAMES) + + override open func getGrammarFileName() -> String { return "java-escape" } + + override open func getRuleNames() -> [String] { return JavaScriptParser.ruleNames } + + override open func getSerializedATN() -> [Int] { return JavaScriptParser._serializedATN } + + override open func getATN() -> ATN { return _ATN } + + override open func getVocabulary() -> Vocabulary { return JavaScriptParser.VOCABULARY } + + override public convenience init(_ input: TokenStream) throws { try self.init(input, State()) } + + public required init(_ input: TokenStream, _ state: State) throws { + self.state = state + + RuntimeMetaData.checkVersion("4.11.1", RuntimeMetaData.VERSION) + try super.init(input) + _interp = ParserATNSimulator(self, _ATN, _decisionToDFA, _sharedContextCache) + } + + public class ProgramContext: ParserRuleContext { + open func EOF() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.EOF.rawValue, 0) + } + open func HashBangLine() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.HashBangLine.rawValue, 0) + } + open func sourceElements() -> SourceElementsContext? { + return getRuleContext(SourceElementsContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_program } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.enterProgram(self) } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitProgram(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitProgram(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitProgram(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func program() throws -> ProgramContext { + var _localctx: ProgramContext + _localctx = ProgramContext(_ctx, getState()) + try enterRule(_localctx, 0, JavaScriptParser.RULE_program) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(155) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 0, _ctx) { + case 1: + setState(154) + try match(JavaScriptParser.Tokens.HashBangLine.rawValue) + + break + default: break + } + setState(158) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 1, _ctx) { + case 1: + setState(157) + try sourceElements() + + break + default: break + } + setState(160) + try match(JavaScriptParser.Tokens.EOF.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class SourceElementContext: ParserRuleContext { + open func statement() -> StatementContext? { + return getRuleContext(StatementContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_sourceElement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterSourceElement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitSourceElement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitSourceElement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitSourceElement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func sourceElement() throws -> SourceElementContext { + var _localctx: SourceElementContext + _localctx = SourceElementContext(_ctx, getState()) + try enterRule(_localctx, 2, JavaScriptParser.RULE_sourceElement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(162) + try statement() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class StatementContext: ParserRuleContext { + open func block() -> BlockContext? { return getRuleContext(BlockContext.self, 0) } + open func variableStatement() -> VariableStatementContext? { + return getRuleContext(VariableStatementContext.self, 0) + } + open func importStatement() -> ImportStatementContext? { + return getRuleContext(ImportStatementContext.self, 0) + } + open func exportStatement() -> ExportStatementContext? { + return getRuleContext(ExportStatementContext.self, 0) + } + open func emptyStatement_() -> EmptyStatement_Context? { + return getRuleContext(EmptyStatement_Context.self, 0) + } + open func classDeclaration() -> ClassDeclarationContext? { + return getRuleContext(ClassDeclarationContext.self, 0) + } + open func expressionStatement() -> ExpressionStatementContext? { + return getRuleContext(ExpressionStatementContext.self, 0) + } + open func ifStatement() -> IfStatementContext? { + return getRuleContext(IfStatementContext.self, 0) + } + open func iterationStatement() -> IterationStatementContext? { + return getRuleContext(IterationStatementContext.self, 0) + } + open func continueStatement() -> ContinueStatementContext? { + return getRuleContext(ContinueStatementContext.self, 0) + } + open func breakStatement() -> BreakStatementContext? { + return getRuleContext(BreakStatementContext.self, 0) + } + open func returnStatement() -> ReturnStatementContext? { + return getRuleContext(ReturnStatementContext.self, 0) + } + open func yieldStatement() -> YieldStatementContext? { + return getRuleContext(YieldStatementContext.self, 0) + } + open func withStatement() -> WithStatementContext? { + return getRuleContext(WithStatementContext.self, 0) + } + open func labelledStatement() -> LabelledStatementContext? { + return getRuleContext(LabelledStatementContext.self, 0) + } + open func switchStatement() -> SwitchStatementContext? { + return getRuleContext(SwitchStatementContext.self, 0) + } + open func throwStatement() -> ThrowStatementContext? { + return getRuleContext(ThrowStatementContext.self, 0) + } + open func tryStatement() -> TryStatementContext? { + return getRuleContext(TryStatementContext.self, 0) + } + open func debuggerStatement() -> DebuggerStatementContext? { + return getRuleContext(DebuggerStatementContext.self, 0) + } + open func functionDeclaration() -> FunctionDeclarationContext? { + return getRuleContext(FunctionDeclarationContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_statement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitStatement(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func statement() throws -> StatementContext { + var _localctx: StatementContext + _localctx = StatementContext(_ctx, getState()) + try enterRule(_localctx, 4, JavaScriptParser.RULE_statement) + defer { try! exitRule() } + do { + setState(184) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 2, _ctx) { + case 1: + try enterOuterAlt(_localctx, 1) + setState(164) + try block() + + break + case 2: + try enterOuterAlt(_localctx, 2) + setState(165) + try variableStatement() + + break + case 3: + try enterOuterAlt(_localctx, 3) + setState(166) + try importStatement() + + break + case 4: + try enterOuterAlt(_localctx, 4) + setState(167) + try exportStatement() + + break + case 5: + try enterOuterAlt(_localctx, 5) + setState(168) + try emptyStatement_() + + break + case 6: + try enterOuterAlt(_localctx, 6) + setState(169) + try classDeclaration() + + break + case 7: + try enterOuterAlt(_localctx, 7) + setState(170) + try expressionStatement() + + break + case 8: + try enterOuterAlt(_localctx, 8) + setState(171) + try ifStatement() + + break + case 9: + try enterOuterAlt(_localctx, 9) + setState(172) + try iterationStatement() + + break + case 10: + try enterOuterAlt(_localctx, 10) + setState(173) + try continueStatement() + + break + case 11: + try enterOuterAlt(_localctx, 11) + setState(174) + try breakStatement() + + break + case 12: + try enterOuterAlt(_localctx, 12) + setState(175) + try returnStatement() + + break + case 13: + try enterOuterAlt(_localctx, 13) + setState(176) + try yieldStatement() + + break + case 14: + try enterOuterAlt(_localctx, 14) + setState(177) + try withStatement() + + break + case 15: + try enterOuterAlt(_localctx, 15) + setState(178) + try labelledStatement() + + break + case 16: + try enterOuterAlt(_localctx, 16) + setState(179) + try switchStatement() + + break + case 17: + try enterOuterAlt(_localctx, 17) + setState(180) + try throwStatement() + + break + case 18: + try enterOuterAlt(_localctx, 18) + setState(181) + try tryStatement() + + break + case 19: + try enterOuterAlt(_localctx, 19) + setState(182) + try debuggerStatement() + + break + case 20: + try enterOuterAlt(_localctx, 20) + setState(183) + try functionDeclaration() + + break + default: break + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class BlockContext: ParserRuleContext { + open func OpenBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenBrace.rawValue, 0) + } + open func CloseBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseBrace.rawValue, 0) + } + open func statementList() -> StatementListContext? { + return getRuleContext(StatementListContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_block } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.enterBlock(self) } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitBlock(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitBlock(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitBlock(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func block() throws -> BlockContext { + var _localctx: BlockContext + _localctx = BlockContext(_ctx, getState()) + try enterRule(_localctx, 6, JavaScriptParser.RULE_block) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(186) + try match(JavaScriptParser.Tokens.OpenBrace.rawValue) + setState(188) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 3, _ctx) { + case 1: + setState(187) + try statementList() + + break + default: break + } + setState(190) + try match(JavaScriptParser.Tokens.CloseBrace.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class StatementListContext: ParserRuleContext { + open func statement() -> [StatementContext] { + return getRuleContexts(StatementContext.self) + } + open func statement(_ i: Int) -> StatementContext? { + return getRuleContext(StatementContext.self, i) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_statementList } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterStatementList(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitStatementList(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitStatementList(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitStatementList(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func statementList() throws -> StatementListContext { + var _localctx: StatementListContext + _localctx = StatementListContext(_ctx, getState()) + try enterRule(_localctx, 8, JavaScriptParser.RULE_statementList) + defer { try! exitRule() } + do { + var _alt: Int + try enterOuterAlt(_localctx, 1) + setState(193) + try _errHandler.sync(self) + _alt = 1 + repeat { + switch _alt { + case 1: + setState(192) + try statement() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + setState(195) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 4, _ctx) + } while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ImportStatementContext: ParserRuleContext { + open func Import() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Import.rawValue, 0) + } + open func importFromBlock() -> ImportFromBlockContext? { + return getRuleContext(ImportFromBlockContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_importStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterImportStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitImportStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitImportStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitImportStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func importStatement() throws -> ImportStatementContext { + var _localctx: ImportStatementContext + _localctx = ImportStatementContext(_ctx, getState()) + try enterRule(_localctx, 10, JavaScriptParser.RULE_importStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(197) + try match(JavaScriptParser.Tokens.Import.rawValue) + setState(198) + try importFromBlock() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ImportFromBlockContext: ParserRuleContext { + open func importFrom() -> ImportFromContext? { + return getRuleContext(ImportFromContext.self, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + open func importNamespace() -> ImportNamespaceContext? { + return getRuleContext(ImportNamespaceContext.self, 0) + } + open func moduleItems() -> ModuleItemsContext? { + return getRuleContext(ModuleItemsContext.self, 0) + } + open func importDefault() -> ImportDefaultContext? { + return getRuleContext(ImportDefaultContext.self, 0) + } + open func StringLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.StringLiteral.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_importFromBlock } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterImportFromBlock(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitImportFromBlock(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitImportFromBlock(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitImportFromBlock(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func importFromBlock() throws -> ImportFromBlockContext { + var _localctx: ImportFromBlockContext + _localctx = ImportFromBlockContext(_ctx, getState()) + try enterRule(_localctx, 12, JavaScriptParser.RULE_importFromBlock) + defer { try! exitRule() } + do { + setState(212) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .OpenBrace, .Multiply, .NullLiteral, .BooleanLiteral, .Break, .Do, .Instanceof, + .Typeof, .Case, .Else, .New, .Var, .Catch, .Finally, .Return, .Void, .Continue, + .For, .Switch, .While, .Debugger, .Function_, .This, .With, .Default, .If, .Throw, + .Delete, .In, .Try, .As, .From, .Class, .Enum, .Extends, .Super, .Const, .Export, + .Import, .Async, .Await, .Yield, .Implements, .StrictLet, .NonStrictLet, .Private, + .Public, .Interface, .Package, .Protected, .Static, .Identifier: + try enterOuterAlt(_localctx, 1) + setState(201) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 5, _ctx) { + case 1: + setState(200) + try importDefault() + + break + default: break + } + setState(205) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .Multiply, .NullLiteral, .BooleanLiteral, .Break, .Do, .Instanceof, .Typeof, + .Case, .Else, .New, .Var, .Catch, .Finally, .Return, .Void, .Continue, .For, + .Switch, .While, .Debugger, .Function_, .This, .With, .Default, .If, .Throw, + .Delete, .In, .Try, .As, .From, .Class, .Enum, .Extends, .Super, .Const, + .Export, .Import, .Async, .Await, .Yield, .Implements, .StrictLet, + .NonStrictLet, .Private, .Public, .Interface, .Package, .Protected, .Static, + .Identifier: + setState(203) + try importNamespace() + + break + + case .OpenBrace: + setState(204) + try moduleItems() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + setState(207) + try importFrom() + setState(208) + try eos() + + break + + case .StringLiteral: + try enterOuterAlt(_localctx, 2) + setState(210) + try match(JavaScriptParser.Tokens.StringLiteral.rawValue) + setState(211) + try eos() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ModuleItemsContext: ParserRuleContext { + open func OpenBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenBrace.rawValue, 0) + } + open func CloseBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseBrace.rawValue, 0) + } + open func aliasName() -> [AliasNameContext] { + return getRuleContexts(AliasNameContext.self) + } + open func aliasName(_ i: Int) -> AliasNameContext? { + return getRuleContext(AliasNameContext.self, i) + } + open func Comma() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.Comma.rawValue) + } + open func Comma(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Comma.rawValue, i) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_moduleItems } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterModuleItems(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitModuleItems(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitModuleItems(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitModuleItems(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func moduleItems() throws -> ModuleItemsContext { + var _localctx: ModuleItemsContext + _localctx = ModuleItemsContext(_ctx, getState()) + try enterRule(_localctx, 14, JavaScriptParser.RULE_moduleItems) + var _la: Int = 0 + defer { try! exitRule() } + do { + var _alt: Int + try enterOuterAlt(_localctx, 1) + setState(214) + try match(JavaScriptParser.Tokens.OpenBrace.rawValue) + setState(220) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 8, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + setState(215) + try aliasName() + setState(216) + try match(JavaScriptParser.Tokens.Comma.rawValue) + + } + setState(222) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 8, _ctx) + } + setState(227) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64((_la - 61)) & ~0x3f) == 0 + && ((Int64(1) << (_la - 61)) & 576_460_752_303_421_443) != 0 + { + setState(223) + try aliasName() + setState(225) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Comma.rawValue { + setState(224) + try match(JavaScriptParser.Tokens.Comma.rawValue) + + } + + } + + setState(229) + try match(JavaScriptParser.Tokens.CloseBrace.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ImportDefaultContext: ParserRuleContext { + open func aliasName() -> AliasNameContext? { + return getRuleContext(AliasNameContext.self, 0) + } + open func Comma() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Comma.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_importDefault } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterImportDefault(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitImportDefault(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitImportDefault(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitImportDefault(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func importDefault() throws -> ImportDefaultContext { + var _localctx: ImportDefaultContext + _localctx = ImportDefaultContext(_ctx, getState()) + try enterRule(_localctx, 16, JavaScriptParser.RULE_importDefault) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(231) + try aliasName() + setState(232) + try match(JavaScriptParser.Tokens.Comma.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ImportNamespaceContext: ParserRuleContext { + open func Multiply() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Multiply.rawValue, 0) + } + open func identifierName() -> [IdentifierNameContext] { + return getRuleContexts(IdentifierNameContext.self) + } + open func identifierName(_ i: Int) -> IdentifierNameContext? { + return getRuleContext(IdentifierNameContext.self, i) + } + open func As() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.As.rawValue, 0) } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_importNamespace } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterImportNamespace(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitImportNamespace(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitImportNamespace(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitImportNamespace(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func importNamespace() throws -> ImportNamespaceContext { + var _localctx: ImportNamespaceContext + _localctx = ImportNamespaceContext(_ctx, getState()) + try enterRule(_localctx, 18, JavaScriptParser.RULE_importNamespace) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(236) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .Multiply: + setState(234) + try match(JavaScriptParser.Tokens.Multiply.rawValue) + + break + case .NullLiteral, .BooleanLiteral, .Break, .Do, .Instanceof, .Typeof, .Case, .Else, + .New, .Var, .Catch, .Finally, .Return, .Void, .Continue, .For, .Switch, .While, + .Debugger, .Function_, .This, .With, .Default, .If, .Throw, .Delete, .In, .Try, .As, + .From, .Class, .Enum, .Extends, .Super, .Const, .Export, .Import, .Async, .Await, + .Yield, .Implements, .StrictLet, .NonStrictLet, .Private, .Public, .Interface, + .Package, .Protected, .Static, .Identifier: + setState(235) + try identifierName() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + setState(240) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.As.rawValue { + setState(238) + try match(JavaScriptParser.Tokens.As.rawValue) + setState(239) + try identifierName() + + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ImportFromContext: ParserRuleContext { + open func From() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.From.rawValue, 0) + } + open func StringLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.StringLiteral.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_importFrom } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterImportFrom(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitImportFrom(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitImportFrom(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitImportFrom(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func importFrom() throws -> ImportFromContext { + var _localctx: ImportFromContext + _localctx = ImportFromContext(_ctx, getState()) + try enterRule(_localctx, 20, JavaScriptParser.RULE_importFrom) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(242) + try match(JavaScriptParser.Tokens.From.rawValue) + setState(243) + try match(JavaScriptParser.Tokens.StringLiteral.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class AliasNameContext: ParserRuleContext { + open func identifierName() -> [IdentifierNameContext] { + return getRuleContexts(IdentifierNameContext.self) + } + open func identifierName(_ i: Int) -> IdentifierNameContext? { + return getRuleContext(IdentifierNameContext.self, i) + } + open func As() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.As.rawValue, 0) } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_aliasName } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterAliasName(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitAliasName(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitAliasName(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitAliasName(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func aliasName() throws -> AliasNameContext { + var _localctx: AliasNameContext + _localctx = AliasNameContext(_ctx, getState()) + try enterRule(_localctx, 22, JavaScriptParser.RULE_aliasName) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(245) + try identifierName() + setState(248) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.As.rawValue { + setState(246) + try match(JavaScriptParser.Tokens.As.rawValue) + setState(247) + try identifierName() + + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ExportStatementContext: ParserRuleContext { + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_exportStatement } + } + public class ExportDefaultDeclarationContext: ExportStatementContext { + open func Export() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Export.rawValue, 0) + } + open func Default() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Default.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + + public init(_ ctx: ExportStatementContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterExportDefaultDeclaration(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitExportDefaultDeclaration(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitExportDefaultDeclaration(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitExportDefaultDeclaration(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ExportDeclarationContext: ExportStatementContext { + open func Export() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Export.rawValue, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + open func exportFromBlock() -> ExportFromBlockContext? { + return getRuleContext(ExportFromBlockContext.self, 0) + } + open func declaration() -> DeclarationContext? { + return getRuleContext(DeclarationContext.self, 0) + } + + public init(_ ctx: ExportStatementContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterExportDeclaration(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitExportDeclaration(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitExportDeclaration(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitExportDeclaration(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func exportStatement() throws -> ExportStatementContext { + var _localctx: ExportStatementContext + _localctx = ExportStatementContext(_ctx, getState()) + try enterRule(_localctx, 24, JavaScriptParser.RULE_exportStatement) + defer { try! exitRule() } + do { + setState(262) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 15, _ctx) { + case 1: + _localctx = ExportDeclarationContext(_localctx) + try enterOuterAlt(_localctx, 1) + setState(250) + try match(JavaScriptParser.Tokens.Export.rawValue) + setState(253) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 14, _ctx) { + case 1: + setState(251) + try exportFromBlock() + + break + case 2: + setState(252) + try declaration() + + break + default: break + } + setState(255) + try eos() + + break + case 2: + _localctx = ExportDefaultDeclarationContext(_localctx) + try enterOuterAlt(_localctx, 2) + setState(257) + try match(JavaScriptParser.Tokens.Export.rawValue) + setState(258) + try match(JavaScriptParser.Tokens.Default.rawValue) + setState(259) + try singleExpression(0) + setState(260) + try eos() + + break + default: break + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ExportFromBlockContext: ParserRuleContext { + open func importNamespace() -> ImportNamespaceContext? { + return getRuleContext(ImportNamespaceContext.self, 0) + } + open func importFrom() -> ImportFromContext? { + return getRuleContext(ImportFromContext.self, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + open func moduleItems() -> ModuleItemsContext? { + return getRuleContext(ModuleItemsContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_exportFromBlock } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterExportFromBlock(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitExportFromBlock(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitExportFromBlock(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitExportFromBlock(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func exportFromBlock() throws -> ExportFromBlockContext { + var _localctx: ExportFromBlockContext + _localctx = ExportFromBlockContext(_ctx, getState()) + try enterRule(_localctx, 26, JavaScriptParser.RULE_exportFromBlock) + defer { try! exitRule() } + do { + setState(274) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .Multiply, .NullLiteral, .BooleanLiteral, .Break, .Do, .Instanceof, .Typeof, .Case, + .Else, .New, .Var, .Catch, .Finally, .Return, .Void, .Continue, .For, .Switch, + .While, .Debugger, .Function_, .This, .With, .Default, .If, .Throw, .Delete, .In, + .Try, .As, .From, .Class, .Enum, .Extends, .Super, .Const, .Export, .Import, .Async, + .Await, .Yield, .Implements, .StrictLet, .NonStrictLet, .Private, .Public, + .Interface, .Package, .Protected, .Static, .Identifier: + try enterOuterAlt(_localctx, 1) + setState(264) + try importNamespace() + setState(265) + try importFrom() + setState(266) + try eos() + + break + + case .OpenBrace: + try enterOuterAlt(_localctx, 2) + setState(268) + try moduleItems() + setState(270) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 16, _ctx) { + case 1: + setState(269) + try importFrom() + + break + default: break + } + setState(272) + try eos() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class DeclarationContext: ParserRuleContext { + open func variableStatement() -> VariableStatementContext? { + return getRuleContext(VariableStatementContext.self, 0) + } + open func classDeclaration() -> ClassDeclarationContext? { + return getRuleContext(ClassDeclarationContext.self, 0) + } + open func functionDeclaration() -> FunctionDeclarationContext? { + return getRuleContext(FunctionDeclarationContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_declaration } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterDeclaration(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitDeclaration(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitDeclaration(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitDeclaration(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func declaration() throws -> DeclarationContext { + var _localctx: DeclarationContext + _localctx = DeclarationContext(_ctx, getState()) + try enterRule(_localctx, 28, JavaScriptParser.RULE_declaration) + defer { try! exitRule() } + do { + setState(279) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .Var, .Const, .StrictLet, .NonStrictLet: + try enterOuterAlt(_localctx, 1) + setState(276) + try variableStatement() + + break + + case .Class: + try enterOuterAlt(_localctx, 2) + setState(277) + try classDeclaration() + + break + case .Function_, .Async: + try enterOuterAlt(_localctx, 3) + setState(278) + try functionDeclaration() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class VariableStatementContext: ParserRuleContext { + open func variableDeclarationList() -> VariableDeclarationListContext? { + return getRuleContext(VariableDeclarationListContext.self, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_variableStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterVariableStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitVariableStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitVariableStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitVariableStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func variableStatement() throws -> VariableStatementContext { + var _localctx: VariableStatementContext + _localctx = VariableStatementContext(_ctx, getState()) + try enterRule(_localctx, 30, JavaScriptParser.RULE_variableStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(281) + try variableDeclarationList() + setState(282) + try eos() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class VariableDeclarationListContext: ParserRuleContext { + open func varModifier() -> VarModifierContext? { + return getRuleContext(VarModifierContext.self, 0) + } + open func variableDeclaration() -> [VariableDeclarationContext] { + return getRuleContexts(VariableDeclarationContext.self) + } + open func variableDeclaration(_ i: Int) -> VariableDeclarationContext? { + return getRuleContext(VariableDeclarationContext.self, i) + } + open func Comma() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.Comma.rawValue) + } + open func Comma(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Comma.rawValue, i) + } + override open func getRuleIndex() -> Int { + return JavaScriptParser.RULE_variableDeclarationList + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterVariableDeclarationList(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitVariableDeclarationList(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitVariableDeclarationList(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitVariableDeclarationList(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func variableDeclarationList() throws -> VariableDeclarationListContext + { + var _localctx: VariableDeclarationListContext + _localctx = VariableDeclarationListContext(_ctx, getState()) + try enterRule(_localctx, 32, JavaScriptParser.RULE_variableDeclarationList) + defer { try! exitRule() } + do { + var _alt: Int + try enterOuterAlt(_localctx, 1) + setState(284) + try varModifier() + setState(285) + try variableDeclaration() + setState(290) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 19, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + setState(286) + try match(JavaScriptParser.Tokens.Comma.rawValue) + setState(287) + try variableDeclaration() + + } + setState(292) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 19, _ctx) + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class VariableDeclarationContext: ParserRuleContext { + open func assignable() -> AssignableContext? { + return getRuleContext(AssignableContext.self, 0) + } + open func Assign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Assign.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + override open func getRuleIndex() -> Int { + return JavaScriptParser.RULE_variableDeclaration + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterVariableDeclaration(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitVariableDeclaration(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitVariableDeclaration(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitVariableDeclaration(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func variableDeclaration() throws -> VariableDeclarationContext { + var _localctx: VariableDeclarationContext + _localctx = VariableDeclarationContext(_ctx, getState()) + try enterRule(_localctx, 34, JavaScriptParser.RULE_variableDeclaration) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(293) + try assignable() + setState(296) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 20, _ctx) { + case 1: + setState(294) + try match(JavaScriptParser.Tokens.Assign.rawValue) + setState(295) + try singleExpression(0) + + break + default: break + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class EmptyStatement_Context: ParserRuleContext { + open func SemiColon() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.SemiColon.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_emptyStatement_ } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterEmptyStatement_(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitEmptyStatement_(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitEmptyStatement_(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitEmptyStatement_(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func emptyStatement_() throws -> EmptyStatement_Context { + var _localctx: EmptyStatement_Context + _localctx = EmptyStatement_Context(_ctx, getState()) + try enterRule(_localctx, 36, JavaScriptParser.RULE_emptyStatement_) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(298) + try match(JavaScriptParser.Tokens.SemiColon.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ExpressionStatementContext: ParserRuleContext { + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + override open func getRuleIndex() -> Int { + return JavaScriptParser.RULE_expressionStatement + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterExpressionStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitExpressionStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitExpressionStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitExpressionStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func expressionStatement() throws -> ExpressionStatementContext { + var _localctx: ExpressionStatementContext + _localctx = ExpressionStatementContext(_ctx, getState()) + try enterRule(_localctx, 38, JavaScriptParser.RULE_expressionStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(300) + if !(try self.notOpenBraceAndNotFunction()) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.notOpenBraceAndNotFunction()")) + } + setState(301) + try expressionSequence() + setState(302) + try eos() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class IfStatementContext: ParserRuleContext { + open func If() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.If.rawValue, 0) } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func statement() -> [StatementContext] { + return getRuleContexts(StatementContext.self) + } + open func statement(_ i: Int) -> StatementContext? { + return getRuleContext(StatementContext.self, i) + } + open func Else() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Else.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_ifStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterIfStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitIfStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitIfStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitIfStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func ifStatement() throws -> IfStatementContext { + var _localctx: IfStatementContext + _localctx = IfStatementContext(_ctx, getState()) + try enterRule(_localctx, 40, JavaScriptParser.RULE_ifStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(304) + try match(JavaScriptParser.Tokens.If.rawValue) + setState(305) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(306) + try expressionSequence() + setState(307) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(308) + try statement() + setState(311) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 21, _ctx) { + case 1: + setState(309) + try match(JavaScriptParser.Tokens.Else.rawValue) + setState(310) + try statement() + + break + default: break + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class IterationStatementContext: ParserRuleContext { + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_iterationStatement } + } + public class DoStatementContext: IterationStatementContext { + open func Do() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.Do.rawValue, 0) } + open func statement() -> StatementContext? { + return getRuleContext(StatementContext.self, 0) + } + open func While() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.While.rawValue, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + + public init(_ ctx: IterationStatementContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterDoStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitDoStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitDoStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitDoStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class WhileStatementContext: IterationStatementContext { + open func While() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.While.rawValue, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func statement() -> StatementContext? { + return getRuleContext(StatementContext.self, 0) + } + + public init(_ ctx: IterationStatementContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterWhileStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitWhileStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitWhileStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitWhileStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ForStatementContext: IterationStatementContext { + open func For() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.For.rawValue, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func SemiColon() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.SemiColon.rawValue) + } + open func SemiColon(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.SemiColon.rawValue, i) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func statement() -> StatementContext? { + return getRuleContext(StatementContext.self, 0) + } + open func expressionSequence() -> [ExpressionSequenceContext] { + return getRuleContexts(ExpressionSequenceContext.self) + } + open func expressionSequence(_ i: Int) -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, i) + } + open func variableDeclarationList() -> VariableDeclarationListContext? { + return getRuleContext(VariableDeclarationListContext.self, 0) + } + + public init(_ ctx: IterationStatementContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterForStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitForStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitForStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitForStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ForInStatementContext: IterationStatementContext { + open func For() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.For.rawValue, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func In() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.In.rawValue, 0) } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func statement() -> StatementContext? { + return getRuleContext(StatementContext.self, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func variableDeclarationList() -> VariableDeclarationListContext? { + return getRuleContext(VariableDeclarationListContext.self, 0) + } + + public init(_ ctx: IterationStatementContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterForInStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitForInStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitForInStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitForInStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ForOfStatementContext: IterationStatementContext { + open func For() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.For.rawValue, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func statement() -> StatementContext? { + return getRuleContext(StatementContext.self, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func variableDeclarationList() -> VariableDeclarationListContext? { + return getRuleContext(VariableDeclarationListContext.self, 0) + } + open func Await() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Await.rawValue, 0) + } + + public init(_ ctx: IterationStatementContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterForOfStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitForOfStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitForOfStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitForOfStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func iterationStatement() throws -> IterationStatementContext { + var _localctx: IterationStatementContext + _localctx = IterationStatementContext(_ctx, getState()) + try enterRule(_localctx, 42, JavaScriptParser.RULE_iterationStatement) + var _la: Int = 0 + defer { try! exitRule() } + do { + setState(369) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 28, _ctx) { + case 1: + _localctx = DoStatementContext(_localctx) + try enterOuterAlt(_localctx, 1) + setState(313) + try match(JavaScriptParser.Tokens.Do.rawValue) + setState(314) + try statement() + setState(315) + try match(JavaScriptParser.Tokens.While.rawValue) + setState(316) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(317) + try expressionSequence() + setState(318) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(319) + try eos() + + break + case 2: + _localctx = WhileStatementContext(_localctx) + try enterOuterAlt(_localctx, 2) + setState(321) + try match(JavaScriptParser.Tokens.While.rawValue) + setState(322) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(323) + try expressionSequence() + setState(324) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(325) + try statement() + + break + case 3: + _localctx = ForStatementContext(_localctx) + try enterOuterAlt(_localctx, 3) + setState(327) + try match(JavaScriptParser.Tokens.For.rawValue) + setState(328) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(331) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 22, _ctx) { + case 1: + setState(329) + try expressionSequence() + + break + case 2: + setState(330) + try variableDeclarationList() + + break + default: break + } + setState(333) + try match(JavaScriptParser.Tokens.SemiColon.rawValue) + setState(335) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64(_la) & ~0x3f) == 0 + && ((Int64(1) << _la) & -2_305_843_009_147_632_976) != 0 + || (Int64((_la - 64)) & ~0x3f) == 0 + && ((Int64(1) << (_la - 64)) & 252_549_645_531_105_535) != 0 + { + setState(334) + try expressionSequence() + + } + + setState(337) + try match(JavaScriptParser.Tokens.SemiColon.rawValue) + setState(339) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64(_la) & ~0x3f) == 0 + && ((Int64(1) << _la) & -2_305_843_009_147_632_976) != 0 + || (Int64((_la - 64)) & ~0x3f) == 0 + && ((Int64(1) << (_la - 64)) & 252_549_645_531_105_535) != 0 + { + setState(338) + try expressionSequence() + + } + + setState(341) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(342) + try statement() + + break + case 4: + _localctx = ForInStatementContext(_localctx) + try enterOuterAlt(_localctx, 4) + setState(343) + try match(JavaScriptParser.Tokens.For.rawValue) + setState(344) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(347) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 25, _ctx) { + case 1: + setState(345) + try singleExpression(0) + + break + case 2: + setState(346) + try variableDeclarationList() + + break + default: break + } + setState(349) + try match(JavaScriptParser.Tokens.In.rawValue) + setState(350) + try expressionSequence() + setState(351) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(352) + try statement() + + break + case 5: + _localctx = ForOfStatementContext(_localctx) + try enterOuterAlt(_localctx, 5) + setState(354) + try match(JavaScriptParser.Tokens.For.rawValue) + setState(356) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Await.rawValue { + setState(355) + try match(JavaScriptParser.Tokens.Await.rawValue) + + } + + setState(358) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(361) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 27, _ctx) { + case 1: + setState(359) + try singleExpression(0) + + break + case 2: + setState(360) + try variableDeclarationList() + + break + default: break + } + setState(363) + try identifier() + setState(364) + if !(try self.p("of")) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.p(\"of\")")) + } + setState(365) + try expressionSequence() + setState(366) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(367) + try statement() + + break + default: break + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class VarModifierContext: ParserRuleContext { + open func Var() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Var.rawValue, 0) + } + open func let_() -> Let_Context? { return getRuleContext(Let_Context.self, 0) } + open func Const() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Const.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_varModifier } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterVarModifier(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitVarModifier(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitVarModifier(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitVarModifier(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func varModifier() throws -> VarModifierContext { + var _localctx: VarModifierContext + _localctx = VarModifierContext(_ctx, getState()) + try enterRule(_localctx, 44, JavaScriptParser.RULE_varModifier) + defer { try! exitRule() } + do { + setState(374) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .Var: + try enterOuterAlt(_localctx, 1) + setState(371) + try match(JavaScriptParser.Tokens.Var.rawValue) + + break + case .StrictLet, .NonStrictLet: + try enterOuterAlt(_localctx, 2) + setState(372) + try let_() + + break + + case .Const: + try enterOuterAlt(_localctx, 3) + setState(373) + try match(JavaScriptParser.Tokens.Const.rawValue) + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ContinueStatementContext: ParserRuleContext { + open func Continue() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Continue.rawValue, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_continueStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterContinueStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitContinueStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitContinueStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitContinueStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func continueStatement() throws -> ContinueStatementContext { + var _localctx: ContinueStatementContext + _localctx = ContinueStatementContext(_ctx, getState()) + try enterRule(_localctx, 46, JavaScriptParser.RULE_continueStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(376) + try match(JavaScriptParser.Tokens.Continue.rawValue) + setState(379) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 30, _ctx) { + case 1: + setState(377) + if !(try self.notLineTerminator()) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.notLineTerminator()")) + } + setState(378) + try identifier() + + break + default: break + } + setState(381) + try eos() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class BreakStatementContext: ParserRuleContext { + open func Break() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Break.rawValue, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_breakStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterBreakStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitBreakStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitBreakStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitBreakStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func breakStatement() throws -> BreakStatementContext { + var _localctx: BreakStatementContext + _localctx = BreakStatementContext(_ctx, getState()) + try enterRule(_localctx, 48, JavaScriptParser.RULE_breakStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(383) + try match(JavaScriptParser.Tokens.Break.rawValue) + setState(386) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 31, _ctx) { + case 1: + setState(384) + if !(try self.notLineTerminator()) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.notLineTerminator()")) + } + setState(385) + try identifier() + + break + default: break + } + setState(388) + try eos() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ReturnStatementContext: ParserRuleContext { + open func Return() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Return.rawValue, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_returnStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterReturnStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitReturnStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitReturnStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitReturnStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func returnStatement() throws -> ReturnStatementContext { + var _localctx: ReturnStatementContext + _localctx = ReturnStatementContext(_ctx, getState()) + try enterRule(_localctx, 50, JavaScriptParser.RULE_returnStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(390) + try match(JavaScriptParser.Tokens.Return.rawValue) + setState(393) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 32, _ctx) { + case 1: + setState(391) + if !(try self.notLineTerminator()) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.notLineTerminator()")) + } + setState(392) + try expressionSequence() + + break + default: break + } + setState(395) + try eos() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class YieldStatementContext: ParserRuleContext { + open func Yield() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Yield.rawValue, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_yieldStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterYieldStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitYieldStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitYieldStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitYieldStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func yieldStatement() throws -> YieldStatementContext { + var _localctx: YieldStatementContext + _localctx = YieldStatementContext(_ctx, getState()) + try enterRule(_localctx, 52, JavaScriptParser.RULE_yieldStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(397) + try match(JavaScriptParser.Tokens.Yield.rawValue) + setState(400) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 33, _ctx) { + case 1: + setState(398) + if !(try self.notLineTerminator()) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.notLineTerminator()")) + } + setState(399) + try expressionSequence() + + break + default: break + } + setState(402) + try eos() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class WithStatementContext: ParserRuleContext { + open func With() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.With.rawValue, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func statement() -> StatementContext? { + return getRuleContext(StatementContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_withStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterWithStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitWithStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitWithStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitWithStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func withStatement() throws -> WithStatementContext { + var _localctx: WithStatementContext + _localctx = WithStatementContext(_ctx, getState()) + try enterRule(_localctx, 54, JavaScriptParser.RULE_withStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(404) + try match(JavaScriptParser.Tokens.With.rawValue) + setState(405) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(406) + try expressionSequence() + setState(407) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(408) + try statement() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class SwitchStatementContext: ParserRuleContext { + open func Switch() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Switch.rawValue, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func caseBlock() -> CaseBlockContext? { + return getRuleContext(CaseBlockContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_switchStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterSwitchStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitSwitchStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitSwitchStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitSwitchStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func switchStatement() throws -> SwitchStatementContext { + var _localctx: SwitchStatementContext + _localctx = SwitchStatementContext(_ctx, getState()) + try enterRule(_localctx, 56, JavaScriptParser.RULE_switchStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(410) + try match(JavaScriptParser.Tokens.Switch.rawValue) + setState(411) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(412) + try expressionSequence() + setState(413) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(414) + try caseBlock() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class CaseBlockContext: ParserRuleContext { + open func OpenBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenBrace.rawValue, 0) + } + open func CloseBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseBrace.rawValue, 0) + } + open func caseClauses() -> [CaseClausesContext] { + return getRuleContexts(CaseClausesContext.self) + } + open func caseClauses(_ i: Int) -> CaseClausesContext? { + return getRuleContext(CaseClausesContext.self, i) + } + open func defaultClause() -> DefaultClauseContext? { + return getRuleContext(DefaultClauseContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_caseBlock } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterCaseBlock(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitCaseBlock(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitCaseBlock(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitCaseBlock(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func caseBlock() throws -> CaseBlockContext { + var _localctx: CaseBlockContext + _localctx = CaseBlockContext(_ctx, getState()) + try enterRule(_localctx, 58, JavaScriptParser.RULE_caseBlock) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(416) + try match(JavaScriptParser.Tokens.OpenBrace.rawValue) + setState(418) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Case.rawValue { + setState(417) + try caseClauses() + + } + + setState(424) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Default.rawValue { + setState(420) + try defaultClause() + setState(422) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Case.rawValue { + setState(421) + try caseClauses() + + } + + } + + setState(426) + try match(JavaScriptParser.Tokens.CloseBrace.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class CaseClausesContext: ParserRuleContext { + open func caseClause() -> [CaseClauseContext] { + return getRuleContexts(CaseClauseContext.self) + } + open func caseClause(_ i: Int) -> CaseClauseContext? { + return getRuleContext(CaseClauseContext.self, i) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_caseClauses } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterCaseClauses(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitCaseClauses(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitCaseClauses(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitCaseClauses(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func caseClauses() throws -> CaseClausesContext { + var _localctx: CaseClausesContext + _localctx = CaseClausesContext(_ctx, getState()) + try enterRule(_localctx, 60, JavaScriptParser.RULE_caseClauses) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(429) + try _errHandler.sync(self) + _la = try _input.LA(1) + repeat { + setState(428) + try caseClause() + + setState(431) + try _errHandler.sync(self) + _la = try _input.LA(1) + } while _la == JavaScriptParser.Tokens.Case.rawValue + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class CaseClauseContext: ParserRuleContext { + open func Case() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Case.rawValue, 0) + } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func Colon() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Colon.rawValue, 0) + } + open func statementList() -> StatementListContext? { + return getRuleContext(StatementListContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_caseClause } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterCaseClause(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitCaseClause(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitCaseClause(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitCaseClause(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func caseClause() throws -> CaseClauseContext { + var _localctx: CaseClauseContext + _localctx = CaseClauseContext(_ctx, getState()) + try enterRule(_localctx, 62, JavaScriptParser.RULE_caseClause) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(433) + try match(JavaScriptParser.Tokens.Case.rawValue) + setState(434) + try expressionSequence() + setState(435) + try match(JavaScriptParser.Tokens.Colon.rawValue) + setState(437) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 38, _ctx) { + case 1: + setState(436) + try statementList() + + break + default: break + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class DefaultClauseContext: ParserRuleContext { + open func Default() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Default.rawValue, 0) + } + open func Colon() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Colon.rawValue, 0) + } + open func statementList() -> StatementListContext? { + return getRuleContext(StatementListContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_defaultClause } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterDefaultClause(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitDefaultClause(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitDefaultClause(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitDefaultClause(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func defaultClause() throws -> DefaultClauseContext { + var _localctx: DefaultClauseContext + _localctx = DefaultClauseContext(_ctx, getState()) + try enterRule(_localctx, 64, JavaScriptParser.RULE_defaultClause) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(439) + try match(JavaScriptParser.Tokens.Default.rawValue) + setState(440) + try match(JavaScriptParser.Tokens.Colon.rawValue) + setState(442) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 39, _ctx) { + case 1: + setState(441) + try statementList() + + break + default: break + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class LabelledStatementContext: ParserRuleContext { + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + open func Colon() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Colon.rawValue, 0) + } + open func statement() -> StatementContext? { + return getRuleContext(StatementContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_labelledStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterLabelledStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitLabelledStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitLabelledStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitLabelledStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func labelledStatement() throws -> LabelledStatementContext { + var _localctx: LabelledStatementContext + _localctx = LabelledStatementContext(_ctx, getState()) + try enterRule(_localctx, 66, JavaScriptParser.RULE_labelledStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(444) + try identifier() + setState(445) + try match(JavaScriptParser.Tokens.Colon.rawValue) + setState(446) + try statement() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ThrowStatementContext: ParserRuleContext { + open func Throw() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Throw.rawValue, 0) + } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_throwStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterThrowStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitThrowStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitThrowStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitThrowStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func throwStatement() throws -> ThrowStatementContext { + var _localctx: ThrowStatementContext + _localctx = ThrowStatementContext(_ctx, getState()) + try enterRule(_localctx, 68, JavaScriptParser.RULE_throwStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(448) + try match(JavaScriptParser.Tokens.Throw.rawValue) + setState(449) + if !(try self.notLineTerminator()) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.notLineTerminator()")) + } + setState(450) + try expressionSequence() + setState(451) + try eos() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class TryStatementContext: ParserRuleContext { + open func Try() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Try.rawValue, 0) + } + open func block() -> BlockContext? { return getRuleContext(BlockContext.self, 0) } + open func catchProduction() -> CatchProductionContext? { + return getRuleContext(CatchProductionContext.self, 0) + } + open func finallyProduction() -> FinallyProductionContext? { + return getRuleContext(FinallyProductionContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_tryStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterTryStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitTryStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitTryStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitTryStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func tryStatement() throws -> TryStatementContext { + var _localctx: TryStatementContext + _localctx = TryStatementContext(_ctx, getState()) + try enterRule(_localctx, 70, JavaScriptParser.RULE_tryStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(453) + try match(JavaScriptParser.Tokens.Try.rawValue) + setState(454) + try block() + setState(460) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .Catch: + setState(455) + try catchProduction() + setState(457) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 40, _ctx) { + case 1: + setState(456) + try finallyProduction() + + break + default: break + } + + break + + case .Finally: + setState(459) + try finallyProduction() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class CatchProductionContext: ParserRuleContext { + open func Catch() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Catch.rawValue, 0) + } + open func block() -> BlockContext? { return getRuleContext(BlockContext.self, 0) } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func assignable() -> AssignableContext? { + return getRuleContext(AssignableContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_catchProduction } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterCatchProduction(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitCatchProduction(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitCatchProduction(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitCatchProduction(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func catchProduction() throws -> CatchProductionContext { + var _localctx: CatchProductionContext + _localctx = CatchProductionContext(_ctx, getState()) + try enterRule(_localctx, 72, JavaScriptParser.RULE_catchProduction) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(462) + try match(JavaScriptParser.Tokens.Catch.rawValue) + setState(468) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.OpenParen.rawValue { + setState(463) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(465) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.OpenBracket.rawValue + || _la == JavaScriptParser.Tokens.OpenBrace.rawValue + || (Int64((_la - 107)) & ~0x3f) == 0 && ((Int64(1) << (_la - 107)) & 4129) != 0 + { + setState(464) + try assignable() + + } + + setState(467) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + + } + + setState(470) + try block() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class FinallyProductionContext: ParserRuleContext { + open func Finally() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Finally.rawValue, 0) + } + open func block() -> BlockContext? { return getRuleContext(BlockContext.self, 0) } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_finallyProduction } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterFinallyProduction(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitFinallyProduction(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitFinallyProduction(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitFinallyProduction(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func finallyProduction() throws -> FinallyProductionContext { + var _localctx: FinallyProductionContext + _localctx = FinallyProductionContext(_ctx, getState()) + try enterRule(_localctx, 74, JavaScriptParser.RULE_finallyProduction) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(472) + try match(JavaScriptParser.Tokens.Finally.rawValue) + setState(473) + try block() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class DebuggerStatementContext: ParserRuleContext { + open func Debugger() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Debugger.rawValue, 0) + } + open func eos() -> EosContext? { return getRuleContext(EosContext.self, 0) } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_debuggerStatement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterDebuggerStatement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitDebuggerStatement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitDebuggerStatement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitDebuggerStatement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func debuggerStatement() throws -> DebuggerStatementContext { + var _localctx: DebuggerStatementContext + _localctx = DebuggerStatementContext(_ctx, getState()) + try enterRule(_localctx, 76, JavaScriptParser.RULE_debuggerStatement) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(475) + try match(JavaScriptParser.Tokens.Debugger.rawValue) + setState(476) + try eos() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class FunctionDeclarationContext: ParserRuleContext { + open func Function_() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Function_.rawValue, 0) + } + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func functionBody() -> FunctionBodyContext? { + return getRuleContext(FunctionBodyContext.self, 0) + } + open func Async() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Async.rawValue, 0) + } + open func Multiply() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Multiply.rawValue, 0) + } + open func formalParameterList() -> FormalParameterListContext? { + return getRuleContext(FormalParameterListContext.self, 0) + } + override open func getRuleIndex() -> Int { + return JavaScriptParser.RULE_functionDeclaration + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterFunctionDeclaration(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitFunctionDeclaration(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitFunctionDeclaration(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitFunctionDeclaration(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func functionDeclaration() throws -> FunctionDeclarationContext { + var _localctx: FunctionDeclarationContext + _localctx = FunctionDeclarationContext(_ctx, getState()) + try enterRule(_localctx, 78, JavaScriptParser.RULE_functionDeclaration) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(479) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Async.rawValue { + setState(478) + try match(JavaScriptParser.Tokens.Async.rawValue) + + } + + setState(481) + try match(JavaScriptParser.Tokens.Function_.rawValue) + setState(483) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Multiply.rawValue { + setState(482) + try match(JavaScriptParser.Tokens.Multiply.rawValue) + + } + + setState(485) + try identifier() + setState(486) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(488) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & 262688) != 0 + || (Int64((_la - 107)) & ~0x3f) == 0 && ((Int64(1) << (_la - 107)) & 4129) != 0 + { + setState(487) + try formalParameterList() + + } + + setState(490) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(491) + try functionBody() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ClassDeclarationContext: ParserRuleContext { + open func Class() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Class.rawValue, 0) + } + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + open func classTail() -> ClassTailContext? { + return getRuleContext(ClassTailContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_classDeclaration } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterClassDeclaration(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitClassDeclaration(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitClassDeclaration(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitClassDeclaration(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func classDeclaration() throws -> ClassDeclarationContext { + var _localctx: ClassDeclarationContext + _localctx = ClassDeclarationContext(_ctx, getState()) + try enterRule(_localctx, 80, JavaScriptParser.RULE_classDeclaration) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(493) + try match(JavaScriptParser.Tokens.Class.rawValue) + setState(494) + try identifier() + setState(495) + try classTail() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ClassTailContext: ParserRuleContext { + open func OpenBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenBrace.rawValue, 0) + } + open func CloseBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseBrace.rawValue, 0) + } + open func Extends() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Extends.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func classElement() -> [ClassElementContext] { + return getRuleContexts(ClassElementContext.self) + } + open func classElement(_ i: Int) -> ClassElementContext? { + return getRuleContext(ClassElementContext.self, i) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_classTail } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterClassTail(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitClassTail(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitClassTail(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitClassTail(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func classTail() throws -> ClassTailContext { + var _localctx: ClassTailContext + _localctx = ClassTailContext(_ctx, getState()) + try enterRule(_localctx, 82, JavaScriptParser.RULE_classTail) + var _la: Int = 0 + defer { try! exitRule() } + do { + var _alt: Int + try enterOuterAlt(_localctx, 1) + setState(499) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Extends.rawValue { + setState(497) + try match(JavaScriptParser.Tokens.Extends.rawValue) + setState(498) + try singleExpression(0) + + } + + setState(501) + try match(JavaScriptParser.Tokens.OpenBrace.rawValue) + setState(505) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 48, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + setState(502) + try classElement() + + } + setState(507) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 48, _ctx) + } + setState(508) + try match(JavaScriptParser.Tokens.CloseBrace.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ClassElementContext: ParserRuleContext { + open func methodDefinition() -> MethodDefinitionContext? { + return getRuleContext(MethodDefinitionContext.self, 0) + } + open func assignable() -> AssignableContext? { + return getRuleContext(AssignableContext.self, 0) + } + open func Assign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Assign.rawValue, 0) + } + open func objectLiteral() -> ObjectLiteralContext? { + return getRuleContext(ObjectLiteralContext.self, 0) + } + open func SemiColon() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.SemiColon.rawValue, 0) + } + open func Static() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.Static.rawValue) + } + open func Static(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Static.rawValue, i) + } + open func identifier() -> [IdentifierContext] { + return getRuleContexts(IdentifierContext.self) + } + open func identifier(_ i: Int) -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, i) + } + open func Async() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.Async.rawValue) + } + open func Async(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Async.rawValue, i) + } + open func emptyStatement_() -> EmptyStatement_Context? { + return getRuleContext(EmptyStatement_Context.self, 0) + } + open func propertyName() -> PropertyNameContext? { + return getRuleContext(PropertyNameContext.self, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func Hashtag() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Hashtag.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_classElement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterClassElement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitClassElement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitClassElement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitClassElement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func classElement() throws -> ClassElementContext { + var _localctx: ClassElementContext + _localctx = ClassElementContext(_ctx, getState()) + try enterRule(_localctx, 84, JavaScriptParser.RULE_classElement) + var _la: Int = 0 + defer { try! exitRule() } + do { + var _alt: Int + setState(535) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 53, _ctx) { + case 1: + try enterOuterAlt(_localctx, 1) + setState(516) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 50, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + setState(514) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 49, _ctx) { + case 1: + setState(510) + try match(JavaScriptParser.Tokens.Static.rawValue) + + break + case 2: + setState(511) + if !(try self.n("static")) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.n(\"static\")")) + } + setState(512) + try identifier() + + break + case 3: + setState(513) + try match(JavaScriptParser.Tokens.Async.rawValue) + + break + default: break + } + } + setState(518) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 50, _ctx) + } + setState(525) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 51, _ctx) { + case 1: + setState(519) + try methodDefinition() + + break + case 2: + setState(520) + try assignable() + setState(521) + try match(JavaScriptParser.Tokens.Assign.rawValue) + setState(522) + try objectLiteral() + setState(523) + try match(JavaScriptParser.Tokens.SemiColon.rawValue) + + break + default: break + } + + break + case 2: + try enterOuterAlt(_localctx, 2) + setState(527) + try emptyStatement_() + + break + case 3: + try enterOuterAlt(_localctx, 3) + setState(529) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Hashtag.rawValue { + setState(528) + try match(JavaScriptParser.Tokens.Hashtag.rawValue) + + } + + setState(531) + try propertyName() + setState(532) + try match(JavaScriptParser.Tokens.Assign.rawValue) + setState(533) + try singleExpression(0) + + break + default: break + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class MethodDefinitionContext: ParserRuleContext { + open func propertyName() -> PropertyNameContext? { + return getRuleContext(PropertyNameContext.self, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func functionBody() -> FunctionBodyContext? { + return getRuleContext(FunctionBodyContext.self, 0) + } + open func Multiply() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Multiply.rawValue, 0) + } + open func Hashtag() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Hashtag.rawValue, 0) + } + open func formalParameterList() -> FormalParameterListContext? { + return getRuleContext(FormalParameterListContext.self, 0) + } + open func getter() -> GetterContext? { return getRuleContext(GetterContext.self, 0) } + open func setter() -> SetterContext? { return getRuleContext(SetterContext.self, 0) } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_methodDefinition } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterMethodDefinition(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitMethodDefinition(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitMethodDefinition(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitMethodDefinition(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func methodDefinition() throws -> MethodDefinitionContext { + var _localctx: MethodDefinitionContext + _localctx = MethodDefinitionContext(_ctx, getState()) + try enterRule(_localctx, 86, JavaScriptParser.RULE_methodDefinition) + var _la: Int = 0 + defer { try! exitRule() } + do { + setState(576) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 62, _ctx) { + case 1: + try enterOuterAlt(_localctx, 1) + setState(538) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Multiply.rawValue { + setState(537) + try match(JavaScriptParser.Tokens.Multiply.rawValue) + + } + + setState(541) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Hashtag.rawValue { + setState(540) + try match(JavaScriptParser.Tokens.Hashtag.rawValue) + + } + + setState(543) + try propertyName() + setState(544) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(546) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & 262688) != 0 + || (Int64((_la - 107)) & ~0x3f) == 0 && ((Int64(1) << (_la - 107)) & 4129) != 0 + { + setState(545) + try formalParameterList() + + } + + setState(548) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(549) + try functionBody() + + break + case 2: + try enterOuterAlt(_localctx, 2) + setState(552) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 57, _ctx) { + case 1: + setState(551) + try match(JavaScriptParser.Tokens.Multiply.rawValue) + + break + default: break + } + setState(555) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 58, _ctx) { + case 1: + setState(554) + try match(JavaScriptParser.Tokens.Hashtag.rawValue) + + break + default: break + } + setState(557) + try getter() + setState(558) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(559) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(560) + try functionBody() + + break + case 3: + try enterOuterAlt(_localctx, 3) + setState(563) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 59, _ctx) { + case 1: + setState(562) + try match(JavaScriptParser.Tokens.Multiply.rawValue) + + break + default: break + } + setState(566) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 60, _ctx) { + case 1: + setState(565) + try match(JavaScriptParser.Tokens.Hashtag.rawValue) + + break + default: break + } + setState(568) + try setter() + setState(569) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(571) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & 262688) != 0 + || (Int64((_la - 107)) & ~0x3f) == 0 && ((Int64(1) << (_la - 107)) & 4129) != 0 + { + setState(570) + try formalParameterList() + + } + + setState(573) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(574) + try functionBody() + + break + default: break + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class FormalParameterListContext: ParserRuleContext { + open func formalParameterArg() -> [FormalParameterArgContext] { + return getRuleContexts(FormalParameterArgContext.self) + } + open func formalParameterArg(_ i: Int) -> FormalParameterArgContext? { + return getRuleContext(FormalParameterArgContext.self, i) + } + open func Comma() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.Comma.rawValue) + } + open func Comma(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Comma.rawValue, i) + } + open func lastFormalParameterArg() -> LastFormalParameterArgContext? { + return getRuleContext(LastFormalParameterArgContext.self, 0) + } + override open func getRuleIndex() -> Int { + return JavaScriptParser.RULE_formalParameterList + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterFormalParameterList(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitFormalParameterList(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitFormalParameterList(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitFormalParameterList(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func formalParameterList() throws -> FormalParameterListContext { + var _localctx: FormalParameterListContext + _localctx = FormalParameterListContext(_ctx, getState()) + try enterRule(_localctx, 88, JavaScriptParser.RULE_formalParameterList) + var _la: Int = 0 + defer { try! exitRule() } + do { + var _alt: Int + setState(591) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .OpenBracket, .OpenBrace, .Async, .NonStrictLet, .Identifier: + try enterOuterAlt(_localctx, 1) + setState(578) + try formalParameterArg() + setState(583) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 63, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + setState(579) + try match(JavaScriptParser.Tokens.Comma.rawValue) + setState(580) + try formalParameterArg() + + } + setState(585) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 63, _ctx) + } + setState(588) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Comma.rawValue { + setState(586) + try match(JavaScriptParser.Tokens.Comma.rawValue) + setState(587) + try lastFormalParameterArg() + + } + + break + + case .Ellipsis: + try enterOuterAlt(_localctx, 2) + setState(590) + try lastFormalParameterArg() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class FormalParameterArgContext: ParserRuleContext { + open func assignable() -> AssignableContext? { + return getRuleContext(AssignableContext.self, 0) + } + open func Assign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Assign.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_formalParameterArg } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterFormalParameterArg(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitFormalParameterArg(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitFormalParameterArg(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitFormalParameterArg(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func formalParameterArg() throws -> FormalParameterArgContext { + var _localctx: FormalParameterArgContext + _localctx = FormalParameterArgContext(_ctx, getState()) + try enterRule(_localctx, 90, JavaScriptParser.RULE_formalParameterArg) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(593) + try assignable() + setState(596) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Assign.rawValue { + setState(594) + try match(JavaScriptParser.Tokens.Assign.rawValue) + setState(595) + try singleExpression(0) + + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class LastFormalParameterArgContext: ParserRuleContext { + open func Ellipsis() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Ellipsis.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + override open func getRuleIndex() -> Int { + return JavaScriptParser.RULE_lastFormalParameterArg + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterLastFormalParameterArg(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitLastFormalParameterArg(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitLastFormalParameterArg(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitLastFormalParameterArg(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func lastFormalParameterArg() throws -> LastFormalParameterArgContext { + var _localctx: LastFormalParameterArgContext + _localctx = LastFormalParameterArgContext(_ctx, getState()) + try enterRule(_localctx, 92, JavaScriptParser.RULE_lastFormalParameterArg) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(598) + try match(JavaScriptParser.Tokens.Ellipsis.rawValue) + setState(599) + try singleExpression(0) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class FunctionBodyContext: ParserRuleContext { + open func OpenBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenBrace.rawValue, 0) + } + open func CloseBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseBrace.rawValue, 0) + } + open func sourceElements() -> SourceElementsContext? { + return getRuleContext(SourceElementsContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_functionBody } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterFunctionBody(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitFunctionBody(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitFunctionBody(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitFunctionBody(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func functionBody() throws -> FunctionBodyContext { + var _localctx: FunctionBodyContext + _localctx = FunctionBodyContext(_ctx, getState()) + try enterRule(_localctx, 94, JavaScriptParser.RULE_functionBody) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(601) + try match(JavaScriptParser.Tokens.OpenBrace.rawValue) + setState(603) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 67, _ctx) { + case 1: + setState(602) + try sourceElements() + + break + default: break + } + setState(605) + try match(JavaScriptParser.Tokens.CloseBrace.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class SourceElementsContext: ParserRuleContext { + open func sourceElement() -> [SourceElementContext] { + return getRuleContexts(SourceElementContext.self) + } + open func sourceElement(_ i: Int) -> SourceElementContext? { + return getRuleContext(SourceElementContext.self, i) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_sourceElements } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterSourceElements(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitSourceElements(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitSourceElements(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitSourceElements(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func sourceElements() throws -> SourceElementsContext { + var _localctx: SourceElementsContext + _localctx = SourceElementsContext(_ctx, getState()) + try enterRule(_localctx, 96, JavaScriptParser.RULE_sourceElements) + defer { try! exitRule() } + do { + var _alt: Int + try enterOuterAlt(_localctx, 1) + setState(608) + try _errHandler.sync(self) + _alt = 1 + repeat { + switch _alt { + case 1: + setState(607) + try sourceElement() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + setState(610) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 68, _ctx) + } while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ArrayLiteralContext: ParserRuleContext { + open func OpenBracket() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenBracket.rawValue, 0) + } + open func elementList() -> ElementListContext? { + return getRuleContext(ElementListContext.self, 0) + } + open func CloseBracket() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseBracket.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_arrayLiteral } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterArrayLiteral(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitArrayLiteral(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitArrayLiteral(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitArrayLiteral(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func arrayLiteral() throws -> ArrayLiteralContext { + var _localctx: ArrayLiteralContext + _localctx = ArrayLiteralContext(_ctx, getState()) + try enterRule(_localctx, 98, JavaScriptParser.RULE_arrayLiteral) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(612) + try match(JavaScriptParser.Tokens.OpenBracket.rawValue) + setState(613) + try elementList() + setState(614) + try match(JavaScriptParser.Tokens.CloseBracket.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ElementListContext: ParserRuleContext { + open func Comma() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.Comma.rawValue) + } + open func Comma(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Comma.rawValue, i) + } + open func arrayElement() -> [ArrayElementContext] { + return getRuleContexts(ArrayElementContext.self) + } + open func arrayElement(_ i: Int) -> ArrayElementContext? { + return getRuleContext(ArrayElementContext.self, i) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_elementList } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterElementList(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitElementList(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitElementList(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitElementList(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func elementList() throws -> ElementListContext { + var _localctx: ElementListContext + _localctx = ElementListContext(_ctx, getState()) + try enterRule(_localctx, 100, JavaScriptParser.RULE_elementList) + var _la: Int = 0 + defer { try! exitRule() } + do { + var _alt: Int + try enterOuterAlt(_localctx, 1) + setState(619) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 69, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + setState(616) + try match(JavaScriptParser.Tokens.Comma.rawValue) + + } + setState(621) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 69, _ctx) + } + setState(623) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & -2_305_843_009_147_370_832) != 0 + || (Int64((_la - 64)) & ~0x3f) == 0 + && ((Int64(1) << (_la - 64)) & 252_549_645_531_105_535) != 0 + { + setState(622) + try arrayElement() + + } + + setState(633) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 72, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + setState(626) + try _errHandler.sync(self) + _la = try _input.LA(1) + repeat { + setState(625) + try match(JavaScriptParser.Tokens.Comma.rawValue) + + setState(628) + try _errHandler.sync(self) + _la = try _input.LA(1) + } while _la == JavaScriptParser.Tokens.Comma.rawValue + setState(630) + try arrayElement() + + } + setState(635) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 72, _ctx) + } + setState(639) + try _errHandler.sync(self) + _la = try _input.LA(1) + while _la == JavaScriptParser.Tokens.Comma.rawValue { + setState(636) + try match(JavaScriptParser.Tokens.Comma.rawValue) + + setState(641) + try _errHandler.sync(self) + _la = try _input.LA(1) + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ArrayElementContext: ParserRuleContext { + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func Ellipsis() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Ellipsis.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_arrayElement } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterArrayElement(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitArrayElement(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitArrayElement(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitArrayElement(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func arrayElement() throws -> ArrayElementContext { + var _localctx: ArrayElementContext + _localctx = ArrayElementContext(_ctx, getState()) + try enterRule(_localctx, 102, JavaScriptParser.RULE_arrayElement) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(643) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Ellipsis.rawValue { + setState(642) + try match(JavaScriptParser.Tokens.Ellipsis.rawValue) + + } + + setState(645) + try singleExpression(0) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class PropertyAssignmentContext: ParserRuleContext { + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_propertyAssignment } + } + public class PropertyExpressionAssignmentContext: PropertyAssignmentContext { + open func propertyName() -> PropertyNameContext? { + return getRuleContext(PropertyNameContext.self, 0) + } + open func Colon() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Colon.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: PropertyAssignmentContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterPropertyExpressionAssignment(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitPropertyExpressionAssignment(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitPropertyExpressionAssignment(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitPropertyExpressionAssignment(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ComputedPropertyExpressionAssignmentContext: PropertyAssignmentContext { + open func OpenBracket() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenBracket.rawValue, 0) + } + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func CloseBracket() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseBracket.rawValue, 0) + } + open func Colon() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Colon.rawValue, 0) + } + + public init(_ ctx: PropertyAssignmentContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterComputedPropertyExpressionAssignment(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitComputedPropertyExpressionAssignment(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitComputedPropertyExpressionAssignment(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitComputedPropertyExpressionAssignment(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class PropertyShorthandContext: PropertyAssignmentContext { + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func Ellipsis() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Ellipsis.rawValue, 0) + } + + public init(_ ctx: PropertyAssignmentContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterPropertyShorthand(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitPropertyShorthand(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitPropertyShorthand(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitPropertyShorthand(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class PropertySetterContext: PropertyAssignmentContext { + open func setter() -> SetterContext? { return getRuleContext(SetterContext.self, 0) } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func formalParameterArg() -> FormalParameterArgContext? { + return getRuleContext(FormalParameterArgContext.self, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func functionBody() -> FunctionBodyContext? { + return getRuleContext(FunctionBodyContext.self, 0) + } + + public init(_ ctx: PropertyAssignmentContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterPropertySetter(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitPropertySetter(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitPropertySetter(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitPropertySetter(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class PropertyGetterContext: PropertyAssignmentContext { + open func getter() -> GetterContext? { return getRuleContext(GetterContext.self, 0) } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func functionBody() -> FunctionBodyContext? { + return getRuleContext(FunctionBodyContext.self, 0) + } + + public init(_ ctx: PropertyAssignmentContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterPropertyGetter(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitPropertyGetter(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitPropertyGetter(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitPropertyGetter(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class FunctionPropertyContext: PropertyAssignmentContext { + open func propertyName() -> PropertyNameContext? { + return getRuleContext(PropertyNameContext.self, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func functionBody() -> FunctionBodyContext? { + return getRuleContext(FunctionBodyContext.self, 0) + } + open func Async() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Async.rawValue, 0) + } + open func Multiply() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Multiply.rawValue, 0) + } + open func formalParameterList() -> FormalParameterListContext? { + return getRuleContext(FormalParameterListContext.self, 0) + } + + public init(_ ctx: PropertyAssignmentContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterFunctionProperty(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitFunctionProperty(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitFunctionProperty(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitFunctionProperty(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func propertyAssignment() throws -> PropertyAssignmentContext { + var _localctx: PropertyAssignmentContext + _localctx = PropertyAssignmentContext(_ctx, getState()) + try enterRule(_localctx, 104, JavaScriptParser.RULE_propertyAssignment) + var _la: Int = 0 + defer { try! exitRule() } + do { + setState(686) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 79, _ctx) { + case 1: + _localctx = PropertyExpressionAssignmentContext(_localctx) + try enterOuterAlt(_localctx, 1) + setState(647) + try propertyName() + setState(648) + try match(JavaScriptParser.Tokens.Colon.rawValue) + setState(649) + try singleExpression(0) + + break + case 2: + _localctx = ComputedPropertyExpressionAssignmentContext(_localctx) + try enterOuterAlt(_localctx, 2) + setState(651) + try match(JavaScriptParser.Tokens.OpenBracket.rawValue) + setState(652) + try singleExpression(0) + setState(653) + try match(JavaScriptParser.Tokens.CloseBracket.rawValue) + setState(654) + try match(JavaScriptParser.Tokens.Colon.rawValue) + setState(655) + try singleExpression(0) + + break + case 3: + _localctx = FunctionPropertyContext(_localctx) + try enterOuterAlt(_localctx, 3) + setState(658) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 75, _ctx) { + case 1: + setState(657) + try match(JavaScriptParser.Tokens.Async.rawValue) + + break + default: break + } + setState(661) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Multiply.rawValue { + setState(660) + try match(JavaScriptParser.Tokens.Multiply.rawValue) + + } + + setState(663) + try propertyName() + setState(664) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(666) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & 262688) != 0 + || (Int64((_la - 107)) & ~0x3f) == 0 && ((Int64(1) << (_la - 107)) & 4129) != 0 + { + setState(665) + try formalParameterList() + + } + + setState(668) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(669) + try functionBody() + + break + case 4: + _localctx = PropertyGetterContext(_localctx) + try enterOuterAlt(_localctx, 4) + setState(671) + try getter() + setState(672) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(673) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(674) + try functionBody() + + break + case 5: + _localctx = PropertySetterContext(_localctx) + try enterOuterAlt(_localctx, 5) + setState(676) + try setter() + setState(677) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(678) + try formalParameterArg() + setState(679) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(680) + try functionBody() + + break + case 6: + _localctx = PropertyShorthandContext(_localctx) + try enterOuterAlt(_localctx, 6) + setState(683) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Ellipsis.rawValue { + setState(682) + try match(JavaScriptParser.Tokens.Ellipsis.rawValue) + + } + + setState(685) + try singleExpression(0) + + break + default: break + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class PropertyNameContext: ParserRuleContext { + open func identifierName() -> IdentifierNameContext? { + return getRuleContext(IdentifierNameContext.self, 0) + } + open func StringLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.StringLiteral.rawValue, 0) + } + open func numericLiteral() -> NumericLiteralContext? { + return getRuleContext(NumericLiteralContext.self, 0) + } + open func OpenBracket() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenBracket.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func CloseBracket() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseBracket.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_propertyName } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterPropertyName(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitPropertyName(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitPropertyName(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitPropertyName(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func propertyName() throws -> PropertyNameContext { + var _localctx: PropertyNameContext + _localctx = PropertyNameContext(_ctx, getState()) + try enterRule(_localctx, 106, JavaScriptParser.RULE_propertyName) + defer { try! exitRule() } + do { + setState(695) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .NullLiteral, .BooleanLiteral, .Break, .Do, .Instanceof, .Typeof, .Case, .Else, + .New, .Var, .Catch, .Finally, .Return, .Void, .Continue, .For, .Switch, .While, + .Debugger, .Function_, .This, .With, .Default, .If, .Throw, .Delete, .In, .Try, .As, + .From, .Class, .Enum, .Extends, .Super, .Const, .Export, .Import, .Async, .Await, + .Yield, .Implements, .StrictLet, .NonStrictLet, .Private, .Public, .Interface, + .Package, .Protected, .Static, .Identifier: + try enterOuterAlt(_localctx, 1) + setState(688) + try identifierName() + + break + + case .StringLiteral: + try enterOuterAlt(_localctx, 2) + setState(689) + try match(JavaScriptParser.Tokens.StringLiteral.rawValue) + + break + case .DecimalLiteral, .HexIntegerLiteral, .OctalIntegerLiteral, .OctalIntegerLiteral2, + .BinaryIntegerLiteral: + try enterOuterAlt(_localctx, 3) + setState(690) + try numericLiteral() + + break + + case .OpenBracket: + try enterOuterAlt(_localctx, 4) + setState(691) + try match(JavaScriptParser.Tokens.OpenBracket.rawValue) + setState(692) + try singleExpression(0) + setState(693) + try match(JavaScriptParser.Tokens.CloseBracket.rawValue) + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ArgumentsContext: ParserRuleContext { + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func argument() -> [ArgumentContext] { return getRuleContexts(ArgumentContext.self) } + open func argument(_ i: Int) -> ArgumentContext? { + return getRuleContext(ArgumentContext.self, i) + } + open func Comma() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.Comma.rawValue) + } + open func Comma(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Comma.rawValue, i) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_arguments } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterArguments(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitArguments(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitArguments(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitArguments(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func arguments() throws -> ArgumentsContext { + var _localctx: ArgumentsContext + _localctx = ArgumentsContext(_ctx, getState()) + try enterRule(_localctx, 108, JavaScriptParser.RULE_arguments) + var _la: Int = 0 + defer { try! exitRule() } + do { + var _alt: Int + try enterOuterAlt(_localctx, 1) + setState(697) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(709) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & -2_305_843_009_147_370_832) != 0 + || (Int64((_la - 64)) & ~0x3f) == 0 + && ((Int64(1) << (_la - 64)) & 252_549_645_531_105_535) != 0 + { + setState(698) + try argument() + setState(703) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 81, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + setState(699) + try match(JavaScriptParser.Tokens.Comma.rawValue) + setState(700) + try argument() + + } + setState(705) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 81, _ctx) + } + setState(707) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Comma.rawValue { + setState(706) + try match(JavaScriptParser.Tokens.Comma.rawValue) + + } + + } + + setState(711) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ArgumentContext: ParserRuleContext { + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + open func Ellipsis() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Ellipsis.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_argument } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.enterArgument(self) } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitArgument(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitArgument(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitArgument(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func argument() throws -> ArgumentContext { + var _localctx: ArgumentContext + _localctx = ArgumentContext(_ctx, getState()) + try enterRule(_localctx, 110, JavaScriptParser.RULE_argument) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(714) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Ellipsis.rawValue { + setState(713) + try match(JavaScriptParser.Tokens.Ellipsis.rawValue) + + } + + setState(718) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 85, _ctx) { + case 1: + setState(716) + try singleExpression(0) + + break + case 2: + setState(717) + try identifier() + + break + default: break + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ExpressionSequenceContext: ParserRuleContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func Comma() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.Comma.rawValue) + } + open func Comma(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Comma.rawValue, i) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_expressionSequence } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterExpressionSequence(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitExpressionSequence(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitExpressionSequence(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitExpressionSequence(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func expressionSequence() throws -> ExpressionSequenceContext { + var _localctx: ExpressionSequenceContext + _localctx = ExpressionSequenceContext(_ctx, getState()) + try enterRule(_localctx, 112, JavaScriptParser.RULE_expressionSequence) + defer { try! exitRule() } + do { + var _alt: Int + try enterOuterAlt(_localctx, 1) + setState(720) + try singleExpression(0) + setState(725) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 86, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + setState(721) + try match(JavaScriptParser.Tokens.Comma.rawValue) + setState(722) + try singleExpression(0) + + } + setState(727) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 86, _ctx) + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class SingleExpressionContext: ParserRuleContext { + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_singleExpression } + } + public class TemplateStringExpressionContext: SingleExpressionContext { + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func templateStringLiteral() -> TemplateStringLiteralContext? { + return getRuleContext(TemplateStringLiteralContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterTemplateStringExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitTemplateStringExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitTemplateStringExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitTemplateStringExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class TernaryExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func QuestionMark() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.QuestionMark.rawValue, 0) + } + open func Colon() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Colon.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterTernaryExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitTernaryExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitTernaryExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitTernaryExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class LogicalAndExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func And() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.And.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterLogicalAndExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitLogicalAndExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitLogicalAndExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitLogicalAndExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class PowerExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func Power() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Power.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterPowerExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitPowerExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitPowerExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitPowerExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class PreIncrementExpressionContext: SingleExpressionContext { + open func PlusPlus() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.PlusPlus.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterPreIncrementExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitPreIncrementExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitPreIncrementExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitPreIncrementExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ObjectLiteralExpressionContext: SingleExpressionContext { + open func objectLiteral() -> ObjectLiteralContext? { + return getRuleContext(ObjectLiteralContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterObjectLiteralExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitObjectLiteralExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitObjectLiteralExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitObjectLiteralExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class MetaExpressionContext: SingleExpressionContext { + open func New() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.New.rawValue, 0) + } + open func Dot() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Dot.rawValue, 0) + } + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterMetaExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitMetaExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitMetaExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitMetaExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class InExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func In() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.In.rawValue, 0) } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterInExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitInExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitInExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitInExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class LogicalOrExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func Or() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.Or.rawValue, 0) } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterLogicalOrExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitLogicalOrExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitLogicalOrExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitLogicalOrExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class OptionalChainExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func QuestionMarkDot() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.QuestionMarkDot.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterOptionalChainExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitOptionalChainExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitOptionalChainExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitOptionalChainExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class NotExpressionContext: SingleExpressionContext { + open func Not() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Not.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterNotExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitNotExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitNotExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitNotExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class PreDecreaseExpressionContext: SingleExpressionContext { + open func MinusMinus() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.MinusMinus.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterPreDecreaseExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitPreDecreaseExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitPreDecreaseExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitPreDecreaseExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ArgumentsExpressionContext: SingleExpressionContext { + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func arguments() -> ArgumentsContext? { + return getRuleContext(ArgumentsContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterArgumentsExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitArgumentsExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitArgumentsExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitArgumentsExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class AwaitExpressionContext: SingleExpressionContext { + open func Await() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Await.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterAwaitExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitAwaitExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitAwaitExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitAwaitExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ThisExpressionContext: SingleExpressionContext { + open func This() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.This.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterThisExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitThisExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitThisExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitThisExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class FunctionExpressionContext: SingleExpressionContext { + open func anonymousFunction() -> AnonymousFunctionContext? { + return getRuleContext(AnonymousFunctionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterFunctionExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitFunctionExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitFunctionExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitFunctionExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class UnaryMinusExpressionContext: SingleExpressionContext { + open func Minus() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Minus.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterUnaryMinusExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitUnaryMinusExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitUnaryMinusExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitUnaryMinusExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class AssignmentExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func Assign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Assign.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterAssignmentExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitAssignmentExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitAssignmentExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitAssignmentExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class PostDecreaseExpressionContext: SingleExpressionContext { + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func MinusMinus() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.MinusMinus.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterPostDecreaseExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitPostDecreaseExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitPostDecreaseExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitPostDecreaseExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class TypeofExpressionContext: SingleExpressionContext { + open func Typeof() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Typeof.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterTypeofExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitTypeofExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitTypeofExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitTypeofExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class InstanceofExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func Instanceof() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Instanceof.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterInstanceofExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitInstanceofExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitInstanceofExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitInstanceofExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class UnaryPlusExpressionContext: SingleExpressionContext { + open func Plus() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Plus.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterUnaryPlusExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitUnaryPlusExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitUnaryPlusExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitUnaryPlusExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class DeleteExpressionContext: SingleExpressionContext { + open func Delete() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Delete.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterDeleteExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitDeleteExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitDeleteExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitDeleteExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ImportExpressionContext: SingleExpressionContext { + open func Import() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Import.rawValue, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterImportExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitImportExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitImportExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitImportExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class EqualityExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func Equals_() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Equals_.rawValue, 0) + } + open func NotEquals() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.NotEquals.rawValue, 0) + } + open func IdentityEquals() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.IdentityEquals.rawValue, 0) + } + open func IdentityNotEquals() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.IdentityNotEquals.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterEqualityExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitEqualityExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitEqualityExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitEqualityExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class BitXOrExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func BitXOr() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BitXOr.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterBitXOrExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitBitXOrExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitBitXOrExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitBitXOrExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class SuperExpressionContext: SingleExpressionContext { + open func Super() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Super.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterSuperExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitSuperExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitSuperExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitSuperExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class MultiplicativeExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func Multiply() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Multiply.rawValue, 0) + } + open func Divide() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Divide.rawValue, 0) + } + open func Modulus() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Modulus.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterMultiplicativeExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitMultiplicativeExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitMultiplicativeExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitMultiplicativeExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class BitShiftExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func LeftShiftArithmetic() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.LeftShiftArithmetic.rawValue, 0) + } + open func RightShiftArithmetic() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.RightShiftArithmetic.rawValue, 0) + } + open func RightShiftLogical() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.RightShiftLogical.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterBitShiftExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitBitShiftExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitBitShiftExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitBitShiftExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ParenthesizedExpressionContext: SingleExpressionContext { + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterParenthesizedExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitParenthesizedExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitParenthesizedExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitParenthesizedExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class AdditiveExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func Plus() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Plus.rawValue, 0) + } + open func Minus() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Minus.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterAdditiveExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitAdditiveExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitAdditiveExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitAdditiveExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class RelationalExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func LessThan() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.LessThan.rawValue, 0) + } + open func MoreThan() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.MoreThan.rawValue, 0) + } + open func LessThanEquals() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.LessThanEquals.rawValue, 0) + } + open func GreaterThanEquals() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.GreaterThanEquals.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterRelationalExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitRelationalExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitRelationalExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitRelationalExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class PostIncrementExpressionContext: SingleExpressionContext { + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func PlusPlus() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.PlusPlus.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterPostIncrementExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitPostIncrementExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitPostIncrementExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitPostIncrementExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class YieldExpressionContext: SingleExpressionContext { + open func yieldStatement() -> YieldStatementContext? { + return getRuleContext(YieldStatementContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterYieldExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitYieldExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitYieldExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitYieldExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class BitNotExpressionContext: SingleExpressionContext { + open func BitNot() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BitNot.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterBitNotExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitBitNotExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitBitNotExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitBitNotExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class NewExpressionContext: SingleExpressionContext { + open func New() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.New.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func arguments() -> ArgumentsContext? { + return getRuleContext(ArgumentsContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterNewExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitNewExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitNewExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitNewExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class LiteralExpressionContext: SingleExpressionContext { + open func literal() -> LiteralContext? { return getRuleContext(LiteralContext.self, 0) } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterLiteralExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitLiteralExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitLiteralExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitLiteralExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ArrayLiteralExpressionContext: SingleExpressionContext { + open func arrayLiteral() -> ArrayLiteralContext? { + return getRuleContext(ArrayLiteralContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterArrayLiteralExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitArrayLiteralExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitArrayLiteralExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitArrayLiteralExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class MemberDotExpressionContext: SingleExpressionContext { + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func Dot() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Dot.rawValue, 0) + } + open func identifierName() -> IdentifierNameContext? { + return getRuleContext(IdentifierNameContext.self, 0) + } + open func QuestionMark() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.QuestionMark.rawValue, 0) + } + open func Hashtag() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Hashtag.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterMemberDotExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitMemberDotExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitMemberDotExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitMemberDotExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ClassExpressionContext: SingleExpressionContext { + open func Class() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Class.rawValue, 0) + } + open func classTail() -> ClassTailContext? { + return getRuleContext(ClassTailContext.self, 0) + } + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterClassExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitClassExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitClassExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitClassExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class MemberIndexExpressionContext: SingleExpressionContext { + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func OpenBracket() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenBracket.rawValue, 0) + } + open func expressionSequence() -> ExpressionSequenceContext? { + return getRuleContext(ExpressionSequenceContext.self, 0) + } + open func CloseBracket() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseBracket.rawValue, 0) + } + open func QuestionMarkDot() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.QuestionMarkDot.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterMemberIndexExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitMemberIndexExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitMemberIndexExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitMemberIndexExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class IdentifierExpressionContext: SingleExpressionContext { + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterIdentifierExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitIdentifierExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitIdentifierExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitIdentifierExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class BitAndExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func BitAnd() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BitAnd.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterBitAndExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitBitAndExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitBitAndExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitBitAndExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class BitOrExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func BitOr() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BitOr.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterBitOrExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitBitOrExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitBitOrExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitBitOrExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class AssignmentOperatorExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func assignmentOperator() -> AssignmentOperatorContext? { + return getRuleContext(AssignmentOperatorContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterAssignmentOperatorExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitAssignmentOperatorExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitAssignmentOperatorExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitAssignmentOperatorExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class VoidExpressionContext: SingleExpressionContext { + open func Void() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Void.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterVoidExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitVoidExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitVoidExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitVoidExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class CoalesceExpressionContext: SingleExpressionContext { + open func singleExpression() -> [SingleExpressionContext] { + return getRuleContexts(SingleExpressionContext.self) + } + open func singleExpression(_ i: Int) -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, i) + } + open func NullCoalesce() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.NullCoalesce.rawValue, 0) + } + + public init(_ ctx: SingleExpressionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterCoalesceExpression(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitCoalesceExpression(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitCoalesceExpression(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitCoalesceExpression(self) + } else { + return visitor.visitChildren(self) + } + } + } + + public final func singleExpression() throws -> SingleExpressionContext { + return try singleExpression(0) + } + @discardableResult private func singleExpression(_ _p: Int) throws -> SingleExpressionContext { + let _parentctx: ParserRuleContext? = _ctx + let _parentState: Int = getState() + var _localctx: SingleExpressionContext + _localctx = SingleExpressionContext(_ctx, _parentState) + let _startState: Int = 114 + try enterRecursionRule(_localctx, 114, JavaScriptParser.RULE_singleExpression, _p) + var _la: Int = 0 + defer { try! unrollRecursionContexts(_parentctx) } + do { + var _alt: Int + try enterOuterAlt(_localctx, 1) + setState(780) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 88, _ctx) { + case 1: + _localctx = FunctionExpressionContext(_localctx) + _ctx = _localctx + + setState(729) + try anonymousFunction() + + break + case 2: + _localctx = ClassExpressionContext(_localctx) + _ctx = _localctx + setState(730) + try match(JavaScriptParser.Tokens.Class.rawValue) + setState(732) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64((_la - 107)) & ~0x3f) == 0 && ((Int64(1) << (_la - 107)) & 4129) != 0 { + setState(731) + try identifier() + + } + + setState(734) + try classTail() + + break + case 3: + _localctx = NewExpressionContext(_localctx) + _ctx = _localctx + setState(735) + try match(JavaScriptParser.Tokens.New.rawValue) + setState(736) + try singleExpression(0) + setState(737) + try arguments() + + break + case 4: + _localctx = NewExpressionContext(_localctx) + _ctx = _localctx + setState(739) + try match(JavaScriptParser.Tokens.New.rawValue) + setState(740) + try singleExpression(42) + + break + case 5: + _localctx = MetaExpressionContext(_localctx) + _ctx = _localctx + setState(741) + try match(JavaScriptParser.Tokens.New.rawValue) + setState(742) + try match(JavaScriptParser.Tokens.Dot.rawValue) + setState(743) + try identifier() + + break + case 6: + _localctx = DeleteExpressionContext(_localctx) + _ctx = _localctx + setState(744) + try match(JavaScriptParser.Tokens.Delete.rawValue) + setState(745) + try singleExpression(37) + + break + case 7: + _localctx = VoidExpressionContext(_localctx) + _ctx = _localctx + setState(746) + try match(JavaScriptParser.Tokens.Void.rawValue) + setState(747) + try singleExpression(36) + + break + case 8: + _localctx = TypeofExpressionContext(_localctx) + _ctx = _localctx + setState(748) + try match(JavaScriptParser.Tokens.Typeof.rawValue) + setState(749) + try singleExpression(35) + + break + case 9: + _localctx = PreIncrementExpressionContext(_localctx) + _ctx = _localctx + setState(750) + try match(JavaScriptParser.Tokens.PlusPlus.rawValue) + setState(751) + try singleExpression(34) + + break + case 10: + _localctx = PreDecreaseExpressionContext(_localctx) + _ctx = _localctx + setState(752) + try match(JavaScriptParser.Tokens.MinusMinus.rawValue) + setState(753) + try singleExpression(33) + + break + case 11: + _localctx = UnaryPlusExpressionContext(_localctx) + _ctx = _localctx + setState(754) + try match(JavaScriptParser.Tokens.Plus.rawValue) + setState(755) + try singleExpression(32) + + break + case 12: + _localctx = UnaryMinusExpressionContext(_localctx) + _ctx = _localctx + setState(756) + try match(JavaScriptParser.Tokens.Minus.rawValue) + setState(757) + try singleExpression(31) + + break + case 13: + _localctx = BitNotExpressionContext(_localctx) + _ctx = _localctx + setState(758) + try match(JavaScriptParser.Tokens.BitNot.rawValue) + setState(759) + try singleExpression(30) + + break + case 14: + _localctx = NotExpressionContext(_localctx) + _ctx = _localctx + setState(760) + try match(JavaScriptParser.Tokens.Not.rawValue) + setState(761) + try singleExpression(29) + + break + case 15: + _localctx = AwaitExpressionContext(_localctx) + _ctx = _localctx + setState(762) + try match(JavaScriptParser.Tokens.Await.rawValue) + setState(763) + try singleExpression(28) + + break + case 16: + _localctx = ImportExpressionContext(_localctx) + _ctx = _localctx + setState(764) + try match(JavaScriptParser.Tokens.Import.rawValue) + setState(765) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(766) + try singleExpression(0) + setState(767) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + + break + case 17: + _localctx = YieldExpressionContext(_localctx) + _ctx = _localctx + setState(769) + try yieldStatement() + + break + case 18: + _localctx = ThisExpressionContext(_localctx) + _ctx = _localctx + setState(770) + try match(JavaScriptParser.Tokens.This.rawValue) + + break + case 19: + _localctx = IdentifierExpressionContext(_localctx) + _ctx = _localctx + setState(771) + try identifier() + + break + case 20: + _localctx = SuperExpressionContext(_localctx) + _ctx = _localctx + setState(772) + try match(JavaScriptParser.Tokens.Super.rawValue) + + break + case 21: + _localctx = LiteralExpressionContext(_localctx) + _ctx = _localctx + setState(773) + try literal() + + break + case 22: + _localctx = ArrayLiteralExpressionContext(_localctx) + _ctx = _localctx + setState(774) + try arrayLiteral() + + break + case 23: + _localctx = ObjectLiteralExpressionContext(_localctx) + _ctx = _localctx + setState(775) + try objectLiteral() + + break + case 24: + _localctx = ParenthesizedExpressionContext(_localctx) + _ctx = _localctx + setState(776) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(777) + try expressionSequence() + setState(778) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + + break + default: break + } + _ctx!.stop = try _input.LT(-1) + setState(869) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 93, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + if _parseListeners != nil { try triggerExitRuleEvent() } + setState(867) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 92, _ctx) { + case 1: + _localctx = OptionalChainExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(782) + if !(precpred(_ctx, 46)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 46)")) + } + setState(783) + try match(JavaScriptParser.Tokens.QuestionMarkDot.rawValue) + setState(784) + try singleExpression(47) + + break + case 2: + _localctx = PowerExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(785) + if !(precpred(_ctx, 27)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 27)")) + } + setState(786) + try match(JavaScriptParser.Tokens.Power.rawValue) + setState(787) + try singleExpression(27) + + break + case 3: + _localctx = MultiplicativeExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(788) + if !(precpred(_ctx, 26)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 26)")) + } + setState(789) + _la = try _input.LA(1) + if !((Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & 469_762_048) != 0) { + try _errHandler.recoverInline(self) + } else { + _errHandler.reportMatch(self) + try consume() + } + setState(790) + try singleExpression(27) + + break + case 4: + _localctx = AdditiveExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(791) + if !(precpred(_ctx, 25)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 25)")) + } + setState(792) + _la = try _input.LA(1) + if !(_la == JavaScriptParser.Tokens.Plus.rawValue + || _la == JavaScriptParser.Tokens.Minus.rawValue) + { + try _errHandler.recoverInline(self) + } else { + _errHandler.reportMatch(self) + try consume() + } + setState(793) + try singleExpression(26) + + break + case 5: + _localctx = CoalesceExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(794) + if !(precpred(_ctx, 24)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 24)")) + } + setState(795) + try match(JavaScriptParser.Tokens.NullCoalesce.rawValue) + setState(796) + try singleExpression(25) + + break + case 6: + _localctx = BitShiftExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(797) + if !(precpred(_ctx, 23)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 23)")) + } + setState(798) + _la = try _input.LA(1) + if !((Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & 30_064_771_072) != 0) + { + try _errHandler.recoverInline(self) + } else { + _errHandler.reportMatch(self) + try consume() + } + setState(799) + try singleExpression(24) + + break + case 7: + _localctx = RelationalExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(800) + if !(precpred(_ctx, 22)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 22)")) + } + setState(801) + _la = try _input.LA(1) + if !((Int64(_la) & ~0x3f) == 0 + && ((Int64(1) << _la) & 515_396_075_520) != 0) + { + try _errHandler.recoverInline(self) + } else { + _errHandler.reportMatch(self) + try consume() + } + setState(802) + try singleExpression(23) + + break + case 8: + _localctx = InstanceofExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(803) + if !(precpred(_ctx, 21)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 21)")) + } + setState(804) + try match(JavaScriptParser.Tokens.Instanceof.rawValue) + setState(805) + try singleExpression(22) + + break + case 9: + _localctx = InExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(806) + if !(precpred(_ctx, 20)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 20)")) + } + setState(807) + try match(JavaScriptParser.Tokens.In.rawValue) + setState(808) + try singleExpression(21) + + break + case 10: + _localctx = EqualityExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(809) + if !(precpred(_ctx, 19)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 19)")) + } + setState(810) + _la = try _input.LA(1) + if !((Int64(_la) & ~0x3f) == 0 + && ((Int64(1) << _la) & 8_246_337_208_320) != 0) + { + try _errHandler.recoverInline(self) + } else { + _errHandler.reportMatch(self) + try consume() + } + setState(811) + try singleExpression(20) + + break + case 11: + _localctx = BitAndExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(812) + if !(precpred(_ctx, 18)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 18)")) + } + setState(813) + try match(JavaScriptParser.Tokens.BitAnd.rawValue) + setState(814) + try singleExpression(19) + + break + case 12: + _localctx = BitXOrExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(815) + if !(precpred(_ctx, 17)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 17)")) + } + setState(816) + try match(JavaScriptParser.Tokens.BitXOr.rawValue) + setState(817) + try singleExpression(18) + + break + case 13: + _localctx = BitOrExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(818) + if !(precpred(_ctx, 16)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 16)")) + } + setState(819) + try match(JavaScriptParser.Tokens.BitOr.rawValue) + setState(820) + try singleExpression(17) + + break + case 14: + _localctx = LogicalAndExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(821) + if !(precpred(_ctx, 15)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 15)")) + } + setState(822) + try match(JavaScriptParser.Tokens.And.rawValue) + setState(823) + try singleExpression(16) + + break + case 15: + _localctx = LogicalOrExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(824) + if !(precpred(_ctx, 14)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 14)")) + } + setState(825) + try match(JavaScriptParser.Tokens.Or.rawValue) + setState(826) + try singleExpression(15) + + break + case 16: + _localctx = TernaryExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(827) + if !(precpred(_ctx, 13)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 13)")) + } + setState(828) + try match(JavaScriptParser.Tokens.QuestionMark.rawValue) + setState(829) + try singleExpression(0) + setState(830) + try match(JavaScriptParser.Tokens.Colon.rawValue) + setState(831) + try singleExpression(14) + + break + case 17: + _localctx = AssignmentExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(833) + if !(precpred(_ctx, 12)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 12)")) + } + setState(834) + try match(JavaScriptParser.Tokens.Assign.rawValue) + setState(835) + try singleExpression(12) + + break + case 18: + _localctx = AssignmentOperatorExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(836) + if !(precpred(_ctx, 11)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 11)")) + } + setState(837) + try assignmentOperator() + setState(838) + try singleExpression(11) + + break + case 19: + _localctx = MemberIndexExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(840) + if !(precpred(_ctx, 45)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 45)")) + } + setState(842) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.QuestionMarkDot.rawValue { + setState(841) + try match(JavaScriptParser.Tokens.QuestionMarkDot.rawValue) + + } + + setState(844) + try match(JavaScriptParser.Tokens.OpenBracket.rawValue) + setState(845) + try expressionSequence() + setState(846) + try match(JavaScriptParser.Tokens.CloseBracket.rawValue) + + break + case 20: + _localctx = MemberDotExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(848) + if !(precpred(_ctx, 44)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 44)")) + } + setState(850) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.QuestionMark.rawValue { + setState(849) + try match(JavaScriptParser.Tokens.QuestionMark.rawValue) + + } + + setState(852) + try match(JavaScriptParser.Tokens.Dot.rawValue) + setState(854) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Hashtag.rawValue { + setState(853) + try match(JavaScriptParser.Tokens.Hashtag.rawValue) + + } + + setState(856) + try identifierName() + + break + case 21: + _localctx = ArgumentsExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(857) + if !(precpred(_ctx, 41)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 41)")) + } + setState(858) + try arguments() + + break + case 22: + _localctx = PostIncrementExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(859) + if !(precpred(_ctx, 39)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 39)")) + } + setState(860) + if !(try self.notLineTerminator()) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.notLineTerminator()")) + } + setState(861) + try match(JavaScriptParser.Tokens.PlusPlus.rawValue) + + break + case 23: + _localctx = PostDecreaseExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(862) + if !(precpred(_ctx, 38)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 38)")) + } + setState(863) + if !(try self.notLineTerminator()) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.notLineTerminator()")) + } + setState(864) + try match(JavaScriptParser.Tokens.MinusMinus.rawValue) + + break + case 24: + _localctx = TemplateStringExpressionContext( + SingleExpressionContext(_parentctx, _parentState)) + try pushNewRecursionContext( + _localctx, _startState, JavaScriptParser.RULE_singleExpression) + setState(865) + if !(precpred(_ctx, 9)) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "precpred(_ctx, 9)")) + } + setState(866) + try templateStringLiteral() + + break + default: break + } + } + setState(871) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 93, _ctx) + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class AssignableContext: ParserRuleContext { + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + open func arrayLiteral() -> ArrayLiteralContext? { + return getRuleContext(ArrayLiteralContext.self, 0) + } + open func objectLiteral() -> ObjectLiteralContext? { + return getRuleContext(ObjectLiteralContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_assignable } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterAssignable(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitAssignable(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitAssignable(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitAssignable(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func assignable() throws -> AssignableContext { + var _localctx: AssignableContext + _localctx = AssignableContext(_ctx, getState()) + try enterRule(_localctx, 116, JavaScriptParser.RULE_assignable) + defer { try! exitRule() } + do { + setState(875) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .Async, .NonStrictLet, .Identifier: + try enterOuterAlt(_localctx, 1) + setState(872) + try identifier() + + break + + case .OpenBracket: + try enterOuterAlt(_localctx, 2) + setState(873) + try arrayLiteral() + + break + + case .OpenBrace: + try enterOuterAlt(_localctx, 3) + setState(874) + try objectLiteral() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ObjectLiteralContext: ParserRuleContext { + open func OpenBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenBrace.rawValue, 0) + } + open func CloseBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseBrace.rawValue, 0) + } + open func propertyAssignment() -> [PropertyAssignmentContext] { + return getRuleContexts(PropertyAssignmentContext.self) + } + open func propertyAssignment(_ i: Int) -> PropertyAssignmentContext? { + return getRuleContext(PropertyAssignmentContext.self, i) + } + open func Comma() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.Comma.rawValue) + } + open func Comma(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Comma.rawValue, i) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_objectLiteral } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterObjectLiteral(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitObjectLiteral(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitObjectLiteral(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitObjectLiteral(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func objectLiteral() throws -> ObjectLiteralContext { + var _localctx: ObjectLiteralContext + _localctx = ObjectLiteralContext(_ctx, getState()) + try enterRule(_localctx, 118, JavaScriptParser.RULE_objectLiteral) + var _la: Int = 0 + defer { try! exitRule() } + do { + var _alt: Int + try enterOuterAlt(_localctx, 1) + setState(877) + try match(JavaScriptParser.Tokens.OpenBrace.rawValue) + setState(889) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 97, _ctx) { + case 1: + setState(878) + try propertyAssignment() + setState(883) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 95, _ctx) + while _alt != 2 && _alt != ATN.INVALID_ALT_NUMBER { + if _alt == 1 { + setState(879) + try match(JavaScriptParser.Tokens.Comma.rawValue) + setState(880) + try propertyAssignment() + + } + setState(885) + try _errHandler.sync(self) + _alt = try getInterpreter().adaptivePredict(_input, 95, _ctx) + } + setState(887) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Comma.rawValue { + setState(886) + try match(JavaScriptParser.Tokens.Comma.rawValue) + + } + + break + default: break + } + setState(891) + try match(JavaScriptParser.Tokens.CloseBrace.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class AnonymousFunctionContext: ParserRuleContext { + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_anonymousFunction } + } + public class AnonymousFunctionDeclContext: AnonymousFunctionContext { + open func Function_() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Function_.rawValue, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func functionBody() -> FunctionBodyContext? { + return getRuleContext(FunctionBodyContext.self, 0) + } + open func Async() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Async.rawValue, 0) + } + open func Multiply() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Multiply.rawValue, 0) + } + open func formalParameterList() -> FormalParameterListContext? { + return getRuleContext(FormalParameterListContext.self, 0) + } + + public init(_ ctx: AnonymousFunctionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterAnonymousFunctionDecl(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitAnonymousFunctionDecl(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitAnonymousFunctionDecl(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitAnonymousFunctionDecl(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class ArrowFunctionContext: AnonymousFunctionContext { + open func arrowFunctionParameters() -> ArrowFunctionParametersContext? { + return getRuleContext(ArrowFunctionParametersContext.self, 0) + } + open func ARROW() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.ARROW.rawValue, 0) + } + open func arrowFunctionBody() -> ArrowFunctionBodyContext? { + return getRuleContext(ArrowFunctionBodyContext.self, 0) + } + open func Async() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Async.rawValue, 0) + } + + public init(_ ctx: AnonymousFunctionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterArrowFunction(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitArrowFunction(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitArrowFunction(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitArrowFunction(self) + } else { + return visitor.visitChildren(self) + } + } + } + public class FunctionDeclContext: AnonymousFunctionContext { + open func functionDeclaration() -> FunctionDeclarationContext? { + return getRuleContext(FunctionDeclarationContext.self, 0) + } + + public init(_ ctx: AnonymousFunctionContext) { + super.init() + copyFrom(ctx) + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterFunctionDecl(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitFunctionDecl(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitFunctionDecl(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitFunctionDecl(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func anonymousFunction() throws -> AnonymousFunctionContext { + var _localctx: AnonymousFunctionContext + _localctx = AnonymousFunctionContext(_ctx, getState()) + try enterRule(_localctx, 120, JavaScriptParser.RULE_anonymousFunction) + var _la: Int = 0 + defer { try! exitRule() } + do { + setState(914) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 102, _ctx) { + case 1: + _localctx = FunctionDeclContext(_localctx) + try enterOuterAlt(_localctx, 1) + setState(893) + try functionDeclaration() + + break + case 2: + _localctx = AnonymousFunctionDeclContext(_localctx) + try enterOuterAlt(_localctx, 2) + setState(895) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Async.rawValue { + setState(894) + try match(JavaScriptParser.Tokens.Async.rawValue) + + } + + setState(897) + try match(JavaScriptParser.Tokens.Function_.rawValue) + setState(899) + try _errHandler.sync(self) + _la = try _input.LA(1) + if _la == JavaScriptParser.Tokens.Multiply.rawValue { + setState(898) + try match(JavaScriptParser.Tokens.Multiply.rawValue) + + } + + setState(901) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(903) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & 262688) != 0 + || (Int64((_la - 107)) & ~0x3f) == 0 && ((Int64(1) << (_la - 107)) & 4129) != 0 + { + setState(902) + try formalParameterList() + + } + + setState(905) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + setState(906) + try functionBody() + + break + case 3: + _localctx = ArrowFunctionContext(_localctx) + try enterOuterAlt(_localctx, 3) + setState(908) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 101, _ctx) { + case 1: + setState(907) + try match(JavaScriptParser.Tokens.Async.rawValue) + + break + default: break + } + setState(910) + try arrowFunctionParameters() + setState(911) + try match(JavaScriptParser.Tokens.ARROW.rawValue) + setState(912) + try arrowFunctionBody() + + break + default: break + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ArrowFunctionParametersContext: ParserRuleContext { + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + open func OpenParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OpenParen.rawValue, 0) + } + open func CloseParen() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.CloseParen.rawValue, 0) + } + open func formalParameterList() -> FormalParameterListContext? { + return getRuleContext(FormalParameterListContext.self, 0) + } + override open func getRuleIndex() -> Int { + return JavaScriptParser.RULE_arrowFunctionParameters + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterArrowFunctionParameters(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitArrowFunctionParameters(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitArrowFunctionParameters(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitArrowFunctionParameters(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func arrowFunctionParameters() throws -> ArrowFunctionParametersContext + { + var _localctx: ArrowFunctionParametersContext + _localctx = ArrowFunctionParametersContext(_ctx, getState()) + try enterRule(_localctx, 122, JavaScriptParser.RULE_arrowFunctionParameters) + var _la: Int = 0 + defer { try! exitRule() } + do { + setState(922) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .Async, .NonStrictLet, .Identifier: + try enterOuterAlt(_localctx, 1) + setState(916) + try identifier() + + break + + case .OpenParen: + try enterOuterAlt(_localctx, 2) + setState(917) + try match(JavaScriptParser.Tokens.OpenParen.rawValue) + setState(919) + try _errHandler.sync(self) + _la = try _input.LA(1) + if (Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & 262688) != 0 + || (Int64((_la - 107)) & ~0x3f) == 0 && ((Int64(1) << (_la - 107)) & 4129) != 0 + { + setState(918) + try formalParameterList() + + } + + setState(921) + try match(JavaScriptParser.Tokens.CloseParen.rawValue) + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ArrowFunctionBodyContext: ParserRuleContext { + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func functionBody() -> FunctionBodyContext? { + return getRuleContext(FunctionBodyContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_arrowFunctionBody } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterArrowFunctionBody(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitArrowFunctionBody(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitArrowFunctionBody(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitArrowFunctionBody(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func arrowFunctionBody() throws -> ArrowFunctionBodyContext { + var _localctx: ArrowFunctionBodyContext + _localctx = ArrowFunctionBodyContext(_ctx, getState()) + try enterRule(_localctx, 124, JavaScriptParser.RULE_arrowFunctionBody) + defer { try! exitRule() } + do { + setState(926) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 105, _ctx) { + case 1: + try enterOuterAlt(_localctx, 1) + setState(924) + try singleExpression(0) + + break + case 2: + try enterOuterAlt(_localctx, 2) + setState(925) + try functionBody() + + break + default: break + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class AssignmentOperatorContext: ParserRuleContext { + open func MultiplyAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.MultiplyAssign.rawValue, 0) + } + open func DivideAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.DivideAssign.rawValue, 0) + } + open func ModulusAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.ModulusAssign.rawValue, 0) + } + open func PlusAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.PlusAssign.rawValue, 0) + } + open func MinusAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.MinusAssign.rawValue, 0) + } + open func LeftShiftArithmeticAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.LeftShiftArithmeticAssign.rawValue, 0) + } + open func RightShiftArithmeticAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.RightShiftArithmeticAssign.rawValue, 0) + } + open func RightShiftLogicalAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.RightShiftLogicalAssign.rawValue, 0) + } + open func BitAndAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BitAndAssign.rawValue, 0) + } + open func BitXorAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BitXorAssign.rawValue, 0) + } + open func BitOrAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BitOrAssign.rawValue, 0) + } + open func PowerAssign() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.PowerAssign.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_assignmentOperator } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterAssignmentOperator(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitAssignmentOperator(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitAssignmentOperator(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitAssignmentOperator(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func assignmentOperator() throws -> AssignmentOperatorContext { + var _localctx: AssignmentOperatorContext + _localctx = AssignmentOperatorContext(_ctx, getState()) + try enterRule(_localctx, 126, JavaScriptParser.RULE_assignmentOperator) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(928) + _la = try _input.LA(1) + if !((Int64(_la) & ~0x3f) == 0 && ((Int64(1) << _la) & 1_152_640_029_630_136_320) != 0) + { + try _errHandler.recoverInline(self) + } else { + _errHandler.reportMatch(self) + try consume() + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class LiteralContext: ParserRuleContext { + open func NullLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.NullLiteral.rawValue, 0) + } + open func BooleanLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BooleanLiteral.rawValue, 0) + } + open func StringLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.StringLiteral.rawValue, 0) + } + open func templateStringLiteral() -> TemplateStringLiteralContext? { + return getRuleContext(TemplateStringLiteralContext.self, 0) + } + open func RegularExpressionLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.RegularExpressionLiteral.rawValue, 0) + } + open func numericLiteral() -> NumericLiteralContext? { + return getRuleContext(NumericLiteralContext.self, 0) + } + open func bigintLiteral() -> BigintLiteralContext? { + return getRuleContext(BigintLiteralContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_literal } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.enterLiteral(self) } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitLiteral(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitLiteral(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitLiteral(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func literal() throws -> LiteralContext { + var _localctx: LiteralContext + _localctx = LiteralContext(_ctx, getState()) + try enterRule(_localctx, 128, JavaScriptParser.RULE_literal) + defer { try! exitRule() } + do { + setState(937) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .NullLiteral: + try enterOuterAlt(_localctx, 1) + setState(930) + try match(JavaScriptParser.Tokens.NullLiteral.rawValue) + + break + + case .BooleanLiteral: + try enterOuterAlt(_localctx, 2) + setState(931) + try match(JavaScriptParser.Tokens.BooleanLiteral.rawValue) + + break + + case .StringLiteral: + try enterOuterAlt(_localctx, 3) + setState(932) + try match(JavaScriptParser.Tokens.StringLiteral.rawValue) + + break + + case .BackTick: + try enterOuterAlt(_localctx, 4) + setState(933) + try templateStringLiteral() + + break + + case .RegularExpressionLiteral: + try enterOuterAlt(_localctx, 5) + setState(934) + try match(JavaScriptParser.Tokens.RegularExpressionLiteral.rawValue) + + break + case .DecimalLiteral, .HexIntegerLiteral, .OctalIntegerLiteral, .OctalIntegerLiteral2, + .BinaryIntegerLiteral: + try enterOuterAlt(_localctx, 6) + setState(935) + try numericLiteral() + + break + case .BigHexIntegerLiteral, .BigOctalIntegerLiteral, .BigBinaryIntegerLiteral, + .BigDecimalIntegerLiteral: + try enterOuterAlt(_localctx, 7) + setState(936) + try bigintLiteral() + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class TemplateStringLiteralContext: ParserRuleContext { + open func BackTick() -> [TerminalNode] { + return getTokens(JavaScriptParser.Tokens.BackTick.rawValue) + } + open func BackTick(_ i: Int) -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BackTick.rawValue, i) + } + open func templateStringAtom() -> [TemplateStringAtomContext] { + return getRuleContexts(TemplateStringAtomContext.self) + } + open func templateStringAtom(_ i: Int) -> TemplateStringAtomContext? { + return getRuleContext(TemplateStringAtomContext.self, i) + } + override open func getRuleIndex() -> Int { + return JavaScriptParser.RULE_templateStringLiteral + } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterTemplateStringLiteral(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitTemplateStringLiteral(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitTemplateStringLiteral(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitTemplateStringLiteral(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func templateStringLiteral() throws -> TemplateStringLiteralContext { + var _localctx: TemplateStringLiteralContext + _localctx = TemplateStringLiteralContext(_ctx, getState()) + try enterRule(_localctx, 130, JavaScriptParser.RULE_templateStringLiteral) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(939) + try match(JavaScriptParser.Tokens.BackTick.rawValue) + setState(943) + try _errHandler.sync(self) + _la = try _input.LA(1) + while _la == JavaScriptParser.Tokens.TemplateStringStartExpression.rawValue + || _la == JavaScriptParser.Tokens.TemplateStringAtom.rawValue + { + setState(940) + try templateStringAtom() + + setState(945) + try _errHandler.sync(self) + _la = try _input.LA(1) + } + setState(946) + try match(JavaScriptParser.Tokens.BackTick.rawValue) + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class TemplateStringAtomContext: ParserRuleContext { + open func TemplateStringAtom() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.TemplateStringAtom.rawValue, 0) + } + open func TemplateStringStartExpression() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.TemplateStringStartExpression.rawValue, 0) + } + open func singleExpression() -> SingleExpressionContext? { + return getRuleContext(SingleExpressionContext.self, 0) + } + open func TemplateCloseBrace() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.TemplateCloseBrace.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_templateStringAtom } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterTemplateStringAtom(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitTemplateStringAtom(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitTemplateStringAtom(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitTemplateStringAtom(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func templateStringAtom() throws -> TemplateStringAtomContext { + var _localctx: TemplateStringAtomContext + _localctx = TemplateStringAtomContext(_ctx, getState()) + try enterRule(_localctx, 132, JavaScriptParser.RULE_templateStringAtom) + defer { try! exitRule() } + do { + setState(953) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .TemplateStringAtom: + try enterOuterAlt(_localctx, 1) + setState(948) + try match(JavaScriptParser.Tokens.TemplateStringAtom.rawValue) + + break + + case .TemplateStringStartExpression: + try enterOuterAlt(_localctx, 2) + setState(949) + try match(JavaScriptParser.Tokens.TemplateStringStartExpression.rawValue) + setState(950) + try singleExpression(0) + setState(951) + try match(JavaScriptParser.Tokens.TemplateCloseBrace.rawValue) + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class NumericLiteralContext: ParserRuleContext { + open func DecimalLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.DecimalLiteral.rawValue, 0) + } + open func HexIntegerLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.HexIntegerLiteral.rawValue, 0) + } + open func OctalIntegerLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OctalIntegerLiteral.rawValue, 0) + } + open func OctalIntegerLiteral2() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.OctalIntegerLiteral2.rawValue, 0) + } + open func BinaryIntegerLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BinaryIntegerLiteral.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_numericLiteral } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterNumericLiteral(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitNumericLiteral(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitNumericLiteral(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitNumericLiteral(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func numericLiteral() throws -> NumericLiteralContext { + var _localctx: NumericLiteralContext + _localctx = NumericLiteralContext(_ctx, getState()) + try enterRule(_localctx, 134, JavaScriptParser.RULE_numericLiteral) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(955) + _la = try _input.LA(1) + if !((Int64((_la - 63)) & ~0x3f) == 0 && ((Int64(1) << (_la - 63)) & 31) != 0) { + try _errHandler.recoverInline(self) + } else { + _errHandler.reportMatch(self) + try consume() + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class BigintLiteralContext: ParserRuleContext { + open func BigDecimalIntegerLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BigDecimalIntegerLiteral.rawValue, 0) + } + open func BigHexIntegerLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BigHexIntegerLiteral.rawValue, 0) + } + open func BigOctalIntegerLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BigOctalIntegerLiteral.rawValue, 0) + } + open func BigBinaryIntegerLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BigBinaryIntegerLiteral.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_bigintLiteral } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterBigintLiteral(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitBigintLiteral(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitBigintLiteral(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitBigintLiteral(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func bigintLiteral() throws -> BigintLiteralContext { + var _localctx: BigintLiteralContext + _localctx = BigintLiteralContext(_ctx, getState()) + try enterRule(_localctx, 136, JavaScriptParser.RULE_bigintLiteral) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(957) + _la = try _input.LA(1) + if !((Int64((_la - 68)) & ~0x3f) == 0 && ((Int64(1) << (_la - 68)) & 15) != 0) { + try _errHandler.recoverInline(self) + } else { + _errHandler.reportMatch(self) + try consume() + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class GetterContext: ParserRuleContext { + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + open func propertyName() -> PropertyNameContext? { + return getRuleContext(PropertyNameContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_getter } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.enterGetter(self) } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitGetter(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitGetter(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitGetter(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func getter() throws -> GetterContext { + var _localctx: GetterContext + _localctx = GetterContext(_ctx, getState()) + try enterRule(_localctx, 138, JavaScriptParser.RULE_getter) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(959) + if !(try self.n("get")) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.n(\"get\")")) + } + setState(960) + try identifier() + setState(961) + try propertyName() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class SetterContext: ParserRuleContext { + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + open func propertyName() -> PropertyNameContext? { + return getRuleContext(PropertyNameContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_setter } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.enterSetter(self) } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitSetter(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitSetter(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitSetter(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func setter() throws -> SetterContext { + var _localctx: SetterContext + _localctx = SetterContext(_ctx, getState()) + try enterRule(_localctx, 140, JavaScriptParser.RULE_setter) + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(963) + if !(try self.n("set")) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.n(\"set\")")) + } + setState(964) + try identifier() + setState(965) + try propertyName() + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class IdentifierNameContext: ParserRuleContext { + open func identifier() -> IdentifierContext? { + return getRuleContext(IdentifierContext.self, 0) + } + open func reservedWord() -> ReservedWordContext? { + return getRuleContext(ReservedWordContext.self, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_identifierName } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterIdentifierName(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitIdentifierName(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitIdentifierName(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitIdentifierName(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func identifierName() throws -> IdentifierNameContext { + var _localctx: IdentifierNameContext + _localctx = IdentifierNameContext(_ctx, getState()) + try enterRule(_localctx, 142, JavaScriptParser.RULE_identifierName) + defer { try! exitRule() } + do { + setState(969) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 109, _ctx) { + case 1: + try enterOuterAlt(_localctx, 1) + setState(967) + try identifier() + + break + case 2: + try enterOuterAlt(_localctx, 2) + setState(968) + try reservedWord() + + break + default: break + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class IdentifierContext: ParserRuleContext { + open func Identifier() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Identifier.rawValue, 0) + } + open func NonStrictLet() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.NonStrictLet.rawValue, 0) + } + open func Async() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Async.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_identifier } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterIdentifier(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitIdentifier(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitIdentifier(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitIdentifier(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func identifier() throws -> IdentifierContext { + var _localctx: IdentifierContext + _localctx = IdentifierContext(_ctx, getState()) + try enterRule(_localctx, 144, JavaScriptParser.RULE_identifier) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(971) + _la = try _input.LA(1) + if !((Int64((_la - 107)) & ~0x3f) == 0 && ((Int64(1) << (_la - 107)) & 4129) != 0) { + try _errHandler.recoverInline(self) + } else { + _errHandler.reportMatch(self) + try consume() + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class ReservedWordContext: ParserRuleContext { + open func keyword() -> KeywordContext? { return getRuleContext(KeywordContext.self, 0) } + open func NullLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.NullLiteral.rawValue, 0) + } + open func BooleanLiteral() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.BooleanLiteral.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_reservedWord } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.enterReservedWord(self) + } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { + listener.exitReservedWord(self) + } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitReservedWord(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitReservedWord(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func reservedWord() throws -> ReservedWordContext { + var _localctx: ReservedWordContext + _localctx = ReservedWordContext(_ctx, getState()) + try enterRule(_localctx, 146, JavaScriptParser.RULE_reservedWord) + defer { try! exitRule() } + do { + setState(976) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .Break, .Do, .Instanceof, .Typeof, .Case, .Else, .New, .Var, .Catch, .Finally, + .Return, .Void, .Continue, .For, .Switch, .While, .Debugger, .Function_, .This, + .With, .Default, .If, .Throw, .Delete, .In, .Try, .As, .From, .Class, .Enum, + .Extends, .Super, .Const, .Export, .Import, .Async, .Await, .Yield, .Implements, + .StrictLet, .NonStrictLet, .Private, .Public, .Interface, .Package, .Protected, + .Static: + try enterOuterAlt(_localctx, 1) + setState(973) + try keyword() + + break + + case .NullLiteral: + try enterOuterAlt(_localctx, 2) + setState(974) + try match(JavaScriptParser.Tokens.NullLiteral.rawValue) + + break + + case .BooleanLiteral: + try enterOuterAlt(_localctx, 3) + setState(975) + try match(JavaScriptParser.Tokens.BooleanLiteral.rawValue) + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class KeywordContext: ParserRuleContext { + open func Break() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Break.rawValue, 0) + } + open func Do() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.Do.rawValue, 0) } + open func Instanceof() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Instanceof.rawValue, 0) + } + open func Typeof() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Typeof.rawValue, 0) + } + open func Case() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Case.rawValue, 0) + } + open func Else() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Else.rawValue, 0) + } + open func New() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.New.rawValue, 0) + } + open func Var() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Var.rawValue, 0) + } + open func Catch() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Catch.rawValue, 0) + } + open func Finally() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Finally.rawValue, 0) + } + open func Return() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Return.rawValue, 0) + } + open func Void() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Void.rawValue, 0) + } + open func Continue() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Continue.rawValue, 0) + } + open func For() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.For.rawValue, 0) + } + open func Switch() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Switch.rawValue, 0) + } + open func While() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.While.rawValue, 0) + } + open func Debugger() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Debugger.rawValue, 0) + } + open func Function_() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Function_.rawValue, 0) + } + open func This() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.This.rawValue, 0) + } + open func With() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.With.rawValue, 0) + } + open func Default() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Default.rawValue, 0) + } + open func If() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.If.rawValue, 0) } + open func Throw() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Throw.rawValue, 0) + } + open func Delete() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Delete.rawValue, 0) + } + open func In() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.In.rawValue, 0) } + open func Try() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Try.rawValue, 0) + } + open func Class() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Class.rawValue, 0) + } + open func Enum() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Enum.rawValue, 0) + } + open func Extends() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Extends.rawValue, 0) + } + open func Super() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Super.rawValue, 0) + } + open func Const() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Const.rawValue, 0) + } + open func Export() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Export.rawValue, 0) + } + open func Import() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Import.rawValue, 0) + } + open func Implements() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Implements.rawValue, 0) + } + open func let_() -> Let_Context? { return getRuleContext(Let_Context.self, 0) } + open func Private() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Private.rawValue, 0) + } + open func Public() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Public.rawValue, 0) + } + open func Interface() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Interface.rawValue, 0) + } + open func Package() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Package.rawValue, 0) + } + open func Protected() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Protected.rawValue, 0) + } + open func Static() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Static.rawValue, 0) + } + open func Yield() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Yield.rawValue, 0) + } + open func Async() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Async.rawValue, 0) + } + open func Await() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.Await.rawValue, 0) + } + open func From() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.From.rawValue, 0) + } + open func As() -> TerminalNode? { return getToken(JavaScriptParser.Tokens.As.rawValue, 0) } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_keyword } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.enterKeyword(self) } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitKeyword(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitKeyword(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitKeyword(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func keyword() throws -> KeywordContext { + var _localctx: KeywordContext + _localctx = KeywordContext(_ctx, getState()) + try enterRule(_localctx, 148, JavaScriptParser.RULE_keyword) + defer { try! exitRule() } + do { + setState(1024) + try _errHandler.sync(self) + switch JavaScriptParser.Tokens(rawValue: try _input.LA(1))! { + case .Break: + try enterOuterAlt(_localctx, 1) + setState(978) + try match(JavaScriptParser.Tokens.Break.rawValue) + + break + + case .Do: + try enterOuterAlt(_localctx, 2) + setState(979) + try match(JavaScriptParser.Tokens.Do.rawValue) + + break + + case .Instanceof: + try enterOuterAlt(_localctx, 3) + setState(980) + try match(JavaScriptParser.Tokens.Instanceof.rawValue) + + break + + case .Typeof: + try enterOuterAlt(_localctx, 4) + setState(981) + try match(JavaScriptParser.Tokens.Typeof.rawValue) + + break + + case .Case: + try enterOuterAlt(_localctx, 5) + setState(982) + try match(JavaScriptParser.Tokens.Case.rawValue) + + break + + case .Else: + try enterOuterAlt(_localctx, 6) + setState(983) + try match(JavaScriptParser.Tokens.Else.rawValue) + + break + + case .New: + try enterOuterAlt(_localctx, 7) + setState(984) + try match(JavaScriptParser.Tokens.New.rawValue) + + break + + case .Var: + try enterOuterAlt(_localctx, 8) + setState(985) + try match(JavaScriptParser.Tokens.Var.rawValue) + + break + + case .Catch: + try enterOuterAlt(_localctx, 9) + setState(986) + try match(JavaScriptParser.Tokens.Catch.rawValue) + + break + + case .Finally: + try enterOuterAlt(_localctx, 10) + setState(987) + try match(JavaScriptParser.Tokens.Finally.rawValue) + + break + + case .Return: + try enterOuterAlt(_localctx, 11) + setState(988) + try match(JavaScriptParser.Tokens.Return.rawValue) + + break + + case .Void: + try enterOuterAlt(_localctx, 12) + setState(989) + try match(JavaScriptParser.Tokens.Void.rawValue) + + break + + case .Continue: + try enterOuterAlt(_localctx, 13) + setState(990) + try match(JavaScriptParser.Tokens.Continue.rawValue) + + break + + case .For: + try enterOuterAlt(_localctx, 14) + setState(991) + try match(JavaScriptParser.Tokens.For.rawValue) + + break + + case .Switch: + try enterOuterAlt(_localctx, 15) + setState(992) + try match(JavaScriptParser.Tokens.Switch.rawValue) + + break + + case .While: + try enterOuterAlt(_localctx, 16) + setState(993) + try match(JavaScriptParser.Tokens.While.rawValue) + + break + + case .Debugger: + try enterOuterAlt(_localctx, 17) + setState(994) + try match(JavaScriptParser.Tokens.Debugger.rawValue) + + break + + case .Function_: + try enterOuterAlt(_localctx, 18) + setState(995) + try match(JavaScriptParser.Tokens.Function_.rawValue) + + break + + case .This: + try enterOuterAlt(_localctx, 19) + setState(996) + try match(JavaScriptParser.Tokens.This.rawValue) + + break + + case .With: + try enterOuterAlt(_localctx, 20) + setState(997) + try match(JavaScriptParser.Tokens.With.rawValue) + + break + + case .Default: + try enterOuterAlt(_localctx, 21) + setState(998) + try match(JavaScriptParser.Tokens.Default.rawValue) + + break + + case .If: + try enterOuterAlt(_localctx, 22) + setState(999) + try match(JavaScriptParser.Tokens.If.rawValue) + + break + + case .Throw: + try enterOuterAlt(_localctx, 23) + setState(1000) + try match(JavaScriptParser.Tokens.Throw.rawValue) + + break + + case .Delete: + try enterOuterAlt(_localctx, 24) + setState(1001) + try match(JavaScriptParser.Tokens.Delete.rawValue) + + break + + case .In: + try enterOuterAlt(_localctx, 25) + setState(1002) + try match(JavaScriptParser.Tokens.In.rawValue) + + break + + case .Try: + try enterOuterAlt(_localctx, 26) + setState(1003) + try match(JavaScriptParser.Tokens.Try.rawValue) + + break + + case .Class: + try enterOuterAlt(_localctx, 27) + setState(1004) + try match(JavaScriptParser.Tokens.Class.rawValue) + + break + + case .Enum: + try enterOuterAlt(_localctx, 28) + setState(1005) + try match(JavaScriptParser.Tokens.Enum.rawValue) + + break + + case .Extends: + try enterOuterAlt(_localctx, 29) + setState(1006) + try match(JavaScriptParser.Tokens.Extends.rawValue) + + break + + case .Super: + try enterOuterAlt(_localctx, 30) + setState(1007) + try match(JavaScriptParser.Tokens.Super.rawValue) + + break + + case .Const: + try enterOuterAlt(_localctx, 31) + setState(1008) + try match(JavaScriptParser.Tokens.Const.rawValue) + + break + + case .Export: + try enterOuterAlt(_localctx, 32) + setState(1009) + try match(JavaScriptParser.Tokens.Export.rawValue) + + break + + case .Import: + try enterOuterAlt(_localctx, 33) + setState(1010) + try match(JavaScriptParser.Tokens.Import.rawValue) + + break + + case .Implements: + try enterOuterAlt(_localctx, 34) + setState(1011) + try match(JavaScriptParser.Tokens.Implements.rawValue) + + break + case .StrictLet, .NonStrictLet: + try enterOuterAlt(_localctx, 35) + setState(1012) + try let_() + + break + + case .Private: + try enterOuterAlt(_localctx, 36) + setState(1013) + try match(JavaScriptParser.Tokens.Private.rawValue) + + break + + case .Public: + try enterOuterAlt(_localctx, 37) + setState(1014) + try match(JavaScriptParser.Tokens.Public.rawValue) + + break + + case .Interface: + try enterOuterAlt(_localctx, 38) + setState(1015) + try match(JavaScriptParser.Tokens.Interface.rawValue) + + break + + case .Package: + try enterOuterAlt(_localctx, 39) + setState(1016) + try match(JavaScriptParser.Tokens.Package.rawValue) + + break + + case .Protected: + try enterOuterAlt(_localctx, 40) + setState(1017) + try match(JavaScriptParser.Tokens.Protected.rawValue) + + break + + case .Static: + try enterOuterAlt(_localctx, 41) + setState(1018) + try match(JavaScriptParser.Tokens.Static.rawValue) + + break + + case .Yield: + try enterOuterAlt(_localctx, 42) + setState(1019) + try match(JavaScriptParser.Tokens.Yield.rawValue) + + break + + case .Async: + try enterOuterAlt(_localctx, 43) + setState(1020) + try match(JavaScriptParser.Tokens.Async.rawValue) + + break + + case .Await: + try enterOuterAlt(_localctx, 44) + setState(1021) + try match(JavaScriptParser.Tokens.Await.rawValue) + + break + + case .From: + try enterOuterAlt(_localctx, 45) + setState(1022) + try match(JavaScriptParser.Tokens.From.rawValue) + + break + + case .As: + try enterOuterAlt(_localctx, 46) + setState(1023) + try match(JavaScriptParser.Tokens.As.rawValue) + + break + default: throw ANTLRException.recognition(e: NoViableAltException(self)) + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class Let_Context: ParserRuleContext { + open func NonStrictLet() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.NonStrictLet.rawValue, 0) + } + open func StrictLet() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.StrictLet.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_let_ } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.enterLet_(self) } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitLet_(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitLet_(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitLet_(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func let_() throws -> Let_Context { + var _localctx: Let_Context + _localctx = Let_Context(_ctx, getState()) + try enterRule(_localctx, 150, JavaScriptParser.RULE_let_) + var _la: Int = 0 + defer { try! exitRule() } + do { + try enterOuterAlt(_localctx, 1) + setState(1026) + _la = try _input.LA(1) + if !(_la == JavaScriptParser.Tokens.StrictLet.rawValue + || _la == JavaScriptParser.Tokens.NonStrictLet.rawValue) + { + try _errHandler.recoverInline(self) + } else { + _errHandler.reportMatch(self) + try consume() + } + + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + public class EosContext: ParserRuleContext { + open func SemiColon() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.SemiColon.rawValue, 0) + } + open func EOF() -> TerminalNode? { + return getToken(JavaScriptParser.Tokens.EOF.rawValue, 0) + } + override open func getRuleIndex() -> Int { return JavaScriptParser.RULE_eos } + override open func enterRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.enterEos(self) } + } + override open func exitRule(_ listener: ParseTreeListener) { + if let listener = listener as? JavaScriptParserListener { listener.exitEos(self) } + } + override open func accept(_ visitor: ParseTreeVisitor) -> T? { + if let visitor = visitor as? JavaScriptParserVisitor { + return visitor.visitEos(self) + } else if let visitor = visitor as? JavaScriptParserBaseVisitor { + return visitor.visitEos(self) + } else { + return visitor.visitChildren(self) + } + } + } + @discardableResult open func eos() throws -> EosContext { + var _localctx: EosContext + _localctx = EosContext(_ctx, getState()) + try enterRule(_localctx, 152, JavaScriptParser.RULE_eos) + defer { try! exitRule() } + do { + setState(1032) + try _errHandler.sync(self) + switch try getInterpreter().adaptivePredict(_input, 112, _ctx) { + case 1: + try enterOuterAlt(_localctx, 1) + setState(1028) + try match(JavaScriptParser.Tokens.SemiColon.rawValue) + + break + case 2: + try enterOuterAlt(_localctx, 2) + setState(1029) + try match(JavaScriptParser.Tokens.EOF.rawValue) + + break + case 3: + try enterOuterAlt(_localctx, 3) + setState(1030) + if !(try self.lineTerminatorAhead()) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.lineTerminatorAhead()")) + } + + break + case 4: + try enterOuterAlt(_localctx, 4) + setState(1031) + if !(try self.closeBrace()) { + throw ANTLRException.recognition( + e: FailedPredicateException(self, "try self.closeBrace()")) + } + + break + default: break + } + } catch ANTLRException.recognition(let re) { + _localctx.exception = re + _errHandler.reportError(self, re) + try _errHandler.recover(self, re) + } + + return _localctx + } + + override open func sempred(_ _localctx: RuleContext?, _ ruleIndex: Int, _ predIndex: Int) throws + -> Bool + { + switch ruleIndex { + case 19: + return try expressionStatement_sempred( + _localctx?.castdown(ExpressionStatementContext.self), predIndex) + case 21: + return try iterationStatement_sempred( + _localctx?.castdown(IterationStatementContext.self), predIndex) + case 23: + return try continueStatement_sempred( + _localctx?.castdown(ContinueStatementContext.self), predIndex) + case 24: + return try breakStatement_sempred( + _localctx?.castdown(BreakStatementContext.self), predIndex) + case 25: + return try returnStatement_sempred( + _localctx?.castdown(ReturnStatementContext.self), predIndex) + case 26: + return try yieldStatement_sempred( + _localctx?.castdown(YieldStatementContext.self), predIndex) + case 34: + return try throwStatement_sempred( + _localctx?.castdown(ThrowStatementContext.self), predIndex) + case 42: + return try classElement_sempred( + _localctx?.castdown(ClassElementContext.self), predIndex) + case 57: + return try singleExpression_sempred( + _localctx?.castdown(SingleExpressionContext.self), predIndex) + case 69: return try getter_sempred(_localctx?.castdown(GetterContext.self), predIndex) + case 70: return try setter_sempred(_localctx?.castdown(SetterContext.self), predIndex) + case 76: return try eos_sempred(_localctx?.castdown(EosContext.self), predIndex) + default: return true + } + } + private func expressionStatement_sempred( + _ _localctx: ExpressionStatementContext!, _ predIndex: Int + ) throws -> Bool { + switch predIndex { + case 0: return try self.notOpenBraceAndNotFunction() + default: return true + } + } + private func iterationStatement_sempred( + _ _localctx: IterationStatementContext!, _ predIndex: Int + ) throws -> Bool { + switch predIndex { + case 1: return try self.p("of") + default: return true + } + } + private func continueStatement_sempred(_ _localctx: ContinueStatementContext!, _ predIndex: Int) + throws -> Bool + { + switch predIndex { + case 2: return try self.notLineTerminator() + default: return true + } + } + private func breakStatement_sempred(_ _localctx: BreakStatementContext!, _ predIndex: Int) + throws -> Bool + { + switch predIndex { + case 3: return try self.notLineTerminator() + default: return true + } + } + private func returnStatement_sempred(_ _localctx: ReturnStatementContext!, _ predIndex: Int) + throws -> Bool + { + switch predIndex { + case 4: return try self.notLineTerminator() + default: return true + } + } + private func yieldStatement_sempred(_ _localctx: YieldStatementContext!, _ predIndex: Int) + throws -> Bool + { + switch predIndex { + case 5: return try self.notLineTerminator() + default: return true + } + } + private func throwStatement_sempred(_ _localctx: ThrowStatementContext!, _ predIndex: Int) + throws -> Bool + { + switch predIndex { + case 6: return try self.notLineTerminator() + default: return true + } + } + private func classElement_sempred(_ _localctx: ClassElementContext!, _ predIndex: Int) throws + -> Bool + { + switch predIndex { + case 7: return try self.n("static") + default: return true + } + } + private func singleExpression_sempred(_ _localctx: SingleExpressionContext!, _ predIndex: Int) + throws -> Bool + { + switch predIndex { + case 8: return precpred(_ctx, 46) + case 9: return precpred(_ctx, 27) + case 10: return precpred(_ctx, 26) + case 11: return precpred(_ctx, 25) + case 12: return precpred(_ctx, 24) + case 13: return precpred(_ctx, 23) + case 14: return precpred(_ctx, 22) + case 15: return precpred(_ctx, 21) + case 16: return precpred(_ctx, 20) + case 17: return precpred(_ctx, 19) + case 18: return precpred(_ctx, 18) + case 19: return precpred(_ctx, 17) + case 20: return precpred(_ctx, 16) + case 21: return precpred(_ctx, 15) + case 22: return precpred(_ctx, 14) + case 23: return precpred(_ctx, 13) + case 24: return precpred(_ctx, 12) + case 25: return precpred(_ctx, 11) + case 26: return precpred(_ctx, 45) + case 27: return precpred(_ctx, 44) + case 28: return precpred(_ctx, 41) + case 29: return precpred(_ctx, 39) + case 30: return try self.notLineTerminator() + case 31: return precpred(_ctx, 38) + case 32: return try self.notLineTerminator() + case 33: return precpred(_ctx, 9) + default: return true + } + } + private func getter_sempred(_ _localctx: GetterContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 34: return try self.n("get") + default: return true + } + } + private func setter_sempred(_ _localctx: SetterContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 35: return try self.n("set") + default: return true + } + } + private func eos_sempred(_ _localctx: EosContext!, _ predIndex: Int) throws -> Bool { + switch predIndex { + case 36: return try self.lineTerminatorAhead() + case 37: return try self.closeBrace() + default: return true + } + } + + static let _serializedATN: [Int] = [ + 4, 1, 128, 1035, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, + 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, + 13, 7, 13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, + 19, 2, 20, 7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, 25, 7, 25, 2, + 26, 7, 26, 2, 27, 7, 27, 2, 28, 7, 28, 2, 29, 7, 29, 2, 30, 7, 30, 2, 31, 7, 31, 2, 32, 7, + 32, 2, 33, 7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36, 7, 36, 2, 37, 7, 37, 2, 38, 7, 38, 2, + 39, 7, 39, 2, 40, 7, 40, 2, 41, 7, 41, 2, 42, 7, 42, 2, 43, 7, 43, 2, 44, 7, 44, 2, 45, 7, + 45, 2, 46, 7, 46, 2, 47, 7, 47, 2, 48, 7, 48, 2, 49, 7, 49, 2, 50, 7, 50, 2, 51, 7, 51, 2, + 52, 7, 52, 2, 53, 7, 53, 2, 54, 7, 54, 2, 55, 7, 55, 2, 56, 7, 56, 2, 57, 7, 57, 2, 58, 7, + 58, 2, 59, 7, 59, 2, 60, 7, 60, 2, 61, 7, 61, 2, 62, 7, 62, 2, 63, 7, 63, 2, 64, 7, 64, 2, + 65, 7, 65, 2, 66, 7, 66, 2, 67, 7, 67, 2, 68, 7, 68, 2, 69, 7, 69, 2, 70, 7, 70, 2, 71, 7, + 71, 2, 72, 7, 72, 2, 73, 7, 73, 2, 74, 7, 74, 2, 75, 7, 75, 2, 76, 7, 76, 1, 0, 3, 0, 156, + 8, 0, 1, 0, 3, 0, 159, 8, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, + 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 3, 2, 185, + 8, 2, 1, 3, 1, 3, 3, 3, 189, 8, 3, 1, 3, 1, 3, 1, 4, 4, 4, 194, 8, 4, 11, 4, 12, 4, 195, 1, + 5, 1, 5, 1, 5, 1, 6, 3, 6, 202, 8, 6, 1, 6, 1, 6, 3, 6, 206, 8, 6, 1, 6, 1, 6, 1, 6, 1, 6, + 1, 6, 3, 6, 213, 8, 6, 1, 7, 1, 7, 1, 7, 1, 7, 5, 7, 219, 8, 7, 10, 7, 12, 7, 222, 9, 7, 1, + 7, 1, 7, 3, 7, 226, 8, 7, 3, 7, 228, 8, 7, 1, 7, 1, 7, 1, 8, 1, 8, 1, 8, 1, 9, 1, 9, 3, 9, + 237, 8, 9, 1, 9, 1, 9, 3, 9, 241, 8, 9, 1, 10, 1, 10, 1, 10, 1, 11, 1, 11, 1, 11, 3, 11, + 249, 8, 11, 1, 12, 1, 12, 1, 12, 3, 12, 254, 8, 12, 1, 12, 1, 12, 1, 12, 1, 12, 1, 12, 1, + 12, 1, 12, 3, 12, 263, 8, 12, 1, 13, 1, 13, 1, 13, 1, 13, 1, 13, 1, 13, 3, 13, 271, 8, 13, + 1, 13, 1, 13, 3, 13, 275, 8, 13, 1, 14, 1, 14, 1, 14, 3, 14, 280, 8, 14, 1, 15, 1, 15, 1, + 15, 1, 16, 1, 16, 1, 16, 1, 16, 5, 16, 289, 8, 16, 10, 16, 12, 16, 292, 9, 16, 1, 17, 1, 17, + 1, 17, 3, 17, 297, 8, 17, 1, 18, 1, 18, 1, 19, 1, 19, 1, 19, 1, 19, 1, 20, 1, 20, 1, 20, 1, + 20, 1, 20, 1, 20, 1, 20, 3, 20, 312, 8, 20, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, + 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 3, 21, 332, 8, + 21, 1, 21, 1, 21, 3, 21, 336, 8, 21, 1, 21, 1, 21, 3, 21, 340, 8, 21, 1, 21, 1, 21, 1, 21, + 1, 21, 1, 21, 1, 21, 3, 21, 348, 8, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, 3, + 21, 357, 8, 21, 1, 21, 1, 21, 1, 21, 3, 21, 362, 8, 21, 1, 21, 1, 21, 1, 21, 1, 21, 1, 21, + 1, 21, 3, 21, 370, 8, 21, 1, 22, 1, 22, 1, 22, 3, 22, 375, 8, 22, 1, 23, 1, 23, 1, 23, 3, + 23, 380, 8, 23, 1, 23, 1, 23, 1, 24, 1, 24, 1, 24, 3, 24, 387, 8, 24, 1, 24, 1, 24, 1, 25, + 1, 25, 1, 25, 3, 25, 394, 8, 25, 1, 25, 1, 25, 1, 26, 1, 26, 1, 26, 3, 26, 401, 8, 26, 1, + 26, 1, 26, 1, 27, 1, 27, 1, 27, 1, 27, 1, 27, 1, 27, 1, 28, 1, 28, 1, 28, 1, 28, 1, 28, 1, + 28, 1, 29, 1, 29, 3, 29, 419, 8, 29, 1, 29, 1, 29, 3, 29, 423, 8, 29, 3, 29, 425, 8, 29, 1, + 29, 1, 29, 1, 30, 4, 30, 430, 8, 30, 11, 30, 12, 30, 431, 1, 31, 1, 31, 1, 31, 1, 31, 3, 31, + 438, 8, 31, 1, 32, 1, 32, 1, 32, 3, 32, 443, 8, 32, 1, 33, 1, 33, 1, 33, 1, 33, 1, 34, 1, + 34, 1, 34, 1, 34, 1, 34, 1, 35, 1, 35, 1, 35, 1, 35, 3, 35, 458, 8, 35, 1, 35, 3, 35, 461, + 8, 35, 1, 36, 1, 36, 1, 36, 3, 36, 466, 8, 36, 1, 36, 3, 36, 469, 8, 36, 1, 36, 1, 36, 1, + 37, 1, 37, 1, 37, 1, 38, 1, 38, 1, 38, 1, 39, 3, 39, 480, 8, 39, 1, 39, 1, 39, 3, 39, 484, + 8, 39, 1, 39, 1, 39, 1, 39, 3, 39, 489, 8, 39, 1, 39, 1, 39, 1, 39, 1, 40, 1, 40, 1, 40, 1, + 40, 1, 41, 1, 41, 3, 41, 500, 8, 41, 1, 41, 1, 41, 5, 41, 504, 8, 41, 10, 41, 12, 41, 507, + 9, 41, 1, 41, 1, 41, 1, 42, 1, 42, 1, 42, 1, 42, 5, 42, 515, 8, 42, 10, 42, 12, 42, 518, 9, + 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 3, 42, 526, 8, 42, 1, 42, 1, 42, 3, 42, 530, + 8, 42, 1, 42, 1, 42, 1, 42, 1, 42, 3, 42, 536, 8, 42, 1, 43, 3, 43, 539, 8, 43, 1, 43, 3, + 43, 542, 8, 43, 1, 43, 1, 43, 1, 43, 3, 43, 547, 8, 43, 1, 43, 1, 43, 1, 43, 1, 43, 3, 43, + 553, 8, 43, 1, 43, 3, 43, 556, 8, 43, 1, 43, 1, 43, 1, 43, 1, 43, 1, 43, 1, 43, 3, 43, 564, + 8, 43, 1, 43, 3, 43, 567, 8, 43, 1, 43, 1, 43, 1, 43, 3, 43, 572, 8, 43, 1, 43, 1, 43, 1, + 43, 3, 43, 577, 8, 43, 1, 44, 1, 44, 1, 44, 5, 44, 582, 8, 44, 10, 44, 12, 44, 585, 9, 44, + 1, 44, 1, 44, 3, 44, 589, 8, 44, 1, 44, 3, 44, 592, 8, 44, 1, 45, 1, 45, 1, 45, 3, 45, 597, + 8, 45, 1, 46, 1, 46, 1, 46, 1, 47, 1, 47, 3, 47, 604, 8, 47, 1, 47, 1, 47, 1, 48, 4, 48, + 609, 8, 48, 11, 48, 12, 48, 610, 1, 49, 1, 49, 1, 49, 1, 49, 1, 50, 5, 50, 618, 8, 50, 10, + 50, 12, 50, 621, 9, 50, 1, 50, 3, 50, 624, 8, 50, 1, 50, 4, 50, 627, 8, 50, 11, 50, 12, 50, + 628, 1, 50, 5, 50, 632, 8, 50, 10, 50, 12, 50, 635, 9, 50, 1, 50, 5, 50, 638, 8, 50, 10, 50, + 12, 50, 641, 9, 50, 1, 51, 3, 51, 644, 8, 51, 1, 51, 1, 51, 1, 52, 1, 52, 1, 52, 1, 52, 1, + 52, 1, 52, 1, 52, 1, 52, 1, 52, 1, 52, 1, 52, 3, 52, 659, 8, 52, 1, 52, 3, 52, 662, 8, 52, + 1, 52, 1, 52, 1, 52, 3, 52, 667, 8, 52, 1, 52, 1, 52, 1, 52, 1, 52, 1, 52, 1, 52, 1, 52, 1, + 52, 1, 52, 1, 52, 1, 52, 1, 52, 1, 52, 1, 52, 1, 52, 3, 52, 684, 8, 52, 1, 52, 3, 52, 687, + 8, 52, 1, 53, 1, 53, 1, 53, 1, 53, 1, 53, 1, 53, 1, 53, 3, 53, 696, 8, 53, 1, 54, 1, 54, 1, + 54, 1, 54, 5, 54, 702, 8, 54, 10, 54, 12, 54, 705, 9, 54, 1, 54, 3, 54, 708, 8, 54, 3, 54, + 710, 8, 54, 1, 54, 1, 54, 1, 55, 3, 55, 715, 8, 55, 1, 55, 1, 55, 3, 55, 719, 8, 55, 1, 56, + 1, 56, 1, 56, 5, 56, 724, 8, 56, 10, 56, 12, 56, 727, 9, 56, 1, 57, 1, 57, 1, 57, 1, 57, 3, + 57, 733, 8, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, + 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, + 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, + 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 3, 57, 781, 8, 57, 1, 57, 1, + 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, + 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, + 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, + 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, + 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 3, 57, 843, 8, 57, 1, 57, 1, 57, 1, 57, 1, 57, + 1, 57, 1, 57, 3, 57, 851, 8, 57, 1, 57, 1, 57, 3, 57, 855, 8, 57, 1, 57, 1, 57, 1, 57, 1, + 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 5, 57, 868, 8, 57, 10, 57, 12, 57, 871, + 9, 57, 1, 58, 1, 58, 1, 58, 3, 58, 876, 8, 58, 1, 59, 1, 59, 1, 59, 1, 59, 5, 59, 882, 8, + 59, 10, 59, 12, 59, 885, 9, 59, 1, 59, 3, 59, 888, 8, 59, 3, 59, 890, 8, 59, 1, 59, 1, 59, + 1, 60, 1, 60, 3, 60, 896, 8, 60, 1, 60, 1, 60, 3, 60, 900, 8, 60, 1, 60, 1, 60, 3, 60, 904, + 8, 60, 1, 60, 1, 60, 1, 60, 3, 60, 909, 8, 60, 1, 60, 1, 60, 1, 60, 1, 60, 3, 60, 915, 8, + 60, 1, 61, 1, 61, 1, 61, 3, 61, 920, 8, 61, 1, 61, 3, 61, 923, 8, 61, 1, 62, 1, 62, 3, 62, + 927, 8, 62, 1, 63, 1, 63, 1, 64, 1, 64, 1, 64, 1, 64, 1, 64, 1, 64, 1, 64, 3, 64, 938, 8, + 64, 1, 65, 1, 65, 5, 65, 942, 8, 65, 10, 65, 12, 65, 945, 9, 65, 1, 65, 1, 65, 1, 66, 1, 66, + 1, 66, 1, 66, 1, 66, 3, 66, 954, 8, 66, 1, 67, 1, 67, 1, 68, 1, 68, 1, 69, 1, 69, 1, 69, 1, + 69, 1, 70, 1, 70, 1, 70, 1, 70, 1, 71, 1, 71, 3, 71, 970, 8, 71, 1, 72, 1, 72, 1, 73, 1, 73, + 1, 73, 3, 73, 977, 8, 73, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, + 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, + 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, + 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 1, 74, 3, 74, 1025, 8, + 74, 1, 75, 1, 75, 1, 76, 1, 76, 1, 76, 1, 76, 3, 76, 1033, 8, 76, 1, 76, 0, 1, 114, 77, 0, + 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, + 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, + 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, + 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 0, 10, 1, 0, 26, 28, 1, 0, 22, 23, 1, 0, + 32, 34, 1, 0, 35, 38, 1, 0, 39, 42, 1, 0, 48, 59, 1, 0, 63, 67, 1, 0, 68, 71, 3, 0, 107, + 107, 112, 112, 119, 119, 1, 0, 111, 112, 1201, 0, 155, 1, 0, 0, 0, 2, 162, 1, 0, 0, 0, 4, + 184, 1, 0, 0, 0, 6, 186, 1, 0, 0, 0, 8, 193, 1, 0, 0, 0, 10, 197, 1, 0, 0, 0, 12, 212, 1, 0, + 0, 0, 14, 214, 1, 0, 0, 0, 16, 231, 1, 0, 0, 0, 18, 236, 1, 0, 0, 0, 20, 242, 1, 0, 0, 0, + 22, 245, 1, 0, 0, 0, 24, 262, 1, 0, 0, 0, 26, 274, 1, 0, 0, 0, 28, 279, 1, 0, 0, 0, 30, 281, + 1, 0, 0, 0, 32, 284, 1, 0, 0, 0, 34, 293, 1, 0, 0, 0, 36, 298, 1, 0, 0, 0, 38, 300, 1, 0, 0, + 0, 40, 304, 1, 0, 0, 0, 42, 369, 1, 0, 0, 0, 44, 374, 1, 0, 0, 0, 46, 376, 1, 0, 0, 0, 48, + 383, 1, 0, 0, 0, 50, 390, 1, 0, 0, 0, 52, 397, 1, 0, 0, 0, 54, 404, 1, 0, 0, 0, 56, 410, 1, + 0, 0, 0, 58, 416, 1, 0, 0, 0, 60, 429, 1, 0, 0, 0, 62, 433, 1, 0, 0, 0, 64, 439, 1, 0, 0, 0, + 66, 444, 1, 0, 0, 0, 68, 448, 1, 0, 0, 0, 70, 453, 1, 0, 0, 0, 72, 462, 1, 0, 0, 0, 74, 472, + 1, 0, 0, 0, 76, 475, 1, 0, 0, 0, 78, 479, 1, 0, 0, 0, 80, 493, 1, 0, 0, 0, 82, 499, 1, 0, 0, + 0, 84, 535, 1, 0, 0, 0, 86, 576, 1, 0, 0, 0, 88, 591, 1, 0, 0, 0, 90, 593, 1, 0, 0, 0, 92, + 598, 1, 0, 0, 0, 94, 601, 1, 0, 0, 0, 96, 608, 1, 0, 0, 0, 98, 612, 1, 0, 0, 0, 100, 619, 1, + 0, 0, 0, 102, 643, 1, 0, 0, 0, 104, 686, 1, 0, 0, 0, 106, 695, 1, 0, 0, 0, 108, 697, 1, 0, + 0, 0, 110, 714, 1, 0, 0, 0, 112, 720, 1, 0, 0, 0, 114, 780, 1, 0, 0, 0, 116, 875, 1, 0, 0, + 0, 118, 877, 1, 0, 0, 0, 120, 914, 1, 0, 0, 0, 122, 922, 1, 0, 0, 0, 124, 926, 1, 0, 0, 0, + 126, 928, 1, 0, 0, 0, 128, 937, 1, 0, 0, 0, 130, 939, 1, 0, 0, 0, 132, 953, 1, 0, 0, 0, 134, + 955, 1, 0, 0, 0, 136, 957, 1, 0, 0, 0, 138, 959, 1, 0, 0, 0, 140, 963, 1, 0, 0, 0, 142, 969, + 1, 0, 0, 0, 144, 971, 1, 0, 0, 0, 146, 976, 1, 0, 0, 0, 148, 1024, 1, 0, 0, 0, 150, 1026, 1, + 0, 0, 0, 152, 1032, 1, 0, 0, 0, 154, 156, 5, 1, 0, 0, 155, 154, 1, 0, 0, 0, 155, 156, 1, 0, + 0, 0, 156, 158, 1, 0, 0, 0, 157, 159, 3, 96, 48, 0, 158, 157, 1, 0, 0, 0, 158, 159, 1, 0, 0, + 0, 159, 160, 1, 0, 0, 0, 160, 161, 5, 0, 0, 1, 161, 1, 1, 0, 0, 0, 162, 163, 3, 4, 2, 0, + 163, 3, 1, 0, 0, 0, 164, 185, 3, 6, 3, 0, 165, 185, 3, 30, 15, 0, 166, 185, 3, 10, 5, 0, + 167, 185, 3, 24, 12, 0, 168, 185, 3, 36, 18, 0, 169, 185, 3, 80, 40, 0, 170, 185, 3, 38, 19, + 0, 171, 185, 3, 40, 20, 0, 172, 185, 3, 42, 21, 0, 173, 185, 3, 46, 23, 0, 174, 185, 3, 48, + 24, 0, 175, 185, 3, 50, 25, 0, 176, 185, 3, 52, 26, 0, 177, 185, 3, 54, 27, 0, 178, 185, 3, + 66, 33, 0, 179, 185, 3, 56, 28, 0, 180, 185, 3, 68, 34, 0, 181, 185, 3, 70, 35, 0, 182, 185, + 3, 76, 38, 0, 183, 185, 3, 78, 39, 0, 184, 164, 1, 0, 0, 0, 184, 165, 1, 0, 0, 0, 184, 166, + 1, 0, 0, 0, 184, 167, 1, 0, 0, 0, 184, 168, 1, 0, 0, 0, 184, 169, 1, 0, 0, 0, 184, 170, 1, + 0, 0, 0, 184, 171, 1, 0, 0, 0, 184, 172, 1, 0, 0, 0, 184, 173, 1, 0, 0, 0, 184, 174, 1, 0, + 0, 0, 184, 175, 1, 0, 0, 0, 184, 176, 1, 0, 0, 0, 184, 177, 1, 0, 0, 0, 184, 178, 1, 0, 0, + 0, 184, 179, 1, 0, 0, 0, 184, 180, 1, 0, 0, 0, 184, 181, 1, 0, 0, 0, 184, 182, 1, 0, 0, 0, + 184, 183, 1, 0, 0, 0, 185, 5, 1, 0, 0, 0, 186, 188, 5, 9, 0, 0, 187, 189, 3, 8, 4, 0, 188, + 187, 1, 0, 0, 0, 188, 189, 1, 0, 0, 0, 189, 190, 1, 0, 0, 0, 190, 191, 5, 11, 0, 0, 191, 7, + 1, 0, 0, 0, 192, 194, 3, 4, 2, 0, 193, 192, 1, 0, 0, 0, 194, 195, 1, 0, 0, 0, 195, 193, 1, + 0, 0, 0, 195, 196, 1, 0, 0, 0, 196, 9, 1, 0, 0, 0, 197, 198, 5, 106, 0, 0, 198, 199, 3, 12, + 6, 0, 199, 11, 1, 0, 0, 0, 200, 202, 3, 16, 8, 0, 201, 200, 1, 0, 0, 0, 201, 202, 1, 0, 0, + 0, 202, 205, 1, 0, 0, 0, 203, 206, 3, 18, 9, 0, 204, 206, 3, 14, 7, 0, 205, 203, 1, 0, 0, 0, + 205, 204, 1, 0, 0, 0, 206, 207, 1, 0, 0, 0, 207, 208, 3, 20, 10, 0, 208, 209, 3, 152, 76, 0, + 209, 213, 1, 0, 0, 0, 210, 211, 5, 120, 0, 0, 211, 213, 3, 152, 76, 0, 212, 201, 1, 0, 0, 0, + 212, 210, 1, 0, 0, 0, 213, 13, 1, 0, 0, 0, 214, 220, 5, 9, 0, 0, 215, 216, 3, 22, 11, 0, + 216, 217, 5, 13, 0, 0, 217, 219, 1, 0, 0, 0, 218, 215, 1, 0, 0, 0, 219, 222, 1, 0, 0, 0, + 220, 218, 1, 0, 0, 0, 220, 221, 1, 0, 0, 0, 221, 227, 1, 0, 0, 0, 222, 220, 1, 0, 0, 0, 223, + 225, 3, 22, 11, 0, 224, 226, 5, 13, 0, 0, 225, 224, 1, 0, 0, 0, 225, 226, 1, 0, 0, 0, 226, + 228, 1, 0, 0, 0, 227, 223, 1, 0, 0, 0, 227, 228, 1, 0, 0, 0, 228, 229, 1, 0, 0, 0, 229, 230, + 5, 11, 0, 0, 230, 15, 1, 0, 0, 0, 231, 232, 3, 22, 11, 0, 232, 233, 5, 13, 0, 0, 233, 17, 1, + 0, 0, 0, 234, 237, 5, 26, 0, 0, 235, 237, 3, 142, 71, 0, 236, 234, 1, 0, 0, 0, 236, 235, 1, + 0, 0, 0, 237, 240, 1, 0, 0, 0, 238, 239, 5, 98, 0, 0, 239, 241, 3, 142, 71, 0, 240, 238, 1, + 0, 0, 0, 240, 241, 1, 0, 0, 0, 241, 19, 1, 0, 0, 0, 242, 243, 5, 99, 0, 0, 243, 244, 5, 120, + 0, 0, 244, 21, 1, 0, 0, 0, 245, 248, 3, 142, 71, 0, 246, 247, 5, 98, 0, 0, 247, 249, 3, 142, + 71, 0, 248, 246, 1, 0, 0, 0, 248, 249, 1, 0, 0, 0, 249, 23, 1, 0, 0, 0, 250, 253, 5, 105, 0, + 0, 251, 254, 3, 26, 13, 0, 252, 254, 3, 28, 14, 0, 253, 251, 1, 0, 0, 0, 253, 252, 1, 0, 0, + 0, 254, 255, 1, 0, 0, 0, 255, 256, 3, 152, 76, 0, 256, 263, 1, 0, 0, 0, 257, 258, 5, 105, 0, + 0, 258, 259, 5, 92, 0, 0, 259, 260, 3, 114, 57, 0, 260, 261, 3, 152, 76, 0, 261, 263, 1, 0, + 0, 0, 262, 250, 1, 0, 0, 0, 262, 257, 1, 0, 0, 0, 263, 25, 1, 0, 0, 0, 264, 265, 3, 18, 9, + 0, 265, 266, 3, 20, 10, 0, 266, 267, 3, 152, 76, 0, 267, 275, 1, 0, 0, 0, 268, 270, 3, 14, + 7, 0, 269, 271, 3, 20, 10, 0, 270, 269, 1, 0, 0, 0, 270, 271, 1, 0, 0, 0, 271, 272, 1, 0, 0, + 0, 272, 273, 3, 152, 76, 0, 273, 275, 1, 0, 0, 0, 274, 264, 1, 0, 0, 0, 274, 268, 1, 0, 0, + 0, 275, 27, 1, 0, 0, 0, 276, 280, 3, 30, 15, 0, 277, 280, 3, 80, 40, 0, 278, 280, 3, 78, 39, + 0, 279, 276, 1, 0, 0, 0, 279, 277, 1, 0, 0, 0, 279, 278, 1, 0, 0, 0, 280, 29, 1, 0, 0, 0, + 281, 282, 3, 32, 16, 0, 282, 283, 3, 152, 76, 0, 283, 31, 1, 0, 0, 0, 284, 285, 3, 44, 22, + 0, 285, 290, 3, 34, 17, 0, 286, 287, 5, 13, 0, 0, 287, 289, 3, 34, 17, 0, 288, 286, 1, 0, 0, + 0, 289, 292, 1, 0, 0, 0, 290, 288, 1, 0, 0, 0, 290, 291, 1, 0, 0, 0, 291, 33, 1, 0, 0, 0, + 292, 290, 1, 0, 0, 0, 293, 296, 3, 116, 58, 0, 294, 295, 5, 14, 0, 0, 295, 297, 3, 114, 57, + 0, 296, 294, 1, 0, 0, 0, 296, 297, 1, 0, 0, 0, 297, 35, 1, 0, 0, 0, 298, 299, 5, 12, 0, 0, + 299, 37, 1, 0, 0, 0, 300, 301, 4, 19, 0, 0, 301, 302, 3, 112, 56, 0, 302, 303, 3, 152, 76, + 0, 303, 39, 1, 0, 0, 0, 304, 305, 5, 93, 0, 0, 305, 306, 5, 7, 0, 0, 306, 307, 3, 112, 56, + 0, 307, 308, 5, 8, 0, 0, 308, 311, 3, 4, 2, 0, 309, 310, 5, 77, 0, 0, 310, 312, 3, 4, 2, 0, + 311, 309, 1, 0, 0, 0, 311, 312, 1, 0, 0, 0, 312, 41, 1, 0, 0, 0, 313, 314, 5, 73, 0, 0, 314, + 315, 3, 4, 2, 0, 315, 316, 5, 87, 0, 0, 316, 317, 5, 7, 0, 0, 317, 318, 3, 112, 56, 0, 318, + 319, 5, 8, 0, 0, 319, 320, 3, 152, 76, 0, 320, 370, 1, 0, 0, 0, 321, 322, 5, 87, 0, 0, 322, + 323, 5, 7, 0, 0, 323, 324, 3, 112, 56, 0, 324, 325, 5, 8, 0, 0, 325, 326, 3, 4, 2, 0, 326, + 370, 1, 0, 0, 0, 327, 328, 5, 85, 0, 0, 328, 331, 5, 7, 0, 0, 329, 332, 3, 112, 56, 0, 330, + 332, 3, 32, 16, 0, 331, 329, 1, 0, 0, 0, 331, 330, 1, 0, 0, 0, 331, 332, 1, 0, 0, 0, 332, + 333, 1, 0, 0, 0, 333, 335, 5, 12, 0, 0, 334, 336, 3, 112, 56, 0, 335, 334, 1, 0, 0, 0, 335, + 336, 1, 0, 0, 0, 336, 337, 1, 0, 0, 0, 337, 339, 5, 12, 0, 0, 338, 340, 3, 112, 56, 0, 339, + 338, 1, 0, 0, 0, 339, 340, 1, 0, 0, 0, 340, 341, 1, 0, 0, 0, 341, 342, 5, 8, 0, 0, 342, 370, + 3, 4, 2, 0, 343, 344, 5, 85, 0, 0, 344, 347, 5, 7, 0, 0, 345, 348, 3, 114, 57, 0, 346, 348, + 3, 32, 16, 0, 347, 345, 1, 0, 0, 0, 347, 346, 1, 0, 0, 0, 348, 349, 1, 0, 0, 0, 349, 350, 5, + 96, 0, 0, 350, 351, 3, 112, 56, 0, 351, 352, 5, 8, 0, 0, 352, 353, 3, 4, 2, 0, 353, 370, 1, + 0, 0, 0, 354, 356, 5, 85, 0, 0, 355, 357, 5, 108, 0, 0, 356, 355, 1, 0, 0, 0, 356, 357, 1, + 0, 0, 0, 357, 358, 1, 0, 0, 0, 358, 361, 5, 7, 0, 0, 359, 362, 3, 114, 57, 0, 360, 362, 3, + 32, 16, 0, 361, 359, 1, 0, 0, 0, 361, 360, 1, 0, 0, 0, 362, 363, 1, 0, 0, 0, 363, 364, 3, + 144, 72, 0, 364, 365, 4, 21, 1, 0, 365, 366, 3, 112, 56, 0, 366, 367, 5, 8, 0, 0, 367, 368, + 3, 4, 2, 0, 368, 370, 1, 0, 0, 0, 369, 313, 1, 0, 0, 0, 369, 321, 1, 0, 0, 0, 369, 327, 1, + 0, 0, 0, 369, 343, 1, 0, 0, 0, 369, 354, 1, 0, 0, 0, 370, 43, 1, 0, 0, 0, 371, 375, 5, 79, + 0, 0, 372, 375, 3, 150, 75, 0, 373, 375, 5, 104, 0, 0, 374, 371, 1, 0, 0, 0, 374, 372, 1, 0, + 0, 0, 374, 373, 1, 0, 0, 0, 375, 45, 1, 0, 0, 0, 376, 379, 5, 84, 0, 0, 377, 378, 4, 23, 2, + 0, 378, 380, 3, 144, 72, 0, 379, 377, 1, 0, 0, 0, 379, 380, 1, 0, 0, 0, 380, 381, 1, 0, 0, + 0, 381, 382, 3, 152, 76, 0, 382, 47, 1, 0, 0, 0, 383, 386, 5, 72, 0, 0, 384, 385, 4, 24, 3, + 0, 385, 387, 3, 144, 72, 0, 386, 384, 1, 0, 0, 0, 386, 387, 1, 0, 0, 0, 387, 388, 1, 0, 0, + 0, 388, 389, 3, 152, 76, 0, 389, 49, 1, 0, 0, 0, 390, 393, 5, 82, 0, 0, 391, 392, 4, 25, 4, + 0, 392, 394, 3, 112, 56, 0, 393, 391, 1, 0, 0, 0, 393, 394, 1, 0, 0, 0, 394, 395, 1, 0, 0, + 0, 395, 396, 3, 152, 76, 0, 396, 51, 1, 0, 0, 0, 397, 400, 5, 109, 0, 0, 398, 399, 4, 26, 5, + 0, 399, 401, 3, 112, 56, 0, 400, 398, 1, 0, 0, 0, 400, 401, 1, 0, 0, 0, 401, 402, 1, 0, 0, + 0, 402, 403, 3, 152, 76, 0, 403, 53, 1, 0, 0, 0, 404, 405, 5, 91, 0, 0, 405, 406, 5, 7, 0, + 0, 406, 407, 3, 112, 56, 0, 407, 408, 5, 8, 0, 0, 408, 409, 3, 4, 2, 0, 409, 55, 1, 0, 0, 0, + 410, 411, 5, 86, 0, 0, 411, 412, 5, 7, 0, 0, 412, 413, 3, 112, 56, 0, 413, 414, 5, 8, 0, 0, + 414, 415, 3, 58, 29, 0, 415, 57, 1, 0, 0, 0, 416, 418, 5, 9, 0, 0, 417, 419, 3, 60, 30, 0, + 418, 417, 1, 0, 0, 0, 418, 419, 1, 0, 0, 0, 419, 424, 1, 0, 0, 0, 420, 422, 3, 64, 32, 0, + 421, 423, 3, 60, 30, 0, 422, 421, 1, 0, 0, 0, 422, 423, 1, 0, 0, 0, 423, 425, 1, 0, 0, 0, + 424, 420, 1, 0, 0, 0, 424, 425, 1, 0, 0, 0, 425, 426, 1, 0, 0, 0, 426, 427, 5, 11, 0, 0, + 427, 59, 1, 0, 0, 0, 428, 430, 3, 62, 31, 0, 429, 428, 1, 0, 0, 0, 430, 431, 1, 0, 0, 0, + 431, 429, 1, 0, 0, 0, 431, 432, 1, 0, 0, 0, 432, 61, 1, 0, 0, 0, 433, 434, 5, 76, 0, 0, 434, + 435, 3, 112, 56, 0, 435, 437, 5, 17, 0, 0, 436, 438, 3, 8, 4, 0, 437, 436, 1, 0, 0, 0, 437, + 438, 1, 0, 0, 0, 438, 63, 1, 0, 0, 0, 439, 440, 5, 92, 0, 0, 440, 442, 5, 17, 0, 0, 441, + 443, 3, 8, 4, 0, 442, 441, 1, 0, 0, 0, 442, 443, 1, 0, 0, 0, 443, 65, 1, 0, 0, 0, 444, 445, + 3, 144, 72, 0, 445, 446, 5, 17, 0, 0, 446, 447, 3, 4, 2, 0, 447, 67, 1, 0, 0, 0, 448, 449, + 5, 94, 0, 0, 449, 450, 4, 34, 6, 0, 450, 451, 3, 112, 56, 0, 451, 452, 3, 152, 76, 0, 452, + 69, 1, 0, 0, 0, 453, 454, 5, 97, 0, 0, 454, 460, 3, 6, 3, 0, 455, 457, 3, 72, 36, 0, 456, + 458, 3, 74, 37, 0, 457, 456, 1, 0, 0, 0, 457, 458, 1, 0, 0, 0, 458, 461, 1, 0, 0, 0, 459, + 461, 3, 74, 37, 0, 460, 455, 1, 0, 0, 0, 460, 459, 1, 0, 0, 0, 461, 71, 1, 0, 0, 0, 462, + 468, 5, 80, 0, 0, 463, 465, 5, 7, 0, 0, 464, 466, 3, 116, 58, 0, 465, 464, 1, 0, 0, 0, 465, + 466, 1, 0, 0, 0, 466, 467, 1, 0, 0, 0, 467, 469, 5, 8, 0, 0, 468, 463, 1, 0, 0, 0, 468, 469, + 1, 0, 0, 0, 469, 470, 1, 0, 0, 0, 470, 471, 3, 6, 3, 0, 471, 73, 1, 0, 0, 0, 472, 473, 5, + 81, 0, 0, 473, 474, 3, 6, 3, 0, 474, 75, 1, 0, 0, 0, 475, 476, 5, 88, 0, 0, 476, 477, 3, + 152, 76, 0, 477, 77, 1, 0, 0, 0, 478, 480, 5, 107, 0, 0, 479, 478, 1, 0, 0, 0, 479, 480, 1, + 0, 0, 0, 480, 481, 1, 0, 0, 0, 481, 483, 5, 89, 0, 0, 482, 484, 5, 26, 0, 0, 483, 482, 1, 0, + 0, 0, 483, 484, 1, 0, 0, 0, 484, 485, 1, 0, 0, 0, 485, 486, 3, 144, 72, 0, 486, 488, 5, 7, + 0, 0, 487, 489, 3, 88, 44, 0, 488, 487, 1, 0, 0, 0, 488, 489, 1, 0, 0, 0, 489, 490, 1, 0, 0, + 0, 490, 491, 5, 8, 0, 0, 491, 492, 3, 94, 47, 0, 492, 79, 1, 0, 0, 0, 493, 494, 5, 100, 0, + 0, 494, 495, 3, 144, 72, 0, 495, 496, 3, 82, 41, 0, 496, 81, 1, 0, 0, 0, 497, 498, 5, 102, + 0, 0, 498, 500, 3, 114, 57, 0, 499, 497, 1, 0, 0, 0, 499, 500, 1, 0, 0, 0, 500, 501, 1, 0, + 0, 0, 501, 505, 5, 9, 0, 0, 502, 504, 3, 84, 42, 0, 503, 502, 1, 0, 0, 0, 504, 507, 1, 0, 0, + 0, 505, 503, 1, 0, 0, 0, 505, 506, 1, 0, 0, 0, 506, 508, 1, 0, 0, 0, 507, 505, 1, 0, 0, 0, + 508, 509, 5, 11, 0, 0, 509, 83, 1, 0, 0, 0, 510, 515, 5, 118, 0, 0, 511, 512, 4, 42, 7, 0, + 512, 515, 3, 144, 72, 0, 513, 515, 5, 107, 0, 0, 514, 510, 1, 0, 0, 0, 514, 511, 1, 0, 0, 0, + 514, 513, 1, 0, 0, 0, 515, 518, 1, 0, 0, 0, 516, 514, 1, 0, 0, 0, 516, 517, 1, 0, 0, 0, 517, + 525, 1, 0, 0, 0, 518, 516, 1, 0, 0, 0, 519, 526, 3, 86, 43, 0, 520, 521, 3, 116, 58, 0, 521, + 522, 5, 14, 0, 0, 522, 523, 3, 118, 59, 0, 523, 524, 5, 12, 0, 0, 524, 526, 1, 0, 0, 0, 525, + 519, 1, 0, 0, 0, 525, 520, 1, 0, 0, 0, 526, 536, 1, 0, 0, 0, 527, 536, 3, 36, 18, 0, 528, + 530, 5, 31, 0, 0, 529, 528, 1, 0, 0, 0, 529, 530, 1, 0, 0, 0, 530, 531, 1, 0, 0, 0, 531, + 532, 3, 106, 53, 0, 532, 533, 5, 14, 0, 0, 533, 534, 3, 114, 57, 0, 534, 536, 1, 0, 0, 0, + 535, 516, 1, 0, 0, 0, 535, 527, 1, 0, 0, 0, 535, 529, 1, 0, 0, 0, 536, 85, 1, 0, 0, 0, 537, + 539, 5, 26, 0, 0, 538, 537, 1, 0, 0, 0, 538, 539, 1, 0, 0, 0, 539, 541, 1, 0, 0, 0, 540, + 542, 5, 31, 0, 0, 541, 540, 1, 0, 0, 0, 541, 542, 1, 0, 0, 0, 542, 543, 1, 0, 0, 0, 543, + 544, 3, 106, 53, 0, 544, 546, 5, 7, 0, 0, 545, 547, 3, 88, 44, 0, 546, 545, 1, 0, 0, 0, 546, + 547, 1, 0, 0, 0, 547, 548, 1, 0, 0, 0, 548, 549, 5, 8, 0, 0, 549, 550, 3, 94, 47, 0, 550, + 577, 1, 0, 0, 0, 551, 553, 5, 26, 0, 0, 552, 551, 1, 0, 0, 0, 552, 553, 1, 0, 0, 0, 553, + 555, 1, 0, 0, 0, 554, 556, 5, 31, 0, 0, 555, 554, 1, 0, 0, 0, 555, 556, 1, 0, 0, 0, 556, + 557, 1, 0, 0, 0, 557, 558, 3, 138, 69, 0, 558, 559, 5, 7, 0, 0, 559, 560, 5, 8, 0, 0, 560, + 561, 3, 94, 47, 0, 561, 577, 1, 0, 0, 0, 562, 564, 5, 26, 0, 0, 563, 562, 1, 0, 0, 0, 563, + 564, 1, 0, 0, 0, 564, 566, 1, 0, 0, 0, 565, 567, 5, 31, 0, 0, 566, 565, 1, 0, 0, 0, 566, + 567, 1, 0, 0, 0, 567, 568, 1, 0, 0, 0, 568, 569, 3, 140, 70, 0, 569, 571, 5, 7, 0, 0, 570, + 572, 3, 88, 44, 0, 571, 570, 1, 0, 0, 0, 571, 572, 1, 0, 0, 0, 572, 573, 1, 0, 0, 0, 573, + 574, 5, 8, 0, 0, 574, 575, 3, 94, 47, 0, 575, 577, 1, 0, 0, 0, 576, 538, 1, 0, 0, 0, 576, + 552, 1, 0, 0, 0, 576, 563, 1, 0, 0, 0, 577, 87, 1, 0, 0, 0, 578, 583, 3, 90, 45, 0, 579, + 580, 5, 13, 0, 0, 580, 582, 3, 90, 45, 0, 581, 579, 1, 0, 0, 0, 582, 585, 1, 0, 0, 0, 583, + 581, 1, 0, 0, 0, 583, 584, 1, 0, 0, 0, 584, 588, 1, 0, 0, 0, 585, 583, 1, 0, 0, 0, 586, 587, + 5, 13, 0, 0, 587, 589, 3, 92, 46, 0, 588, 586, 1, 0, 0, 0, 588, 589, 1, 0, 0, 0, 589, 592, + 1, 0, 0, 0, 590, 592, 3, 92, 46, 0, 591, 578, 1, 0, 0, 0, 591, 590, 1, 0, 0, 0, 592, 89, 1, + 0, 0, 0, 593, 596, 3, 116, 58, 0, 594, 595, 5, 14, 0, 0, 595, 597, 3, 114, 57, 0, 596, 594, + 1, 0, 0, 0, 596, 597, 1, 0, 0, 0, 597, 91, 1, 0, 0, 0, 598, 599, 5, 18, 0, 0, 599, 600, 3, + 114, 57, 0, 600, 93, 1, 0, 0, 0, 601, 603, 5, 9, 0, 0, 602, 604, 3, 96, 48, 0, 603, 602, 1, + 0, 0, 0, 603, 604, 1, 0, 0, 0, 604, 605, 1, 0, 0, 0, 605, 606, 5, 11, 0, 0, 606, 95, 1, 0, + 0, 0, 607, 609, 3, 2, 1, 0, 608, 607, 1, 0, 0, 0, 609, 610, 1, 0, 0, 0, 610, 608, 1, 0, 0, + 0, 610, 611, 1, 0, 0, 0, 611, 97, 1, 0, 0, 0, 612, 613, 5, 5, 0, 0, 613, 614, 3, 100, 50, 0, + 614, 615, 5, 6, 0, 0, 615, 99, 1, 0, 0, 0, 616, 618, 5, 13, 0, 0, 617, 616, 1, 0, 0, 0, 618, + 621, 1, 0, 0, 0, 619, 617, 1, 0, 0, 0, 619, 620, 1, 0, 0, 0, 620, 623, 1, 0, 0, 0, 621, 619, + 1, 0, 0, 0, 622, 624, 3, 102, 51, 0, 623, 622, 1, 0, 0, 0, 623, 624, 1, 0, 0, 0, 624, 633, + 1, 0, 0, 0, 625, 627, 5, 13, 0, 0, 626, 625, 1, 0, 0, 0, 627, 628, 1, 0, 0, 0, 628, 626, 1, + 0, 0, 0, 628, 629, 1, 0, 0, 0, 629, 630, 1, 0, 0, 0, 630, 632, 3, 102, 51, 0, 631, 626, 1, + 0, 0, 0, 632, 635, 1, 0, 0, 0, 633, 631, 1, 0, 0, 0, 633, 634, 1, 0, 0, 0, 634, 639, 1, 0, + 0, 0, 635, 633, 1, 0, 0, 0, 636, 638, 5, 13, 0, 0, 637, 636, 1, 0, 0, 0, 638, 641, 1, 0, 0, + 0, 639, 637, 1, 0, 0, 0, 639, 640, 1, 0, 0, 0, 640, 101, 1, 0, 0, 0, 641, 639, 1, 0, 0, 0, + 642, 644, 5, 18, 0, 0, 643, 642, 1, 0, 0, 0, 643, 644, 1, 0, 0, 0, 644, 645, 1, 0, 0, 0, + 645, 646, 3, 114, 57, 0, 646, 103, 1, 0, 0, 0, 647, 648, 3, 106, 53, 0, 648, 649, 5, 17, 0, + 0, 649, 650, 3, 114, 57, 0, 650, 687, 1, 0, 0, 0, 651, 652, 5, 5, 0, 0, 652, 653, 3, 114, + 57, 0, 653, 654, 5, 6, 0, 0, 654, 655, 5, 17, 0, 0, 655, 656, 3, 114, 57, 0, 656, 687, 1, 0, + 0, 0, 657, 659, 5, 107, 0, 0, 658, 657, 1, 0, 0, 0, 658, 659, 1, 0, 0, 0, 659, 661, 1, 0, 0, + 0, 660, 662, 5, 26, 0, 0, 661, 660, 1, 0, 0, 0, 661, 662, 1, 0, 0, 0, 662, 663, 1, 0, 0, 0, + 663, 664, 3, 106, 53, 0, 664, 666, 5, 7, 0, 0, 665, 667, 3, 88, 44, 0, 666, 665, 1, 0, 0, 0, + 666, 667, 1, 0, 0, 0, 667, 668, 1, 0, 0, 0, 668, 669, 5, 8, 0, 0, 669, 670, 3, 94, 47, 0, + 670, 687, 1, 0, 0, 0, 671, 672, 3, 138, 69, 0, 672, 673, 5, 7, 0, 0, 673, 674, 5, 8, 0, 0, + 674, 675, 3, 94, 47, 0, 675, 687, 1, 0, 0, 0, 676, 677, 3, 140, 70, 0, 677, 678, 5, 7, 0, 0, + 678, 679, 3, 90, 45, 0, 679, 680, 5, 8, 0, 0, 680, 681, 3, 94, 47, 0, 681, 687, 1, 0, 0, 0, + 682, 684, 5, 18, 0, 0, 683, 682, 1, 0, 0, 0, 683, 684, 1, 0, 0, 0, 684, 685, 1, 0, 0, 0, + 685, 687, 3, 114, 57, 0, 686, 647, 1, 0, 0, 0, 686, 651, 1, 0, 0, 0, 686, 658, 1, 0, 0, 0, + 686, 671, 1, 0, 0, 0, 686, 676, 1, 0, 0, 0, 686, 683, 1, 0, 0, 0, 687, 105, 1, 0, 0, 0, 688, + 696, 3, 142, 71, 0, 689, 696, 5, 120, 0, 0, 690, 696, 3, 134, 67, 0, 691, 692, 5, 5, 0, 0, + 692, 693, 3, 114, 57, 0, 693, 694, 5, 6, 0, 0, 694, 696, 1, 0, 0, 0, 695, 688, 1, 0, 0, 0, + 695, 689, 1, 0, 0, 0, 695, 690, 1, 0, 0, 0, 695, 691, 1, 0, 0, 0, 696, 107, 1, 0, 0, 0, 697, + 709, 5, 7, 0, 0, 698, 703, 3, 110, 55, 0, 699, 700, 5, 13, 0, 0, 700, 702, 3, 110, 55, 0, + 701, 699, 1, 0, 0, 0, 702, 705, 1, 0, 0, 0, 703, 701, 1, 0, 0, 0, 703, 704, 1, 0, 0, 0, 704, + 707, 1, 0, 0, 0, 705, 703, 1, 0, 0, 0, 706, 708, 5, 13, 0, 0, 707, 706, 1, 0, 0, 0, 707, + 708, 1, 0, 0, 0, 708, 710, 1, 0, 0, 0, 709, 698, 1, 0, 0, 0, 709, 710, 1, 0, 0, 0, 710, 711, + 1, 0, 0, 0, 711, 712, 5, 8, 0, 0, 712, 109, 1, 0, 0, 0, 713, 715, 5, 18, 0, 0, 714, 713, 1, + 0, 0, 0, 714, 715, 1, 0, 0, 0, 715, 718, 1, 0, 0, 0, 716, 719, 3, 114, 57, 0, 717, 719, 3, + 144, 72, 0, 718, 716, 1, 0, 0, 0, 718, 717, 1, 0, 0, 0, 719, 111, 1, 0, 0, 0, 720, 725, 3, + 114, 57, 0, 721, 722, 5, 13, 0, 0, 722, 724, 3, 114, 57, 0, 723, 721, 1, 0, 0, 0, 724, 727, + 1, 0, 0, 0, 725, 723, 1, 0, 0, 0, 725, 726, 1, 0, 0, 0, 726, 113, 1, 0, 0, 0, 727, 725, 1, + 0, 0, 0, 728, 729, 6, 57, -1, 0, 729, 781, 3, 120, 60, 0, 730, 732, 5, 100, 0, 0, 731, 733, + 3, 144, 72, 0, 732, 731, 1, 0, 0, 0, 732, 733, 1, 0, 0, 0, 733, 734, 1, 0, 0, 0, 734, 781, + 3, 82, 41, 0, 735, 736, 5, 78, 0, 0, 736, 737, 3, 114, 57, 0, 737, 738, 3, 108, 54, 0, 738, + 781, 1, 0, 0, 0, 739, 740, 5, 78, 0, 0, 740, 781, 3, 114, 57, 42, 741, 742, 5, 78, 0, 0, + 742, 743, 5, 19, 0, 0, 743, 781, 3, 144, 72, 0, 744, 745, 5, 95, 0, 0, 745, 781, 3, 114, 57, + 37, 746, 747, 5, 83, 0, 0, 747, 781, 3, 114, 57, 36, 748, 749, 5, 75, 0, 0, 749, 781, 3, + 114, 57, 35, 750, 751, 5, 20, 0, 0, 751, 781, 3, 114, 57, 34, 752, 753, 5, 21, 0, 0, 753, + 781, 3, 114, 57, 33, 754, 755, 5, 22, 0, 0, 755, 781, 3, 114, 57, 32, 756, 757, 5, 23, 0, 0, + 757, 781, 3, 114, 57, 31, 758, 759, 5, 24, 0, 0, 759, 781, 3, 114, 57, 30, 760, 761, 5, 25, + 0, 0, 761, 781, 3, 114, 57, 29, 762, 763, 5, 108, 0, 0, 763, 781, 3, 114, 57, 28, 764, 765, + 5, 106, 0, 0, 765, 766, 5, 7, 0, 0, 766, 767, 3, 114, 57, 0, 767, 768, 5, 8, 0, 0, 768, 781, + 1, 0, 0, 0, 769, 781, 3, 52, 26, 0, 770, 781, 5, 90, 0, 0, 771, 781, 3, 144, 72, 0, 772, + 781, 5, 103, 0, 0, 773, 781, 3, 128, 64, 0, 774, 781, 3, 98, 49, 0, 775, 781, 3, 118, 59, 0, + 776, 777, 5, 7, 0, 0, 777, 778, 3, 112, 56, 0, 778, 779, 5, 8, 0, 0, 779, 781, 1, 0, 0, 0, + 780, 728, 1, 0, 0, 0, 780, 730, 1, 0, 0, 0, 780, 735, 1, 0, 0, 0, 780, 739, 1, 0, 0, 0, 780, + 741, 1, 0, 0, 0, 780, 744, 1, 0, 0, 0, 780, 746, 1, 0, 0, 0, 780, 748, 1, 0, 0, 0, 780, 750, + 1, 0, 0, 0, 780, 752, 1, 0, 0, 0, 780, 754, 1, 0, 0, 0, 780, 756, 1, 0, 0, 0, 780, 758, 1, + 0, 0, 0, 780, 760, 1, 0, 0, 0, 780, 762, 1, 0, 0, 0, 780, 764, 1, 0, 0, 0, 780, 769, 1, 0, + 0, 0, 780, 770, 1, 0, 0, 0, 780, 771, 1, 0, 0, 0, 780, 772, 1, 0, 0, 0, 780, 773, 1, 0, 0, + 0, 780, 774, 1, 0, 0, 0, 780, 775, 1, 0, 0, 0, 780, 776, 1, 0, 0, 0, 781, 869, 1, 0, 0, 0, + 782, 783, 10, 46, 0, 0, 783, 784, 5, 16, 0, 0, 784, 868, 3, 114, 57, 47, 785, 786, 10, 27, + 0, 0, 786, 787, 5, 29, 0, 0, 787, 868, 3, 114, 57, 27, 788, 789, 10, 26, 0, 0, 789, 790, 7, + 0, 0, 0, 790, 868, 3, 114, 57, 27, 791, 792, 10, 25, 0, 0, 792, 793, 7, 1, 0, 0, 793, 868, + 3, 114, 57, 26, 794, 795, 10, 24, 0, 0, 795, 796, 5, 30, 0, 0, 796, 868, 3, 114, 57, 25, + 797, 798, 10, 23, 0, 0, 798, 799, 7, 2, 0, 0, 799, 868, 3, 114, 57, 24, 800, 801, 10, 22, 0, + 0, 801, 802, 7, 3, 0, 0, 802, 868, 3, 114, 57, 23, 803, 804, 10, 21, 0, 0, 804, 805, 5, 74, + 0, 0, 805, 868, 3, 114, 57, 22, 806, 807, 10, 20, 0, 0, 807, 808, 5, 96, 0, 0, 808, 868, 3, + 114, 57, 21, 809, 810, 10, 19, 0, 0, 810, 811, 7, 4, 0, 0, 811, 868, 3, 114, 57, 20, 812, + 813, 10, 18, 0, 0, 813, 814, 5, 43, 0, 0, 814, 868, 3, 114, 57, 19, 815, 816, 10, 17, 0, 0, + 816, 817, 5, 44, 0, 0, 817, 868, 3, 114, 57, 18, 818, 819, 10, 16, 0, 0, 819, 820, 5, 45, 0, + 0, 820, 868, 3, 114, 57, 17, 821, 822, 10, 15, 0, 0, 822, 823, 5, 46, 0, 0, 823, 868, 3, + 114, 57, 16, 824, 825, 10, 14, 0, 0, 825, 826, 5, 47, 0, 0, 826, 868, 3, 114, 57, 15, 827, + 828, 10, 13, 0, 0, 828, 829, 5, 15, 0, 0, 829, 830, 3, 114, 57, 0, 830, 831, 5, 17, 0, 0, + 831, 832, 3, 114, 57, 14, 832, 868, 1, 0, 0, 0, 833, 834, 10, 12, 0, 0, 834, 835, 5, 14, 0, + 0, 835, 868, 3, 114, 57, 12, 836, 837, 10, 11, 0, 0, 837, 838, 3, 126, 63, 0, 838, 839, 3, + 114, 57, 11, 839, 868, 1, 0, 0, 0, 840, 842, 10, 45, 0, 0, 841, 843, 5, 16, 0, 0, 842, 841, + 1, 0, 0, 0, 842, 843, 1, 0, 0, 0, 843, 844, 1, 0, 0, 0, 844, 845, 5, 5, 0, 0, 845, 846, 3, + 112, 56, 0, 846, 847, 5, 6, 0, 0, 847, 868, 1, 0, 0, 0, 848, 850, 10, 44, 0, 0, 849, 851, 5, + 15, 0, 0, 850, 849, 1, 0, 0, 0, 850, 851, 1, 0, 0, 0, 851, 852, 1, 0, 0, 0, 852, 854, 5, 19, + 0, 0, 853, 855, 5, 31, 0, 0, 854, 853, 1, 0, 0, 0, 854, 855, 1, 0, 0, 0, 855, 856, 1, 0, 0, + 0, 856, 868, 3, 142, 71, 0, 857, 858, 10, 41, 0, 0, 858, 868, 3, 108, 54, 0, 859, 860, 10, + 39, 0, 0, 860, 861, 4, 57, 30, 0, 861, 868, 5, 20, 0, 0, 862, 863, 10, 38, 0, 0, 863, 864, + 4, 57, 32, 0, 864, 868, 5, 21, 0, 0, 865, 866, 10, 9, 0, 0, 866, 868, 3, 130, 65, 0, 867, + 782, 1, 0, 0, 0, 867, 785, 1, 0, 0, 0, 867, 788, 1, 0, 0, 0, 867, 791, 1, 0, 0, 0, 867, 794, + 1, 0, 0, 0, 867, 797, 1, 0, 0, 0, 867, 800, 1, 0, 0, 0, 867, 803, 1, 0, 0, 0, 867, 806, 1, + 0, 0, 0, 867, 809, 1, 0, 0, 0, 867, 812, 1, 0, 0, 0, 867, 815, 1, 0, 0, 0, 867, 818, 1, 0, + 0, 0, 867, 821, 1, 0, 0, 0, 867, 824, 1, 0, 0, 0, 867, 827, 1, 0, 0, 0, 867, 833, 1, 0, 0, + 0, 867, 836, 1, 0, 0, 0, 867, 840, 1, 0, 0, 0, 867, 848, 1, 0, 0, 0, 867, 857, 1, 0, 0, 0, + 867, 859, 1, 0, 0, 0, 867, 862, 1, 0, 0, 0, 867, 865, 1, 0, 0, 0, 868, 871, 1, 0, 0, 0, 869, + 867, 1, 0, 0, 0, 869, 870, 1, 0, 0, 0, 870, 115, 1, 0, 0, 0, 871, 869, 1, 0, 0, 0, 872, 876, + 3, 144, 72, 0, 873, 876, 3, 98, 49, 0, 874, 876, 3, 118, 59, 0, 875, 872, 1, 0, 0, 0, 875, + 873, 1, 0, 0, 0, 875, 874, 1, 0, 0, 0, 876, 117, 1, 0, 0, 0, 877, 889, 5, 9, 0, 0, 878, 883, + 3, 104, 52, 0, 879, 880, 5, 13, 0, 0, 880, 882, 3, 104, 52, 0, 881, 879, 1, 0, 0, 0, 882, + 885, 1, 0, 0, 0, 883, 881, 1, 0, 0, 0, 883, 884, 1, 0, 0, 0, 884, 887, 1, 0, 0, 0, 885, 883, + 1, 0, 0, 0, 886, 888, 5, 13, 0, 0, 887, 886, 1, 0, 0, 0, 887, 888, 1, 0, 0, 0, 888, 890, 1, + 0, 0, 0, 889, 878, 1, 0, 0, 0, 889, 890, 1, 0, 0, 0, 890, 891, 1, 0, 0, 0, 891, 892, 5, 11, + 0, 0, 892, 119, 1, 0, 0, 0, 893, 915, 3, 78, 39, 0, 894, 896, 5, 107, 0, 0, 895, 894, 1, 0, + 0, 0, 895, 896, 1, 0, 0, 0, 896, 897, 1, 0, 0, 0, 897, 899, 5, 89, 0, 0, 898, 900, 5, 26, 0, + 0, 899, 898, 1, 0, 0, 0, 899, 900, 1, 0, 0, 0, 900, 901, 1, 0, 0, 0, 901, 903, 5, 7, 0, 0, + 902, 904, 3, 88, 44, 0, 903, 902, 1, 0, 0, 0, 903, 904, 1, 0, 0, 0, 904, 905, 1, 0, 0, 0, + 905, 906, 5, 8, 0, 0, 906, 915, 3, 94, 47, 0, 907, 909, 5, 107, 0, 0, 908, 907, 1, 0, 0, 0, + 908, 909, 1, 0, 0, 0, 909, 910, 1, 0, 0, 0, 910, 911, 3, 122, 61, 0, 911, 912, 5, 60, 0, 0, + 912, 913, 3, 124, 62, 0, 913, 915, 1, 0, 0, 0, 914, 893, 1, 0, 0, 0, 914, 895, 1, 0, 0, 0, + 914, 908, 1, 0, 0, 0, 915, 121, 1, 0, 0, 0, 916, 923, 3, 144, 72, 0, 917, 919, 5, 7, 0, 0, + 918, 920, 3, 88, 44, 0, 919, 918, 1, 0, 0, 0, 919, 920, 1, 0, 0, 0, 920, 921, 1, 0, 0, 0, + 921, 923, 5, 8, 0, 0, 922, 916, 1, 0, 0, 0, 922, 917, 1, 0, 0, 0, 923, 123, 1, 0, 0, 0, 924, + 927, 3, 114, 57, 0, 925, 927, 3, 94, 47, 0, 926, 924, 1, 0, 0, 0, 926, 925, 1, 0, 0, 0, 927, + 125, 1, 0, 0, 0, 928, 929, 7, 5, 0, 0, 929, 127, 1, 0, 0, 0, 930, 938, 5, 61, 0, 0, 931, + 938, 5, 62, 0, 0, 932, 938, 5, 120, 0, 0, 933, 938, 3, 130, 65, 0, 934, 938, 5, 4, 0, 0, + 935, 938, 3, 134, 67, 0, 936, 938, 3, 136, 68, 0, 937, 930, 1, 0, 0, 0, 937, 931, 1, 0, 0, + 0, 937, 932, 1, 0, 0, 0, 937, 933, 1, 0, 0, 0, 937, 934, 1, 0, 0, 0, 937, 935, 1, 0, 0, 0, + 937, 936, 1, 0, 0, 0, 938, 129, 1, 0, 0, 0, 939, 943, 5, 121, 0, 0, 940, 942, 3, 132, 66, 0, + 941, 940, 1, 0, 0, 0, 942, 945, 1, 0, 0, 0, 943, 941, 1, 0, 0, 0, 943, 944, 1, 0, 0, 0, 944, + 946, 1, 0, 0, 0, 945, 943, 1, 0, 0, 0, 946, 947, 5, 121, 0, 0, 947, 131, 1, 0, 0, 0, 948, + 954, 5, 128, 0, 0, 949, 950, 5, 127, 0, 0, 950, 951, 3, 114, 57, 0, 951, 952, 5, 10, 0, 0, + 952, 954, 1, 0, 0, 0, 953, 948, 1, 0, 0, 0, 953, 949, 1, 0, 0, 0, 954, 133, 1, 0, 0, 0, 955, + 956, 7, 6, 0, 0, 956, 135, 1, 0, 0, 0, 957, 958, 7, 7, 0, 0, 958, 137, 1, 0, 0, 0, 959, 960, + 4, 69, 34, 0, 960, 961, 3, 144, 72, 0, 961, 962, 3, 106, 53, 0, 962, 139, 1, 0, 0, 0, 963, + 964, 4, 70, 35, 0, 964, 965, 3, 144, 72, 0, 965, 966, 3, 106, 53, 0, 966, 141, 1, 0, 0, 0, + 967, 970, 3, 144, 72, 0, 968, 970, 3, 146, 73, 0, 969, 967, 1, 0, 0, 0, 969, 968, 1, 0, 0, + 0, 970, 143, 1, 0, 0, 0, 971, 972, 7, 8, 0, 0, 972, 145, 1, 0, 0, 0, 973, 977, 3, 148, 74, + 0, 974, 977, 5, 61, 0, 0, 975, 977, 5, 62, 0, 0, 976, 973, 1, 0, 0, 0, 976, 974, 1, 0, 0, 0, + 976, 975, 1, 0, 0, 0, 977, 147, 1, 0, 0, 0, 978, 1025, 5, 72, 0, 0, 979, 1025, 5, 73, 0, 0, + 980, 1025, 5, 74, 0, 0, 981, 1025, 5, 75, 0, 0, 982, 1025, 5, 76, 0, 0, 983, 1025, 5, 77, 0, + 0, 984, 1025, 5, 78, 0, 0, 985, 1025, 5, 79, 0, 0, 986, 1025, 5, 80, 0, 0, 987, 1025, 5, 81, + 0, 0, 988, 1025, 5, 82, 0, 0, 989, 1025, 5, 83, 0, 0, 990, 1025, 5, 84, 0, 0, 991, 1025, 5, + 85, 0, 0, 992, 1025, 5, 86, 0, 0, 993, 1025, 5, 87, 0, 0, 994, 1025, 5, 88, 0, 0, 995, 1025, + 5, 89, 0, 0, 996, 1025, 5, 90, 0, 0, 997, 1025, 5, 91, 0, 0, 998, 1025, 5, 92, 0, 0, 999, + 1025, 5, 93, 0, 0, 1000, 1025, 5, 94, 0, 0, 1001, 1025, 5, 95, 0, 0, 1002, 1025, 5, 96, 0, + 0, 1003, 1025, 5, 97, 0, 0, 1004, 1025, 5, 100, 0, 0, 1005, 1025, 5, 101, 0, 0, 1006, 1025, + 5, 102, 0, 0, 1007, 1025, 5, 103, 0, 0, 1008, 1025, 5, 104, 0, 0, 1009, 1025, 5, 105, 0, 0, + 1010, 1025, 5, 106, 0, 0, 1011, 1025, 5, 110, 0, 0, 1012, 1025, 3, 150, 75, 0, 1013, 1025, + 5, 113, 0, 0, 1014, 1025, 5, 114, 0, 0, 1015, 1025, 5, 115, 0, 0, 1016, 1025, 5, 116, 0, 0, + 1017, 1025, 5, 117, 0, 0, 1018, 1025, 5, 118, 0, 0, 1019, 1025, 5, 109, 0, 0, 1020, 1025, 5, + 107, 0, 0, 1021, 1025, 5, 108, 0, 0, 1022, 1025, 5, 99, 0, 0, 1023, 1025, 5, 98, 0, 0, 1024, + 978, 1, 0, 0, 0, 1024, 979, 1, 0, 0, 0, 1024, 980, 1, 0, 0, 0, 1024, 981, 1, 0, 0, 0, 1024, + 982, 1, 0, 0, 0, 1024, 983, 1, 0, 0, 0, 1024, 984, 1, 0, 0, 0, 1024, 985, 1, 0, 0, 0, 1024, + 986, 1, 0, 0, 0, 1024, 987, 1, 0, 0, 0, 1024, 988, 1, 0, 0, 0, 1024, 989, 1, 0, 0, 0, 1024, + 990, 1, 0, 0, 0, 1024, 991, 1, 0, 0, 0, 1024, 992, 1, 0, 0, 0, 1024, 993, 1, 0, 0, 0, 1024, + 994, 1, 0, 0, 0, 1024, 995, 1, 0, 0, 0, 1024, 996, 1, 0, 0, 0, 1024, 997, 1, 0, 0, 0, 1024, + 998, 1, 0, 0, 0, 1024, 999, 1, 0, 0, 0, 1024, 1000, 1, 0, 0, 0, 1024, 1001, 1, 0, 0, 0, + 1024, 1002, 1, 0, 0, 0, 1024, 1003, 1, 0, 0, 0, 1024, 1004, 1, 0, 0, 0, 1024, 1005, 1, 0, 0, + 0, 1024, 1006, 1, 0, 0, 0, 1024, 1007, 1, 0, 0, 0, 1024, 1008, 1, 0, 0, 0, 1024, 1009, 1, 0, + 0, 0, 1024, 1010, 1, 0, 0, 0, 1024, 1011, 1, 0, 0, 0, 1024, 1012, 1, 0, 0, 0, 1024, 1013, 1, + 0, 0, 0, 1024, 1014, 1, 0, 0, 0, 1024, 1015, 1, 0, 0, 0, 1024, 1016, 1, 0, 0, 0, 1024, 1017, + 1, 0, 0, 0, 1024, 1018, 1, 0, 0, 0, 1024, 1019, 1, 0, 0, 0, 1024, 1020, 1, 0, 0, 0, 1024, + 1021, 1, 0, 0, 0, 1024, 1022, 1, 0, 0, 0, 1024, 1023, 1, 0, 0, 0, 1025, 149, 1, 0, 0, 0, + 1026, 1027, 7, 9, 0, 0, 1027, 151, 1, 0, 0, 0, 1028, 1033, 5, 12, 0, 0, 1029, 1033, 5, 0, 0, + 1, 1030, 1033, 4, 76, 36, 0, 1031, 1033, 4, 76, 37, 0, 1032, 1028, 1, 0, 0, 0, 1032, 1029, + 1, 0, 0, 0, 1032, 1030, 1, 0, 0, 0, 1032, 1031, 1, 0, 0, 0, 1033, 153, 1, 0, 0, 0, 113, 155, + 158, 184, 188, 195, 201, 205, 212, 220, 225, 227, 236, 240, 248, 253, 262, 270, 274, 279, + 290, 296, 311, 331, 335, 339, 347, 356, 361, 369, 374, 379, 386, 393, 400, 418, 422, 424, + 431, 437, 442, 457, 460, 465, 468, 479, 483, 488, 499, 505, 514, 516, 525, 529, 535, 538, + 541, 546, 552, 555, 563, 566, 571, 576, 583, 588, 591, 596, 603, 610, 619, 623, 628, 633, + 639, 643, 658, 661, 666, 683, 686, 695, 703, 707, 709, 714, 718, 725, 732, 780, 842, 850, + 854, 867, 869, 875, 883, 887, 889, 895, 899, 903, 908, 914, 919, 922, 926, 937, 943, 953, + 969, 976, 1024, 1032, + ] +} diff --git a/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserBase.swift b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserBase.swift new file mode 100644 index 000000000..78e28ed9e --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserBase.swift @@ -0,0 +1,87 @@ +import Antlr4 + +open class JavaScriptParserBase: Parser { + func p(_ s: String) throws -> Bool { + return try self.prev(s) + } + + func prev(_ s: String) throws -> Bool { + return try self._input.LT(-1)?.getText() == s + } + + func n(_ s: String) throws -> Bool { + return try self.next(s) + } + + func next(_ s: String) throws -> Bool { + return try self._input.LT(1)?.getText() == s + } + + func notLineTerminator() throws -> Bool { + return try !self.here(JavaScriptParser.Tokens.LineTerminator.rawValue) + } + + func notOpenBraceAndNotFunction() throws -> Bool { + let nextTokenType = try self._input.LT(1)?.getType() + + return nextTokenType != JavaScriptParser.Tokens.OpenBrace.rawValue && nextTokenType != JavaScriptParser.Tokens.Function_.rawValue + } + + func closeBrace() throws -> Bool { + return try self._input.LT(1)?.getType() == JavaScriptParser.Tokens.CloseBrace.rawValue + } + + // Returns `true` iff on the current index of the parser's token stream a + // token of the given `type` exists on the `HIDDEN` channel. + // - param tokenType: the type of the token on the `HIDDEN` channel to check. + // - returns: `true` iff on the current index of the parser's token stream a + // token of the given `type` exists on the `HIDDEN` channel. + func here(_ tokenType: Int) throws -> Bool { + // Get the token ahead of the current index. + let possibleIndexEosToken = try getCurrentToken().getTokenIndex() - 1 + let ahead = try _input.get(possibleIndexEosToken) + + // Check if the token resides on the HIDDEN channel and if it's of the + // provided type. + return (ahead.getChannel() == Lexer.HIDDEN) && (ahead.getType() == tokenType) + } + + // Returns `true` iff on the current index of the parser's + // token stream a token exists on the `HIDDEN` channel which + // either is a line terminator, or is a multi line comment that + // contains a line terminator. + // + // - returns: `true` iff on the current index of the parser's + // token stream a token exists on the `HIDDEN` channel which + // either is a line terminator, or is a multi line comment that + // contains a line terminator. + func lineTerminatorAhead() throws -> Bool { + // Get the token ahead of the current index. + var possibleIndexEosToken: Int = try getCurrentToken().getTokenIndex() - 1 + var ahead: Token = try _input.get(possibleIndexEosToken) + + if ahead.getChannel() != Lexer.HIDDEN { + // We're only interested in tokens on the HIDDEN channel. + return false + } + + if ahead.getType() == JavaScriptParser.Tokens.LineTerminator.rawValue { + // There is definitely a line terminator ahead. + return true + } + + if ahead.getType() == JavaScriptParser.Tokens.WhiteSpaces.rawValue { + // Get the token ahead of the current whitespaces. + possibleIndexEosToken = try getCurrentToken().getTokenIndex() - 2 + ahead = try _input.get(possibleIndexEosToken) + } + + // Get the token's text and type. + let text = ahead.getText() ?? "" + let tokenType = ahead.getType() + + // Check if the token is, or contains a line terminator. + return (tokenType == JavaScriptParser.Tokens.MultiLineComment.rawValue && (text.contains("\r") || text.contains("\n"))) + || tokenType == JavaScriptParser.Tokens.LineTerminator.rawValue + } +} diff --git a/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserBaseListener.swift b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserBaseListener.swift new file mode 100644 index 000000000..edf0304ed --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserBaseListener.swift @@ -0,0 +1,1792 @@ +// Generated from java-escape by ANTLR 4.11.1 + +import Antlr4 + + +/** + * This class provides an empty implementation of {@link JavaScriptParserListener}, + * which can be extended to create a listener which only needs to handle a subset + * of the available methods. + */ +open class JavaScriptParserBaseListener: JavaScriptParserListener { + public init() { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterProgram(_ ctx: JavaScriptParser.ProgramContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitProgram(_ ctx: JavaScriptParser.ProgramContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterSourceElement(_ ctx: JavaScriptParser.SourceElementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitSourceElement(_ ctx: JavaScriptParser.SourceElementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterStatement(_ ctx: JavaScriptParser.StatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitStatement(_ ctx: JavaScriptParser.StatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterBlock(_ ctx: JavaScriptParser.BlockContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitBlock(_ ctx: JavaScriptParser.BlockContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterStatementList(_ ctx: JavaScriptParser.StatementListContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitStatementList(_ ctx: JavaScriptParser.StatementListContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterImportStatement(_ ctx: JavaScriptParser.ImportStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitImportStatement(_ ctx: JavaScriptParser.ImportStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterImportFromBlock(_ ctx: JavaScriptParser.ImportFromBlockContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitImportFromBlock(_ ctx: JavaScriptParser.ImportFromBlockContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterModuleItems(_ ctx: JavaScriptParser.ModuleItemsContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitModuleItems(_ ctx: JavaScriptParser.ModuleItemsContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterImportDefault(_ ctx: JavaScriptParser.ImportDefaultContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitImportDefault(_ ctx: JavaScriptParser.ImportDefaultContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterImportNamespace(_ ctx: JavaScriptParser.ImportNamespaceContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitImportNamespace(_ ctx: JavaScriptParser.ImportNamespaceContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterImportFrom(_ ctx: JavaScriptParser.ImportFromContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitImportFrom(_ ctx: JavaScriptParser.ImportFromContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterAliasName(_ ctx: JavaScriptParser.AliasNameContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitAliasName(_ ctx: JavaScriptParser.AliasNameContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterExportDeclaration(_ ctx: JavaScriptParser.ExportDeclarationContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitExportDeclaration(_ ctx: JavaScriptParser.ExportDeclarationContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterExportDefaultDeclaration(_ ctx: JavaScriptParser.ExportDefaultDeclarationContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitExportDefaultDeclaration(_ ctx: JavaScriptParser.ExportDefaultDeclarationContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterExportFromBlock(_ ctx: JavaScriptParser.ExportFromBlockContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitExportFromBlock(_ ctx: JavaScriptParser.ExportFromBlockContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterDeclaration(_ ctx: JavaScriptParser.DeclarationContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitDeclaration(_ ctx: JavaScriptParser.DeclarationContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterVariableStatement(_ ctx: JavaScriptParser.VariableStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitVariableStatement(_ ctx: JavaScriptParser.VariableStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterVariableDeclarationList(_ ctx: JavaScriptParser.VariableDeclarationListContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitVariableDeclarationList(_ ctx: JavaScriptParser.VariableDeclarationListContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterVariableDeclaration(_ ctx: JavaScriptParser.VariableDeclarationContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitVariableDeclaration(_ ctx: JavaScriptParser.VariableDeclarationContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterEmptyStatement_(_ ctx: JavaScriptParser.EmptyStatement_Context) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitEmptyStatement_(_ ctx: JavaScriptParser.EmptyStatement_Context) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterExpressionStatement(_ ctx: JavaScriptParser.ExpressionStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitExpressionStatement(_ ctx: JavaScriptParser.ExpressionStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterIfStatement(_ ctx: JavaScriptParser.IfStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitIfStatement(_ ctx: JavaScriptParser.IfStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterDoStatement(_ ctx: JavaScriptParser.DoStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitDoStatement(_ ctx: JavaScriptParser.DoStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterWhileStatement(_ ctx: JavaScriptParser.WhileStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitWhileStatement(_ ctx: JavaScriptParser.WhileStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterForStatement(_ ctx: JavaScriptParser.ForStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitForStatement(_ ctx: JavaScriptParser.ForStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterForInStatement(_ ctx: JavaScriptParser.ForInStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitForInStatement(_ ctx: JavaScriptParser.ForInStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterForOfStatement(_ ctx: JavaScriptParser.ForOfStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitForOfStatement(_ ctx: JavaScriptParser.ForOfStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterVarModifier(_ ctx: JavaScriptParser.VarModifierContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitVarModifier(_ ctx: JavaScriptParser.VarModifierContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterContinueStatement(_ ctx: JavaScriptParser.ContinueStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitContinueStatement(_ ctx: JavaScriptParser.ContinueStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterBreakStatement(_ ctx: JavaScriptParser.BreakStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitBreakStatement(_ ctx: JavaScriptParser.BreakStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterReturnStatement(_ ctx: JavaScriptParser.ReturnStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitReturnStatement(_ ctx: JavaScriptParser.ReturnStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterYieldStatement(_ ctx: JavaScriptParser.YieldStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitYieldStatement(_ ctx: JavaScriptParser.YieldStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterWithStatement(_ ctx: JavaScriptParser.WithStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitWithStatement(_ ctx: JavaScriptParser.WithStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterSwitchStatement(_ ctx: JavaScriptParser.SwitchStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitSwitchStatement(_ ctx: JavaScriptParser.SwitchStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterCaseBlock(_ ctx: JavaScriptParser.CaseBlockContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitCaseBlock(_ ctx: JavaScriptParser.CaseBlockContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterCaseClauses(_ ctx: JavaScriptParser.CaseClausesContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitCaseClauses(_ ctx: JavaScriptParser.CaseClausesContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterCaseClause(_ ctx: JavaScriptParser.CaseClauseContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitCaseClause(_ ctx: JavaScriptParser.CaseClauseContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterDefaultClause(_ ctx: JavaScriptParser.DefaultClauseContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitDefaultClause(_ ctx: JavaScriptParser.DefaultClauseContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterLabelledStatement(_ ctx: JavaScriptParser.LabelledStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitLabelledStatement(_ ctx: JavaScriptParser.LabelledStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterThrowStatement(_ ctx: JavaScriptParser.ThrowStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitThrowStatement(_ ctx: JavaScriptParser.ThrowStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterTryStatement(_ ctx: JavaScriptParser.TryStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitTryStatement(_ ctx: JavaScriptParser.TryStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterCatchProduction(_ ctx: JavaScriptParser.CatchProductionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitCatchProduction(_ ctx: JavaScriptParser.CatchProductionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterFinallyProduction(_ ctx: JavaScriptParser.FinallyProductionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitFinallyProduction(_ ctx: JavaScriptParser.FinallyProductionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterDebuggerStatement(_ ctx: JavaScriptParser.DebuggerStatementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitDebuggerStatement(_ ctx: JavaScriptParser.DebuggerStatementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterFunctionDeclaration(_ ctx: JavaScriptParser.FunctionDeclarationContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitFunctionDeclaration(_ ctx: JavaScriptParser.FunctionDeclarationContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterClassDeclaration(_ ctx: JavaScriptParser.ClassDeclarationContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitClassDeclaration(_ ctx: JavaScriptParser.ClassDeclarationContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterClassTail(_ ctx: JavaScriptParser.ClassTailContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitClassTail(_ ctx: JavaScriptParser.ClassTailContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterClassElement(_ ctx: JavaScriptParser.ClassElementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitClassElement(_ ctx: JavaScriptParser.ClassElementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterMethodDefinition(_ ctx: JavaScriptParser.MethodDefinitionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitMethodDefinition(_ ctx: JavaScriptParser.MethodDefinitionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterFormalParameterList(_ ctx: JavaScriptParser.FormalParameterListContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitFormalParameterList(_ ctx: JavaScriptParser.FormalParameterListContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterFormalParameterArg(_ ctx: JavaScriptParser.FormalParameterArgContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitFormalParameterArg(_ ctx: JavaScriptParser.FormalParameterArgContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterLastFormalParameterArg(_ ctx: JavaScriptParser.LastFormalParameterArgContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitLastFormalParameterArg(_ ctx: JavaScriptParser.LastFormalParameterArgContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterFunctionBody(_ ctx: JavaScriptParser.FunctionBodyContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitFunctionBody(_ ctx: JavaScriptParser.FunctionBodyContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterSourceElements(_ ctx: JavaScriptParser.SourceElementsContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitSourceElements(_ ctx: JavaScriptParser.SourceElementsContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterArrayLiteral(_ ctx: JavaScriptParser.ArrayLiteralContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitArrayLiteral(_ ctx: JavaScriptParser.ArrayLiteralContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterElementList(_ ctx: JavaScriptParser.ElementListContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitElementList(_ ctx: JavaScriptParser.ElementListContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterArrayElement(_ ctx: JavaScriptParser.ArrayElementContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitArrayElement(_ ctx: JavaScriptParser.ArrayElementContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterPropertyExpressionAssignment(_ ctx: JavaScriptParser.PropertyExpressionAssignmentContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitPropertyExpressionAssignment(_ ctx: JavaScriptParser.PropertyExpressionAssignmentContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterComputedPropertyExpressionAssignment(_ ctx: JavaScriptParser.ComputedPropertyExpressionAssignmentContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitComputedPropertyExpressionAssignment(_ ctx: JavaScriptParser.ComputedPropertyExpressionAssignmentContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterFunctionProperty(_ ctx: JavaScriptParser.FunctionPropertyContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitFunctionProperty(_ ctx: JavaScriptParser.FunctionPropertyContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterPropertyGetter(_ ctx: JavaScriptParser.PropertyGetterContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitPropertyGetter(_ ctx: JavaScriptParser.PropertyGetterContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterPropertySetter(_ ctx: JavaScriptParser.PropertySetterContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitPropertySetter(_ ctx: JavaScriptParser.PropertySetterContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterPropertyShorthand(_ ctx: JavaScriptParser.PropertyShorthandContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitPropertyShorthand(_ ctx: JavaScriptParser.PropertyShorthandContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterPropertyName(_ ctx: JavaScriptParser.PropertyNameContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitPropertyName(_ ctx: JavaScriptParser.PropertyNameContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterArguments(_ ctx: JavaScriptParser.ArgumentsContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitArguments(_ ctx: JavaScriptParser.ArgumentsContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterArgument(_ ctx: JavaScriptParser.ArgumentContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitArgument(_ ctx: JavaScriptParser.ArgumentContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterExpressionSequence(_ ctx: JavaScriptParser.ExpressionSequenceContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitExpressionSequence(_ ctx: JavaScriptParser.ExpressionSequenceContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterTemplateStringExpression(_ ctx: JavaScriptParser.TemplateStringExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitTemplateStringExpression(_ ctx: JavaScriptParser.TemplateStringExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterTernaryExpression(_ ctx: JavaScriptParser.TernaryExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitTernaryExpression(_ ctx: JavaScriptParser.TernaryExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterLogicalAndExpression(_ ctx: JavaScriptParser.LogicalAndExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitLogicalAndExpression(_ ctx: JavaScriptParser.LogicalAndExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterPowerExpression(_ ctx: JavaScriptParser.PowerExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitPowerExpression(_ ctx: JavaScriptParser.PowerExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterPreIncrementExpression(_ ctx: JavaScriptParser.PreIncrementExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitPreIncrementExpression(_ ctx: JavaScriptParser.PreIncrementExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterObjectLiteralExpression(_ ctx: JavaScriptParser.ObjectLiteralExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitObjectLiteralExpression(_ ctx: JavaScriptParser.ObjectLiteralExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterMetaExpression(_ ctx: JavaScriptParser.MetaExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitMetaExpression(_ ctx: JavaScriptParser.MetaExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterInExpression(_ ctx: JavaScriptParser.InExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitInExpression(_ ctx: JavaScriptParser.InExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterLogicalOrExpression(_ ctx: JavaScriptParser.LogicalOrExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitLogicalOrExpression(_ ctx: JavaScriptParser.LogicalOrExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterOptionalChainExpression(_ ctx: JavaScriptParser.OptionalChainExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitOptionalChainExpression(_ ctx: JavaScriptParser.OptionalChainExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterNotExpression(_ ctx: JavaScriptParser.NotExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitNotExpression(_ ctx: JavaScriptParser.NotExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterPreDecreaseExpression(_ ctx: JavaScriptParser.PreDecreaseExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitPreDecreaseExpression(_ ctx: JavaScriptParser.PreDecreaseExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterArgumentsExpression(_ ctx: JavaScriptParser.ArgumentsExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitArgumentsExpression(_ ctx: JavaScriptParser.ArgumentsExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterAwaitExpression(_ ctx: JavaScriptParser.AwaitExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitAwaitExpression(_ ctx: JavaScriptParser.AwaitExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterThisExpression(_ ctx: JavaScriptParser.ThisExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitThisExpression(_ ctx: JavaScriptParser.ThisExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterFunctionExpression(_ ctx: JavaScriptParser.FunctionExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitFunctionExpression(_ ctx: JavaScriptParser.FunctionExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterUnaryMinusExpression(_ ctx: JavaScriptParser.UnaryMinusExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitUnaryMinusExpression(_ ctx: JavaScriptParser.UnaryMinusExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterAssignmentExpression(_ ctx: JavaScriptParser.AssignmentExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitAssignmentExpression(_ ctx: JavaScriptParser.AssignmentExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterPostDecreaseExpression(_ ctx: JavaScriptParser.PostDecreaseExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitPostDecreaseExpression(_ ctx: JavaScriptParser.PostDecreaseExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterTypeofExpression(_ ctx: JavaScriptParser.TypeofExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitTypeofExpression(_ ctx: JavaScriptParser.TypeofExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterInstanceofExpression(_ ctx: JavaScriptParser.InstanceofExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitInstanceofExpression(_ ctx: JavaScriptParser.InstanceofExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterUnaryPlusExpression(_ ctx: JavaScriptParser.UnaryPlusExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitUnaryPlusExpression(_ ctx: JavaScriptParser.UnaryPlusExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterDeleteExpression(_ ctx: JavaScriptParser.DeleteExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitDeleteExpression(_ ctx: JavaScriptParser.DeleteExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterImportExpression(_ ctx: JavaScriptParser.ImportExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitImportExpression(_ ctx: JavaScriptParser.ImportExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterEqualityExpression(_ ctx: JavaScriptParser.EqualityExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitEqualityExpression(_ ctx: JavaScriptParser.EqualityExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterBitXOrExpression(_ ctx: JavaScriptParser.BitXOrExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitBitXOrExpression(_ ctx: JavaScriptParser.BitXOrExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterSuperExpression(_ ctx: JavaScriptParser.SuperExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitSuperExpression(_ ctx: JavaScriptParser.SuperExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterMultiplicativeExpression(_ ctx: JavaScriptParser.MultiplicativeExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitMultiplicativeExpression(_ ctx: JavaScriptParser.MultiplicativeExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterBitShiftExpression(_ ctx: JavaScriptParser.BitShiftExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitBitShiftExpression(_ ctx: JavaScriptParser.BitShiftExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterParenthesizedExpression(_ ctx: JavaScriptParser.ParenthesizedExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitParenthesizedExpression(_ ctx: JavaScriptParser.ParenthesizedExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterAdditiveExpression(_ ctx: JavaScriptParser.AdditiveExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitAdditiveExpression(_ ctx: JavaScriptParser.AdditiveExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterRelationalExpression(_ ctx: JavaScriptParser.RelationalExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitRelationalExpression(_ ctx: JavaScriptParser.RelationalExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterPostIncrementExpression(_ ctx: JavaScriptParser.PostIncrementExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitPostIncrementExpression(_ ctx: JavaScriptParser.PostIncrementExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterYieldExpression(_ ctx: JavaScriptParser.YieldExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitYieldExpression(_ ctx: JavaScriptParser.YieldExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterBitNotExpression(_ ctx: JavaScriptParser.BitNotExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitBitNotExpression(_ ctx: JavaScriptParser.BitNotExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterNewExpression(_ ctx: JavaScriptParser.NewExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitNewExpression(_ ctx: JavaScriptParser.NewExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterLiteralExpression(_ ctx: JavaScriptParser.LiteralExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitLiteralExpression(_ ctx: JavaScriptParser.LiteralExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterArrayLiteralExpression(_ ctx: JavaScriptParser.ArrayLiteralExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitArrayLiteralExpression(_ ctx: JavaScriptParser.ArrayLiteralExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterMemberDotExpression(_ ctx: JavaScriptParser.MemberDotExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitMemberDotExpression(_ ctx: JavaScriptParser.MemberDotExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterClassExpression(_ ctx: JavaScriptParser.ClassExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitClassExpression(_ ctx: JavaScriptParser.ClassExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterMemberIndexExpression(_ ctx: JavaScriptParser.MemberIndexExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitMemberIndexExpression(_ ctx: JavaScriptParser.MemberIndexExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterIdentifierExpression(_ ctx: JavaScriptParser.IdentifierExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitIdentifierExpression(_ ctx: JavaScriptParser.IdentifierExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterBitAndExpression(_ ctx: JavaScriptParser.BitAndExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitBitAndExpression(_ ctx: JavaScriptParser.BitAndExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterBitOrExpression(_ ctx: JavaScriptParser.BitOrExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitBitOrExpression(_ ctx: JavaScriptParser.BitOrExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterAssignmentOperatorExpression(_ ctx: JavaScriptParser.AssignmentOperatorExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitAssignmentOperatorExpression(_ ctx: JavaScriptParser.AssignmentOperatorExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterVoidExpression(_ ctx: JavaScriptParser.VoidExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitVoidExpression(_ ctx: JavaScriptParser.VoidExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterCoalesceExpression(_ ctx: JavaScriptParser.CoalesceExpressionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitCoalesceExpression(_ ctx: JavaScriptParser.CoalesceExpressionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterAssignable(_ ctx: JavaScriptParser.AssignableContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitAssignable(_ ctx: JavaScriptParser.AssignableContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterObjectLiteral(_ ctx: JavaScriptParser.ObjectLiteralContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitObjectLiteral(_ ctx: JavaScriptParser.ObjectLiteralContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterFunctionDecl(_ ctx: JavaScriptParser.FunctionDeclContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitFunctionDecl(_ ctx: JavaScriptParser.FunctionDeclContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterAnonymousFunctionDecl(_ ctx: JavaScriptParser.AnonymousFunctionDeclContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitAnonymousFunctionDecl(_ ctx: JavaScriptParser.AnonymousFunctionDeclContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterArrowFunction(_ ctx: JavaScriptParser.ArrowFunctionContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitArrowFunction(_ ctx: JavaScriptParser.ArrowFunctionContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterArrowFunctionParameters(_ ctx: JavaScriptParser.ArrowFunctionParametersContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitArrowFunctionParameters(_ ctx: JavaScriptParser.ArrowFunctionParametersContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterArrowFunctionBody(_ ctx: JavaScriptParser.ArrowFunctionBodyContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitArrowFunctionBody(_ ctx: JavaScriptParser.ArrowFunctionBodyContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterAssignmentOperator(_ ctx: JavaScriptParser.AssignmentOperatorContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitAssignmentOperator(_ ctx: JavaScriptParser.AssignmentOperatorContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterLiteral(_ ctx: JavaScriptParser.LiteralContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitLiteral(_ ctx: JavaScriptParser.LiteralContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterTemplateStringLiteral(_ ctx: JavaScriptParser.TemplateStringLiteralContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitTemplateStringLiteral(_ ctx: JavaScriptParser.TemplateStringLiteralContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterTemplateStringAtom(_ ctx: JavaScriptParser.TemplateStringAtomContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitTemplateStringAtom(_ ctx: JavaScriptParser.TemplateStringAtomContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterNumericLiteral(_ ctx: JavaScriptParser.NumericLiteralContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitNumericLiteral(_ ctx: JavaScriptParser.NumericLiteralContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterBigintLiteral(_ ctx: JavaScriptParser.BigintLiteralContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitBigintLiteral(_ ctx: JavaScriptParser.BigintLiteralContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterGetter(_ ctx: JavaScriptParser.GetterContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitGetter(_ ctx: JavaScriptParser.GetterContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterSetter(_ ctx: JavaScriptParser.SetterContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitSetter(_ ctx: JavaScriptParser.SetterContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterIdentifierName(_ ctx: JavaScriptParser.IdentifierNameContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitIdentifierName(_ ctx: JavaScriptParser.IdentifierNameContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterIdentifier(_ ctx: JavaScriptParser.IdentifierContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitIdentifier(_ ctx: JavaScriptParser.IdentifierContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterReservedWord(_ ctx: JavaScriptParser.ReservedWordContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitReservedWord(_ ctx: JavaScriptParser.ReservedWordContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterKeyword(_ ctx: JavaScriptParser.KeywordContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitKeyword(_ ctx: JavaScriptParser.KeywordContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterLet_(_ ctx: JavaScriptParser.Let_Context) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitLet_(_ ctx: JavaScriptParser.Let_Context) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterEos(_ ctx: JavaScriptParser.EosContext) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitEos(_ ctx: JavaScriptParser.EosContext) { } + + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func enterEveryRule(_ ctx: ParserRuleContext) throws { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func exitEveryRule(_ ctx: ParserRuleContext) throws { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func visitTerminal(_ node: TerminalNode) { } + /** + * {@inheritDoc} + * + *

The default implementation does nothing.

+ */ + open func visitErrorNode(_ node: ErrorNode) { } +} \ No newline at end of file diff --git a/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserBaseVisitor.swift b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserBaseVisitor.swift new file mode 100644 index 000000000..b58cbfdc1 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserBaseVisitor.swift @@ -0,0 +1,958 @@ +// Generated from java-escape by ANTLR 4.11.1 +import Antlr4 + +/** + * This class provides an empty implementation of {@link JavaScriptParserVisitor}, + * which can be extended to create a visitor which only needs to handle a subset + * of the available methods. + * + * @param The return type of the visit operation. Use {@link Void} for + * operations with no return type. + */ +open class JavaScriptParserBaseVisitor: AbstractParseTreeVisitor { + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitProgram(_ ctx: JavaScriptParser.ProgramContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitSourceElement(_ ctx: JavaScriptParser.SourceElementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitStatement(_ ctx: JavaScriptParser.StatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitBlock(_ ctx: JavaScriptParser.BlockContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitStatementList(_ ctx: JavaScriptParser.StatementListContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitImportStatement(_ ctx: JavaScriptParser.ImportStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitImportFromBlock(_ ctx: JavaScriptParser.ImportFromBlockContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitModuleItems(_ ctx: JavaScriptParser.ModuleItemsContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitImportDefault(_ ctx: JavaScriptParser.ImportDefaultContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitImportNamespace(_ ctx: JavaScriptParser.ImportNamespaceContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitImportFrom(_ ctx: JavaScriptParser.ImportFromContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitAliasName(_ ctx: JavaScriptParser.AliasNameContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitExportDeclaration(_ ctx: JavaScriptParser.ExportDeclarationContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitExportDefaultDeclaration(_ ctx: JavaScriptParser.ExportDefaultDeclarationContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitExportFromBlock(_ ctx: JavaScriptParser.ExportFromBlockContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitDeclaration(_ ctx: JavaScriptParser.DeclarationContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitVariableStatement(_ ctx: JavaScriptParser.VariableStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitVariableDeclarationList(_ ctx: JavaScriptParser.VariableDeclarationListContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitVariableDeclaration(_ ctx: JavaScriptParser.VariableDeclarationContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitEmptyStatement_(_ ctx: JavaScriptParser.EmptyStatement_Context) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitExpressionStatement(_ ctx: JavaScriptParser.ExpressionStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitIfStatement(_ ctx: JavaScriptParser.IfStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitDoStatement(_ ctx: JavaScriptParser.DoStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitWhileStatement(_ ctx: JavaScriptParser.WhileStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitForStatement(_ ctx: JavaScriptParser.ForStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitForInStatement(_ ctx: JavaScriptParser.ForInStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitForOfStatement(_ ctx: JavaScriptParser.ForOfStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitVarModifier(_ ctx: JavaScriptParser.VarModifierContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitContinueStatement(_ ctx: JavaScriptParser.ContinueStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitBreakStatement(_ ctx: JavaScriptParser.BreakStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitReturnStatement(_ ctx: JavaScriptParser.ReturnStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitYieldStatement(_ ctx: JavaScriptParser.YieldStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitWithStatement(_ ctx: JavaScriptParser.WithStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitSwitchStatement(_ ctx: JavaScriptParser.SwitchStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitCaseBlock(_ ctx: JavaScriptParser.CaseBlockContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitCaseClauses(_ ctx: JavaScriptParser.CaseClausesContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitCaseClause(_ ctx: JavaScriptParser.CaseClauseContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitDefaultClause(_ ctx: JavaScriptParser.DefaultClauseContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitLabelledStatement(_ ctx: JavaScriptParser.LabelledStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitThrowStatement(_ ctx: JavaScriptParser.ThrowStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitTryStatement(_ ctx: JavaScriptParser.TryStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitCatchProduction(_ ctx: JavaScriptParser.CatchProductionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitFinallyProduction(_ ctx: JavaScriptParser.FinallyProductionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitDebuggerStatement(_ ctx: JavaScriptParser.DebuggerStatementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitFunctionDeclaration(_ ctx: JavaScriptParser.FunctionDeclarationContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitClassDeclaration(_ ctx: JavaScriptParser.ClassDeclarationContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitClassTail(_ ctx: JavaScriptParser.ClassTailContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitClassElement(_ ctx: JavaScriptParser.ClassElementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitMethodDefinition(_ ctx: JavaScriptParser.MethodDefinitionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitFormalParameterList(_ ctx: JavaScriptParser.FormalParameterListContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitFormalParameterArg(_ ctx: JavaScriptParser.FormalParameterArgContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitLastFormalParameterArg(_ ctx: JavaScriptParser.LastFormalParameterArgContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitFunctionBody(_ ctx: JavaScriptParser.FunctionBodyContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitSourceElements(_ ctx: JavaScriptParser.SourceElementsContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitArrayLiteral(_ ctx: JavaScriptParser.ArrayLiteralContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitElementList(_ ctx: JavaScriptParser.ElementListContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitArrayElement(_ ctx: JavaScriptParser.ArrayElementContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitPropertyExpressionAssignment(_ ctx: JavaScriptParser.PropertyExpressionAssignmentContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitComputedPropertyExpressionAssignment(_ ctx: JavaScriptParser.ComputedPropertyExpressionAssignmentContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitFunctionProperty(_ ctx: JavaScriptParser.FunctionPropertyContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitPropertyGetter(_ ctx: JavaScriptParser.PropertyGetterContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitPropertySetter(_ ctx: JavaScriptParser.PropertySetterContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitPropertyShorthand(_ ctx: JavaScriptParser.PropertyShorthandContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitPropertyName(_ ctx: JavaScriptParser.PropertyNameContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitArguments(_ ctx: JavaScriptParser.ArgumentsContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitArgument(_ ctx: JavaScriptParser.ArgumentContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitExpressionSequence(_ ctx: JavaScriptParser.ExpressionSequenceContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitTemplateStringExpression(_ ctx: JavaScriptParser.TemplateStringExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitTernaryExpression(_ ctx: JavaScriptParser.TernaryExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitLogicalAndExpression(_ ctx: JavaScriptParser.LogicalAndExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitPowerExpression(_ ctx: JavaScriptParser.PowerExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitPreIncrementExpression(_ ctx: JavaScriptParser.PreIncrementExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitObjectLiteralExpression(_ ctx: JavaScriptParser.ObjectLiteralExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitMetaExpression(_ ctx: JavaScriptParser.MetaExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitInExpression(_ ctx: JavaScriptParser.InExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitLogicalOrExpression(_ ctx: JavaScriptParser.LogicalOrExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitOptionalChainExpression(_ ctx: JavaScriptParser.OptionalChainExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitNotExpression(_ ctx: JavaScriptParser.NotExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitPreDecreaseExpression(_ ctx: JavaScriptParser.PreDecreaseExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitArgumentsExpression(_ ctx: JavaScriptParser.ArgumentsExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitAwaitExpression(_ ctx: JavaScriptParser.AwaitExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitThisExpression(_ ctx: JavaScriptParser.ThisExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitFunctionExpression(_ ctx: JavaScriptParser.FunctionExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitUnaryMinusExpression(_ ctx: JavaScriptParser.UnaryMinusExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitAssignmentExpression(_ ctx: JavaScriptParser.AssignmentExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitPostDecreaseExpression(_ ctx: JavaScriptParser.PostDecreaseExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitTypeofExpression(_ ctx: JavaScriptParser.TypeofExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitInstanceofExpression(_ ctx: JavaScriptParser.InstanceofExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitUnaryPlusExpression(_ ctx: JavaScriptParser.UnaryPlusExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitDeleteExpression(_ ctx: JavaScriptParser.DeleteExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitImportExpression(_ ctx: JavaScriptParser.ImportExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitEqualityExpression(_ ctx: JavaScriptParser.EqualityExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitBitXOrExpression(_ ctx: JavaScriptParser.BitXOrExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitSuperExpression(_ ctx: JavaScriptParser.SuperExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitMultiplicativeExpression(_ ctx: JavaScriptParser.MultiplicativeExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitBitShiftExpression(_ ctx: JavaScriptParser.BitShiftExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitParenthesizedExpression(_ ctx: JavaScriptParser.ParenthesizedExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitAdditiveExpression(_ ctx: JavaScriptParser.AdditiveExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitRelationalExpression(_ ctx: JavaScriptParser.RelationalExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitPostIncrementExpression(_ ctx: JavaScriptParser.PostIncrementExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitYieldExpression(_ ctx: JavaScriptParser.YieldExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitBitNotExpression(_ ctx: JavaScriptParser.BitNotExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitNewExpression(_ ctx: JavaScriptParser.NewExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitLiteralExpression(_ ctx: JavaScriptParser.LiteralExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitArrayLiteralExpression(_ ctx: JavaScriptParser.ArrayLiteralExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitMemberDotExpression(_ ctx: JavaScriptParser.MemberDotExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitClassExpression(_ ctx: JavaScriptParser.ClassExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitMemberIndexExpression(_ ctx: JavaScriptParser.MemberIndexExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitIdentifierExpression(_ ctx: JavaScriptParser.IdentifierExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitBitAndExpression(_ ctx: JavaScriptParser.BitAndExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitBitOrExpression(_ ctx: JavaScriptParser.BitOrExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitAssignmentOperatorExpression(_ ctx: JavaScriptParser.AssignmentOperatorExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitVoidExpression(_ ctx: JavaScriptParser.VoidExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitCoalesceExpression(_ ctx: JavaScriptParser.CoalesceExpressionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitAssignable(_ ctx: JavaScriptParser.AssignableContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitObjectLiteral(_ ctx: JavaScriptParser.ObjectLiteralContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitFunctionDecl(_ ctx: JavaScriptParser.FunctionDeclContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitAnonymousFunctionDecl(_ ctx: JavaScriptParser.AnonymousFunctionDeclContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitArrowFunction(_ ctx: JavaScriptParser.ArrowFunctionContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitArrowFunctionParameters(_ ctx: JavaScriptParser.ArrowFunctionParametersContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitArrowFunctionBody(_ ctx: JavaScriptParser.ArrowFunctionBodyContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitAssignmentOperator(_ ctx: JavaScriptParser.AssignmentOperatorContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitLiteral(_ ctx: JavaScriptParser.LiteralContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitTemplateStringLiteral(_ ctx: JavaScriptParser.TemplateStringLiteralContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitTemplateStringAtom(_ ctx: JavaScriptParser.TemplateStringAtomContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitNumericLiteral(_ ctx: JavaScriptParser.NumericLiteralContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitBigintLiteral(_ ctx: JavaScriptParser.BigintLiteralContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitGetter(_ ctx: JavaScriptParser.GetterContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitSetter(_ ctx: JavaScriptParser.SetterContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitIdentifierName(_ ctx: JavaScriptParser.IdentifierNameContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitIdentifier(_ ctx: JavaScriptParser.IdentifierContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitReservedWord(_ ctx: JavaScriptParser.ReservedWordContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitKeyword(_ ctx: JavaScriptParser.KeywordContext) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitLet_(_ ctx: JavaScriptParser.Let_Context) -> T? { return visitChildren(ctx) } + /** + * {@inheritDoc} + * + *

The default implementation returns the result of calling + * {@link #visitChildren} on {@code ctx}.

+ */ + open func visitEos(_ ctx: JavaScriptParser.EosContext) -> T? { return visitChildren(ctx) } +} \ No newline at end of file diff --git a/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserListener.swift b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserListener.swift new file mode 100644 index 000000000..b9c4eca3a --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserListener.swift @@ -0,0 +1,1755 @@ +// Generated from java-escape by ANTLR 4.11.1 +import Antlr4 + +/** + * This interface defines a complete listener for a parse tree produced by + * {@link JavaScriptParser}. + */ +public protocol JavaScriptParserListener: ParseTreeListener { + /** + * Enter a parse tree produced by {@link JavaScriptParser#program}. + - Parameters: + - ctx: the parse tree + */ + func enterProgram(_ ctx: JavaScriptParser.ProgramContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#program}. + - Parameters: + - ctx: the parse tree + */ + func exitProgram(_ ctx: JavaScriptParser.ProgramContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#sourceElement}. + - Parameters: + - ctx: the parse tree + */ + func enterSourceElement(_ ctx: JavaScriptParser.SourceElementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#sourceElement}. + - Parameters: + - ctx: the parse tree + */ + func exitSourceElement(_ ctx: JavaScriptParser.SourceElementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#statement}. + - Parameters: + - ctx: the parse tree + */ + func enterStatement(_ ctx: JavaScriptParser.StatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#statement}. + - Parameters: + - ctx: the parse tree + */ + func exitStatement(_ ctx: JavaScriptParser.StatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#block}. + - Parameters: + - ctx: the parse tree + */ + func enterBlock(_ ctx: JavaScriptParser.BlockContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#block}. + - Parameters: + - ctx: the parse tree + */ + func exitBlock(_ ctx: JavaScriptParser.BlockContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#statementList}. + - Parameters: + - ctx: the parse tree + */ + func enterStatementList(_ ctx: JavaScriptParser.StatementListContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#statementList}. + - Parameters: + - ctx: the parse tree + */ + func exitStatementList(_ ctx: JavaScriptParser.StatementListContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#importStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterImportStatement(_ ctx: JavaScriptParser.ImportStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#importStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitImportStatement(_ ctx: JavaScriptParser.ImportStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#importFromBlock}. + - Parameters: + - ctx: the parse tree + */ + func enterImportFromBlock(_ ctx: JavaScriptParser.ImportFromBlockContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#importFromBlock}. + - Parameters: + - ctx: the parse tree + */ + func exitImportFromBlock(_ ctx: JavaScriptParser.ImportFromBlockContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#moduleItems}. + - Parameters: + - ctx: the parse tree + */ + func enterModuleItems(_ ctx: JavaScriptParser.ModuleItemsContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#moduleItems}. + - Parameters: + - ctx: the parse tree + */ + func exitModuleItems(_ ctx: JavaScriptParser.ModuleItemsContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#importDefault}. + - Parameters: + - ctx: the parse tree + */ + func enterImportDefault(_ ctx: JavaScriptParser.ImportDefaultContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#importDefault}. + - Parameters: + - ctx: the parse tree + */ + func exitImportDefault(_ ctx: JavaScriptParser.ImportDefaultContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#importNamespace}. + - Parameters: + - ctx: the parse tree + */ + func enterImportNamespace(_ ctx: JavaScriptParser.ImportNamespaceContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#importNamespace}. + - Parameters: + - ctx: the parse tree + */ + func exitImportNamespace(_ ctx: JavaScriptParser.ImportNamespaceContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#importFrom}. + - Parameters: + - ctx: the parse tree + */ + func enterImportFrom(_ ctx: JavaScriptParser.ImportFromContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#importFrom}. + - Parameters: + - ctx: the parse tree + */ + func exitImportFrom(_ ctx: JavaScriptParser.ImportFromContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#aliasName}. + - Parameters: + - ctx: the parse tree + */ + func enterAliasName(_ ctx: JavaScriptParser.AliasNameContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#aliasName}. + - Parameters: + - ctx: the parse tree + */ + func exitAliasName(_ ctx: JavaScriptParser.AliasNameContext) + /** + * Enter a parse tree produced by the {@code ExportDeclaration} + * labeled alternative in {@link JavaScriptParser#exportStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterExportDeclaration(_ ctx: JavaScriptParser.ExportDeclarationContext) + /** + * Exit a parse tree produced by the {@code ExportDeclaration} + * labeled alternative in {@link JavaScriptParser#exportStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitExportDeclaration(_ ctx: JavaScriptParser.ExportDeclarationContext) + /** + * Enter a parse tree produced by the {@code ExportDefaultDeclaration} + * labeled alternative in {@link JavaScriptParser#exportStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterExportDefaultDeclaration(_ ctx: JavaScriptParser.ExportDefaultDeclarationContext) + /** + * Exit a parse tree produced by the {@code ExportDefaultDeclaration} + * labeled alternative in {@link JavaScriptParser#exportStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitExportDefaultDeclaration(_ ctx: JavaScriptParser.ExportDefaultDeclarationContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#exportFromBlock}. + - Parameters: + - ctx: the parse tree + */ + func enterExportFromBlock(_ ctx: JavaScriptParser.ExportFromBlockContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#exportFromBlock}. + - Parameters: + - ctx: the parse tree + */ + func exitExportFromBlock(_ ctx: JavaScriptParser.ExportFromBlockContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#declaration}. + - Parameters: + - ctx: the parse tree + */ + func enterDeclaration(_ ctx: JavaScriptParser.DeclarationContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#declaration}. + - Parameters: + - ctx: the parse tree + */ + func exitDeclaration(_ ctx: JavaScriptParser.DeclarationContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#variableStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterVariableStatement(_ ctx: JavaScriptParser.VariableStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#variableStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitVariableStatement(_ ctx: JavaScriptParser.VariableStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#variableDeclarationList}. + - Parameters: + - ctx: the parse tree + */ + func enterVariableDeclarationList(_ ctx: JavaScriptParser.VariableDeclarationListContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#variableDeclarationList}. + - Parameters: + - ctx: the parse tree + */ + func exitVariableDeclarationList(_ ctx: JavaScriptParser.VariableDeclarationListContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#variableDeclaration}. + - Parameters: + - ctx: the parse tree + */ + func enterVariableDeclaration(_ ctx: JavaScriptParser.VariableDeclarationContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#variableDeclaration}. + - Parameters: + - ctx: the parse tree + */ + func exitVariableDeclaration(_ ctx: JavaScriptParser.VariableDeclarationContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#emptyStatement_}. + - Parameters: + - ctx: the parse tree + */ + func enterEmptyStatement_(_ ctx: JavaScriptParser.EmptyStatement_Context) + /** + * Exit a parse tree produced by {@link JavaScriptParser#emptyStatement_}. + - Parameters: + - ctx: the parse tree + */ + func exitEmptyStatement_(_ ctx: JavaScriptParser.EmptyStatement_Context) + /** + * Enter a parse tree produced by {@link JavaScriptParser#expressionStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterExpressionStatement(_ ctx: JavaScriptParser.ExpressionStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#expressionStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitExpressionStatement(_ ctx: JavaScriptParser.ExpressionStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#ifStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterIfStatement(_ ctx: JavaScriptParser.IfStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#ifStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitIfStatement(_ ctx: JavaScriptParser.IfStatementContext) + /** + * Enter a parse tree produced by the {@code DoStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterDoStatement(_ ctx: JavaScriptParser.DoStatementContext) + /** + * Exit a parse tree produced by the {@code DoStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitDoStatement(_ ctx: JavaScriptParser.DoStatementContext) + /** + * Enter a parse tree produced by the {@code WhileStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterWhileStatement(_ ctx: JavaScriptParser.WhileStatementContext) + /** + * Exit a parse tree produced by the {@code WhileStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitWhileStatement(_ ctx: JavaScriptParser.WhileStatementContext) + /** + * Enter a parse tree produced by the {@code ForStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterForStatement(_ ctx: JavaScriptParser.ForStatementContext) + /** + * Exit a parse tree produced by the {@code ForStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitForStatement(_ ctx: JavaScriptParser.ForStatementContext) + /** + * Enter a parse tree produced by the {@code ForInStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterForInStatement(_ ctx: JavaScriptParser.ForInStatementContext) + /** + * Exit a parse tree produced by the {@code ForInStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitForInStatement(_ ctx: JavaScriptParser.ForInStatementContext) + /** + * Enter a parse tree produced by the {@code ForOfStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterForOfStatement(_ ctx: JavaScriptParser.ForOfStatementContext) + /** + * Exit a parse tree produced by the {@code ForOfStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitForOfStatement(_ ctx: JavaScriptParser.ForOfStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#varModifier}. + - Parameters: + - ctx: the parse tree + */ + func enterVarModifier(_ ctx: JavaScriptParser.VarModifierContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#varModifier}. + - Parameters: + - ctx: the parse tree + */ + func exitVarModifier(_ ctx: JavaScriptParser.VarModifierContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#continueStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterContinueStatement(_ ctx: JavaScriptParser.ContinueStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#continueStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitContinueStatement(_ ctx: JavaScriptParser.ContinueStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#breakStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterBreakStatement(_ ctx: JavaScriptParser.BreakStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#breakStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitBreakStatement(_ ctx: JavaScriptParser.BreakStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#returnStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterReturnStatement(_ ctx: JavaScriptParser.ReturnStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#returnStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitReturnStatement(_ ctx: JavaScriptParser.ReturnStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#yieldStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterYieldStatement(_ ctx: JavaScriptParser.YieldStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#yieldStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitYieldStatement(_ ctx: JavaScriptParser.YieldStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#withStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterWithStatement(_ ctx: JavaScriptParser.WithStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#withStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitWithStatement(_ ctx: JavaScriptParser.WithStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#switchStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterSwitchStatement(_ ctx: JavaScriptParser.SwitchStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#switchStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitSwitchStatement(_ ctx: JavaScriptParser.SwitchStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#caseBlock}. + - Parameters: + - ctx: the parse tree + */ + func enterCaseBlock(_ ctx: JavaScriptParser.CaseBlockContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#caseBlock}. + - Parameters: + - ctx: the parse tree + */ + func exitCaseBlock(_ ctx: JavaScriptParser.CaseBlockContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#caseClauses}. + - Parameters: + - ctx: the parse tree + */ + func enterCaseClauses(_ ctx: JavaScriptParser.CaseClausesContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#caseClauses}. + - Parameters: + - ctx: the parse tree + */ + func exitCaseClauses(_ ctx: JavaScriptParser.CaseClausesContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#caseClause}. + - Parameters: + - ctx: the parse tree + */ + func enterCaseClause(_ ctx: JavaScriptParser.CaseClauseContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#caseClause}. + - Parameters: + - ctx: the parse tree + */ + func exitCaseClause(_ ctx: JavaScriptParser.CaseClauseContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#defaultClause}. + - Parameters: + - ctx: the parse tree + */ + func enterDefaultClause(_ ctx: JavaScriptParser.DefaultClauseContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#defaultClause}. + - Parameters: + - ctx: the parse tree + */ + func exitDefaultClause(_ ctx: JavaScriptParser.DefaultClauseContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#labelledStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterLabelledStatement(_ ctx: JavaScriptParser.LabelledStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#labelledStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitLabelledStatement(_ ctx: JavaScriptParser.LabelledStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#throwStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterThrowStatement(_ ctx: JavaScriptParser.ThrowStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#throwStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitThrowStatement(_ ctx: JavaScriptParser.ThrowStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#tryStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterTryStatement(_ ctx: JavaScriptParser.TryStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#tryStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitTryStatement(_ ctx: JavaScriptParser.TryStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#catchProduction}. + - Parameters: + - ctx: the parse tree + */ + func enterCatchProduction(_ ctx: JavaScriptParser.CatchProductionContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#catchProduction}. + - Parameters: + - ctx: the parse tree + */ + func exitCatchProduction(_ ctx: JavaScriptParser.CatchProductionContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#finallyProduction}. + - Parameters: + - ctx: the parse tree + */ + func enterFinallyProduction(_ ctx: JavaScriptParser.FinallyProductionContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#finallyProduction}. + - Parameters: + - ctx: the parse tree + */ + func exitFinallyProduction(_ ctx: JavaScriptParser.FinallyProductionContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#debuggerStatement}. + - Parameters: + - ctx: the parse tree + */ + func enterDebuggerStatement(_ ctx: JavaScriptParser.DebuggerStatementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#debuggerStatement}. + - Parameters: + - ctx: the parse tree + */ + func exitDebuggerStatement(_ ctx: JavaScriptParser.DebuggerStatementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#functionDeclaration}. + - Parameters: + - ctx: the parse tree + */ + func enterFunctionDeclaration(_ ctx: JavaScriptParser.FunctionDeclarationContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#functionDeclaration}. + - Parameters: + - ctx: the parse tree + */ + func exitFunctionDeclaration(_ ctx: JavaScriptParser.FunctionDeclarationContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#classDeclaration}. + - Parameters: + - ctx: the parse tree + */ + func enterClassDeclaration(_ ctx: JavaScriptParser.ClassDeclarationContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#classDeclaration}. + - Parameters: + - ctx: the parse tree + */ + func exitClassDeclaration(_ ctx: JavaScriptParser.ClassDeclarationContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#classTail}. + - Parameters: + - ctx: the parse tree + */ + func enterClassTail(_ ctx: JavaScriptParser.ClassTailContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#classTail}. + - Parameters: + - ctx: the parse tree + */ + func exitClassTail(_ ctx: JavaScriptParser.ClassTailContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#classElement}. + - Parameters: + - ctx: the parse tree + */ + func enterClassElement(_ ctx: JavaScriptParser.ClassElementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#classElement}. + - Parameters: + - ctx: the parse tree + */ + func exitClassElement(_ ctx: JavaScriptParser.ClassElementContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#methodDefinition}. + - Parameters: + - ctx: the parse tree + */ + func enterMethodDefinition(_ ctx: JavaScriptParser.MethodDefinitionContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#methodDefinition}. + - Parameters: + - ctx: the parse tree + */ + func exitMethodDefinition(_ ctx: JavaScriptParser.MethodDefinitionContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#formalParameterList}. + - Parameters: + - ctx: the parse tree + */ + func enterFormalParameterList(_ ctx: JavaScriptParser.FormalParameterListContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#formalParameterList}. + - Parameters: + - ctx: the parse tree + */ + func exitFormalParameterList(_ ctx: JavaScriptParser.FormalParameterListContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#formalParameterArg}. + - Parameters: + - ctx: the parse tree + */ + func enterFormalParameterArg(_ ctx: JavaScriptParser.FormalParameterArgContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#formalParameterArg}. + - Parameters: + - ctx: the parse tree + */ + func exitFormalParameterArg(_ ctx: JavaScriptParser.FormalParameterArgContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#lastFormalParameterArg}. + - Parameters: + - ctx: the parse tree + */ + func enterLastFormalParameterArg(_ ctx: JavaScriptParser.LastFormalParameterArgContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#lastFormalParameterArg}. + - Parameters: + - ctx: the parse tree + */ + func exitLastFormalParameterArg(_ ctx: JavaScriptParser.LastFormalParameterArgContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#functionBody}. + - Parameters: + - ctx: the parse tree + */ + func enterFunctionBody(_ ctx: JavaScriptParser.FunctionBodyContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#functionBody}. + - Parameters: + - ctx: the parse tree + */ + func exitFunctionBody(_ ctx: JavaScriptParser.FunctionBodyContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#sourceElements}. + - Parameters: + - ctx: the parse tree + */ + func enterSourceElements(_ ctx: JavaScriptParser.SourceElementsContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#sourceElements}. + - Parameters: + - ctx: the parse tree + */ + func exitSourceElements(_ ctx: JavaScriptParser.SourceElementsContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#arrayLiteral}. + - Parameters: + - ctx: the parse tree + */ + func enterArrayLiteral(_ ctx: JavaScriptParser.ArrayLiteralContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#arrayLiteral}. + - Parameters: + - ctx: the parse tree + */ + func exitArrayLiteral(_ ctx: JavaScriptParser.ArrayLiteralContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#elementList}. + - Parameters: + - ctx: the parse tree + */ + func enterElementList(_ ctx: JavaScriptParser.ElementListContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#elementList}. + - Parameters: + - ctx: the parse tree + */ + func exitElementList(_ ctx: JavaScriptParser.ElementListContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#arrayElement}. + - Parameters: + - ctx: the parse tree + */ + func enterArrayElement(_ ctx: JavaScriptParser.ArrayElementContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#arrayElement}. + - Parameters: + - ctx: the parse tree + */ + func exitArrayElement(_ ctx: JavaScriptParser.ArrayElementContext) + /** + * Enter a parse tree produced by the {@code PropertyExpressionAssignment} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func enterPropertyExpressionAssignment(_ ctx: JavaScriptParser.PropertyExpressionAssignmentContext) + /** + * Exit a parse tree produced by the {@code PropertyExpressionAssignment} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func exitPropertyExpressionAssignment(_ ctx: JavaScriptParser.PropertyExpressionAssignmentContext) + /** + * Enter a parse tree produced by the {@code ComputedPropertyExpressionAssignment} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func enterComputedPropertyExpressionAssignment(_ ctx: JavaScriptParser.ComputedPropertyExpressionAssignmentContext) + /** + * Exit a parse tree produced by the {@code ComputedPropertyExpressionAssignment} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func exitComputedPropertyExpressionAssignment(_ ctx: JavaScriptParser.ComputedPropertyExpressionAssignmentContext) + /** + * Enter a parse tree produced by the {@code FunctionProperty} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func enterFunctionProperty(_ ctx: JavaScriptParser.FunctionPropertyContext) + /** + * Exit a parse tree produced by the {@code FunctionProperty} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func exitFunctionProperty(_ ctx: JavaScriptParser.FunctionPropertyContext) + /** + * Enter a parse tree produced by the {@code PropertyGetter} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func enterPropertyGetter(_ ctx: JavaScriptParser.PropertyGetterContext) + /** + * Exit a parse tree produced by the {@code PropertyGetter} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func exitPropertyGetter(_ ctx: JavaScriptParser.PropertyGetterContext) + /** + * Enter a parse tree produced by the {@code PropertySetter} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func enterPropertySetter(_ ctx: JavaScriptParser.PropertySetterContext) + /** + * Exit a parse tree produced by the {@code PropertySetter} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func exitPropertySetter(_ ctx: JavaScriptParser.PropertySetterContext) + /** + * Enter a parse tree produced by the {@code PropertyShorthand} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func enterPropertyShorthand(_ ctx: JavaScriptParser.PropertyShorthandContext) + /** + * Exit a parse tree produced by the {@code PropertyShorthand} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + */ + func exitPropertyShorthand(_ ctx: JavaScriptParser.PropertyShorthandContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#propertyName}. + - Parameters: + - ctx: the parse tree + */ + func enterPropertyName(_ ctx: JavaScriptParser.PropertyNameContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#propertyName}. + - Parameters: + - ctx: the parse tree + */ + func exitPropertyName(_ ctx: JavaScriptParser.PropertyNameContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#arguments}. + - Parameters: + - ctx: the parse tree + */ + func enterArguments(_ ctx: JavaScriptParser.ArgumentsContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#arguments}. + - Parameters: + - ctx: the parse tree + */ + func exitArguments(_ ctx: JavaScriptParser.ArgumentsContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#argument}. + - Parameters: + - ctx: the parse tree + */ + func enterArgument(_ ctx: JavaScriptParser.ArgumentContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#argument}. + - Parameters: + - ctx: the parse tree + */ + func exitArgument(_ ctx: JavaScriptParser.ArgumentContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#expressionSequence}. + - Parameters: + - ctx: the parse tree + */ + func enterExpressionSequence(_ ctx: JavaScriptParser.ExpressionSequenceContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#expressionSequence}. + - Parameters: + - ctx: the parse tree + */ + func exitExpressionSequence(_ ctx: JavaScriptParser.ExpressionSequenceContext) + /** + * Enter a parse tree produced by the {@code TemplateStringExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterTemplateStringExpression(_ ctx: JavaScriptParser.TemplateStringExpressionContext) + /** + * Exit a parse tree produced by the {@code TemplateStringExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitTemplateStringExpression(_ ctx: JavaScriptParser.TemplateStringExpressionContext) + /** + * Enter a parse tree produced by the {@code TernaryExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterTernaryExpression(_ ctx: JavaScriptParser.TernaryExpressionContext) + /** + * Exit a parse tree produced by the {@code TernaryExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitTernaryExpression(_ ctx: JavaScriptParser.TernaryExpressionContext) + /** + * Enter a parse tree produced by the {@code LogicalAndExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterLogicalAndExpression(_ ctx: JavaScriptParser.LogicalAndExpressionContext) + /** + * Exit a parse tree produced by the {@code LogicalAndExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitLogicalAndExpression(_ ctx: JavaScriptParser.LogicalAndExpressionContext) + /** + * Enter a parse tree produced by the {@code PowerExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterPowerExpression(_ ctx: JavaScriptParser.PowerExpressionContext) + /** + * Exit a parse tree produced by the {@code PowerExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitPowerExpression(_ ctx: JavaScriptParser.PowerExpressionContext) + /** + * Enter a parse tree produced by the {@code PreIncrementExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterPreIncrementExpression(_ ctx: JavaScriptParser.PreIncrementExpressionContext) + /** + * Exit a parse tree produced by the {@code PreIncrementExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitPreIncrementExpression(_ ctx: JavaScriptParser.PreIncrementExpressionContext) + /** + * Enter a parse tree produced by the {@code ObjectLiteralExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterObjectLiteralExpression(_ ctx: JavaScriptParser.ObjectLiteralExpressionContext) + /** + * Exit a parse tree produced by the {@code ObjectLiteralExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitObjectLiteralExpression(_ ctx: JavaScriptParser.ObjectLiteralExpressionContext) + /** + * Enter a parse tree produced by the {@code MetaExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterMetaExpression(_ ctx: JavaScriptParser.MetaExpressionContext) + /** + * Exit a parse tree produced by the {@code MetaExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitMetaExpression(_ ctx: JavaScriptParser.MetaExpressionContext) + /** + * Enter a parse tree produced by the {@code InExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterInExpression(_ ctx: JavaScriptParser.InExpressionContext) + /** + * Exit a parse tree produced by the {@code InExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitInExpression(_ ctx: JavaScriptParser.InExpressionContext) + /** + * Enter a parse tree produced by the {@code LogicalOrExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterLogicalOrExpression(_ ctx: JavaScriptParser.LogicalOrExpressionContext) + /** + * Exit a parse tree produced by the {@code LogicalOrExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitLogicalOrExpression(_ ctx: JavaScriptParser.LogicalOrExpressionContext) + /** + * Enter a parse tree produced by the {@code OptionalChainExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterOptionalChainExpression(_ ctx: JavaScriptParser.OptionalChainExpressionContext) + /** + * Exit a parse tree produced by the {@code OptionalChainExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitOptionalChainExpression(_ ctx: JavaScriptParser.OptionalChainExpressionContext) + /** + * Enter a parse tree produced by the {@code NotExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterNotExpression(_ ctx: JavaScriptParser.NotExpressionContext) + /** + * Exit a parse tree produced by the {@code NotExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitNotExpression(_ ctx: JavaScriptParser.NotExpressionContext) + /** + * Enter a parse tree produced by the {@code PreDecreaseExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterPreDecreaseExpression(_ ctx: JavaScriptParser.PreDecreaseExpressionContext) + /** + * Exit a parse tree produced by the {@code PreDecreaseExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitPreDecreaseExpression(_ ctx: JavaScriptParser.PreDecreaseExpressionContext) + /** + * Enter a parse tree produced by the {@code ArgumentsExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterArgumentsExpression(_ ctx: JavaScriptParser.ArgumentsExpressionContext) + /** + * Exit a parse tree produced by the {@code ArgumentsExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitArgumentsExpression(_ ctx: JavaScriptParser.ArgumentsExpressionContext) + /** + * Enter a parse tree produced by the {@code AwaitExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterAwaitExpression(_ ctx: JavaScriptParser.AwaitExpressionContext) + /** + * Exit a parse tree produced by the {@code AwaitExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitAwaitExpression(_ ctx: JavaScriptParser.AwaitExpressionContext) + /** + * Enter a parse tree produced by the {@code ThisExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterThisExpression(_ ctx: JavaScriptParser.ThisExpressionContext) + /** + * Exit a parse tree produced by the {@code ThisExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitThisExpression(_ ctx: JavaScriptParser.ThisExpressionContext) + /** + * Enter a parse tree produced by the {@code FunctionExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterFunctionExpression(_ ctx: JavaScriptParser.FunctionExpressionContext) + /** + * Exit a parse tree produced by the {@code FunctionExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitFunctionExpression(_ ctx: JavaScriptParser.FunctionExpressionContext) + /** + * Enter a parse tree produced by the {@code UnaryMinusExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterUnaryMinusExpression(_ ctx: JavaScriptParser.UnaryMinusExpressionContext) + /** + * Exit a parse tree produced by the {@code UnaryMinusExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitUnaryMinusExpression(_ ctx: JavaScriptParser.UnaryMinusExpressionContext) + /** + * Enter a parse tree produced by the {@code AssignmentExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterAssignmentExpression(_ ctx: JavaScriptParser.AssignmentExpressionContext) + /** + * Exit a parse tree produced by the {@code AssignmentExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitAssignmentExpression(_ ctx: JavaScriptParser.AssignmentExpressionContext) + /** + * Enter a parse tree produced by the {@code PostDecreaseExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterPostDecreaseExpression(_ ctx: JavaScriptParser.PostDecreaseExpressionContext) + /** + * Exit a parse tree produced by the {@code PostDecreaseExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitPostDecreaseExpression(_ ctx: JavaScriptParser.PostDecreaseExpressionContext) + /** + * Enter a parse tree produced by the {@code TypeofExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterTypeofExpression(_ ctx: JavaScriptParser.TypeofExpressionContext) + /** + * Exit a parse tree produced by the {@code TypeofExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitTypeofExpression(_ ctx: JavaScriptParser.TypeofExpressionContext) + /** + * Enter a parse tree produced by the {@code InstanceofExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterInstanceofExpression(_ ctx: JavaScriptParser.InstanceofExpressionContext) + /** + * Exit a parse tree produced by the {@code InstanceofExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitInstanceofExpression(_ ctx: JavaScriptParser.InstanceofExpressionContext) + /** + * Enter a parse tree produced by the {@code UnaryPlusExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterUnaryPlusExpression(_ ctx: JavaScriptParser.UnaryPlusExpressionContext) + /** + * Exit a parse tree produced by the {@code UnaryPlusExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitUnaryPlusExpression(_ ctx: JavaScriptParser.UnaryPlusExpressionContext) + /** + * Enter a parse tree produced by the {@code DeleteExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterDeleteExpression(_ ctx: JavaScriptParser.DeleteExpressionContext) + /** + * Exit a parse tree produced by the {@code DeleteExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitDeleteExpression(_ ctx: JavaScriptParser.DeleteExpressionContext) + /** + * Enter a parse tree produced by the {@code ImportExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterImportExpression(_ ctx: JavaScriptParser.ImportExpressionContext) + /** + * Exit a parse tree produced by the {@code ImportExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitImportExpression(_ ctx: JavaScriptParser.ImportExpressionContext) + /** + * Enter a parse tree produced by the {@code EqualityExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterEqualityExpression(_ ctx: JavaScriptParser.EqualityExpressionContext) + /** + * Exit a parse tree produced by the {@code EqualityExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitEqualityExpression(_ ctx: JavaScriptParser.EqualityExpressionContext) + /** + * Enter a parse tree produced by the {@code BitXOrExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterBitXOrExpression(_ ctx: JavaScriptParser.BitXOrExpressionContext) + /** + * Exit a parse tree produced by the {@code BitXOrExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitBitXOrExpression(_ ctx: JavaScriptParser.BitXOrExpressionContext) + /** + * Enter a parse tree produced by the {@code SuperExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterSuperExpression(_ ctx: JavaScriptParser.SuperExpressionContext) + /** + * Exit a parse tree produced by the {@code SuperExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitSuperExpression(_ ctx: JavaScriptParser.SuperExpressionContext) + /** + * Enter a parse tree produced by the {@code MultiplicativeExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterMultiplicativeExpression(_ ctx: JavaScriptParser.MultiplicativeExpressionContext) + /** + * Exit a parse tree produced by the {@code MultiplicativeExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitMultiplicativeExpression(_ ctx: JavaScriptParser.MultiplicativeExpressionContext) + /** + * Enter a parse tree produced by the {@code BitShiftExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterBitShiftExpression(_ ctx: JavaScriptParser.BitShiftExpressionContext) + /** + * Exit a parse tree produced by the {@code BitShiftExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitBitShiftExpression(_ ctx: JavaScriptParser.BitShiftExpressionContext) + /** + * Enter a parse tree produced by the {@code ParenthesizedExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterParenthesizedExpression(_ ctx: JavaScriptParser.ParenthesizedExpressionContext) + /** + * Exit a parse tree produced by the {@code ParenthesizedExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitParenthesizedExpression(_ ctx: JavaScriptParser.ParenthesizedExpressionContext) + /** + * Enter a parse tree produced by the {@code AdditiveExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterAdditiveExpression(_ ctx: JavaScriptParser.AdditiveExpressionContext) + /** + * Exit a parse tree produced by the {@code AdditiveExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitAdditiveExpression(_ ctx: JavaScriptParser.AdditiveExpressionContext) + /** + * Enter a parse tree produced by the {@code RelationalExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterRelationalExpression(_ ctx: JavaScriptParser.RelationalExpressionContext) + /** + * Exit a parse tree produced by the {@code RelationalExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitRelationalExpression(_ ctx: JavaScriptParser.RelationalExpressionContext) + /** + * Enter a parse tree produced by the {@code PostIncrementExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterPostIncrementExpression(_ ctx: JavaScriptParser.PostIncrementExpressionContext) + /** + * Exit a parse tree produced by the {@code PostIncrementExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitPostIncrementExpression(_ ctx: JavaScriptParser.PostIncrementExpressionContext) + /** + * Enter a parse tree produced by the {@code YieldExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterYieldExpression(_ ctx: JavaScriptParser.YieldExpressionContext) + /** + * Exit a parse tree produced by the {@code YieldExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitYieldExpression(_ ctx: JavaScriptParser.YieldExpressionContext) + /** + * Enter a parse tree produced by the {@code BitNotExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterBitNotExpression(_ ctx: JavaScriptParser.BitNotExpressionContext) + /** + * Exit a parse tree produced by the {@code BitNotExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitBitNotExpression(_ ctx: JavaScriptParser.BitNotExpressionContext) + /** + * Enter a parse tree produced by the {@code NewExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterNewExpression(_ ctx: JavaScriptParser.NewExpressionContext) + /** + * Exit a parse tree produced by the {@code NewExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitNewExpression(_ ctx: JavaScriptParser.NewExpressionContext) + /** + * Enter a parse tree produced by the {@code LiteralExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterLiteralExpression(_ ctx: JavaScriptParser.LiteralExpressionContext) + /** + * Exit a parse tree produced by the {@code LiteralExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitLiteralExpression(_ ctx: JavaScriptParser.LiteralExpressionContext) + /** + * Enter a parse tree produced by the {@code ArrayLiteralExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterArrayLiteralExpression(_ ctx: JavaScriptParser.ArrayLiteralExpressionContext) + /** + * Exit a parse tree produced by the {@code ArrayLiteralExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitArrayLiteralExpression(_ ctx: JavaScriptParser.ArrayLiteralExpressionContext) + /** + * Enter a parse tree produced by the {@code MemberDotExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterMemberDotExpression(_ ctx: JavaScriptParser.MemberDotExpressionContext) + /** + * Exit a parse tree produced by the {@code MemberDotExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitMemberDotExpression(_ ctx: JavaScriptParser.MemberDotExpressionContext) + /** + * Enter a parse tree produced by the {@code ClassExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterClassExpression(_ ctx: JavaScriptParser.ClassExpressionContext) + /** + * Exit a parse tree produced by the {@code ClassExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitClassExpression(_ ctx: JavaScriptParser.ClassExpressionContext) + /** + * Enter a parse tree produced by the {@code MemberIndexExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterMemberIndexExpression(_ ctx: JavaScriptParser.MemberIndexExpressionContext) + /** + * Exit a parse tree produced by the {@code MemberIndexExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitMemberIndexExpression(_ ctx: JavaScriptParser.MemberIndexExpressionContext) + /** + * Enter a parse tree produced by the {@code IdentifierExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterIdentifierExpression(_ ctx: JavaScriptParser.IdentifierExpressionContext) + /** + * Exit a parse tree produced by the {@code IdentifierExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitIdentifierExpression(_ ctx: JavaScriptParser.IdentifierExpressionContext) + /** + * Enter a parse tree produced by the {@code BitAndExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterBitAndExpression(_ ctx: JavaScriptParser.BitAndExpressionContext) + /** + * Exit a parse tree produced by the {@code BitAndExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitBitAndExpression(_ ctx: JavaScriptParser.BitAndExpressionContext) + /** + * Enter a parse tree produced by the {@code BitOrExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterBitOrExpression(_ ctx: JavaScriptParser.BitOrExpressionContext) + /** + * Exit a parse tree produced by the {@code BitOrExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitBitOrExpression(_ ctx: JavaScriptParser.BitOrExpressionContext) + /** + * Enter a parse tree produced by the {@code AssignmentOperatorExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterAssignmentOperatorExpression(_ ctx: JavaScriptParser.AssignmentOperatorExpressionContext) + /** + * Exit a parse tree produced by the {@code AssignmentOperatorExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitAssignmentOperatorExpression(_ ctx: JavaScriptParser.AssignmentOperatorExpressionContext) + /** + * Enter a parse tree produced by the {@code VoidExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterVoidExpression(_ ctx: JavaScriptParser.VoidExpressionContext) + /** + * Exit a parse tree produced by the {@code VoidExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitVoidExpression(_ ctx: JavaScriptParser.VoidExpressionContext) + /** + * Enter a parse tree produced by the {@code CoalesceExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func enterCoalesceExpression(_ ctx: JavaScriptParser.CoalesceExpressionContext) + /** + * Exit a parse tree produced by the {@code CoalesceExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + */ + func exitCoalesceExpression(_ ctx: JavaScriptParser.CoalesceExpressionContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#assignable}. + - Parameters: + - ctx: the parse tree + */ + func enterAssignable(_ ctx: JavaScriptParser.AssignableContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#assignable}. + - Parameters: + - ctx: the parse tree + */ + func exitAssignable(_ ctx: JavaScriptParser.AssignableContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#objectLiteral}. + - Parameters: + - ctx: the parse tree + */ + func enterObjectLiteral(_ ctx: JavaScriptParser.ObjectLiteralContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#objectLiteral}. + - Parameters: + - ctx: the parse tree + */ + func exitObjectLiteral(_ ctx: JavaScriptParser.ObjectLiteralContext) + /** + * Enter a parse tree produced by the {@code FunctionDecl} + * labeled alternative in {@link JavaScriptParser#anonymousFunction}. + - Parameters: + - ctx: the parse tree + */ + func enterFunctionDecl(_ ctx: JavaScriptParser.FunctionDeclContext) + /** + * Exit a parse tree produced by the {@code FunctionDecl} + * labeled alternative in {@link JavaScriptParser#anonymousFunction}. + - Parameters: + - ctx: the parse tree + */ + func exitFunctionDecl(_ ctx: JavaScriptParser.FunctionDeclContext) + /** + * Enter a parse tree produced by the {@code AnonymousFunctionDecl} + * labeled alternative in {@link JavaScriptParser#anonymousFunction}. + - Parameters: + - ctx: the parse tree + */ + func enterAnonymousFunctionDecl(_ ctx: JavaScriptParser.AnonymousFunctionDeclContext) + /** + * Exit a parse tree produced by the {@code AnonymousFunctionDecl} + * labeled alternative in {@link JavaScriptParser#anonymousFunction}. + - Parameters: + - ctx: the parse tree + */ + func exitAnonymousFunctionDecl(_ ctx: JavaScriptParser.AnonymousFunctionDeclContext) + /** + * Enter a parse tree produced by the {@code ArrowFunction} + * labeled alternative in {@link JavaScriptParser#anonymousFunction}. + - Parameters: + - ctx: the parse tree + */ + func enterArrowFunction(_ ctx: JavaScriptParser.ArrowFunctionContext) + /** + * Exit a parse tree produced by the {@code ArrowFunction} + * labeled alternative in {@link JavaScriptParser#anonymousFunction}. + - Parameters: + - ctx: the parse tree + */ + func exitArrowFunction(_ ctx: JavaScriptParser.ArrowFunctionContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#arrowFunctionParameters}. + - Parameters: + - ctx: the parse tree + */ + func enterArrowFunctionParameters(_ ctx: JavaScriptParser.ArrowFunctionParametersContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#arrowFunctionParameters}. + - Parameters: + - ctx: the parse tree + */ + func exitArrowFunctionParameters(_ ctx: JavaScriptParser.ArrowFunctionParametersContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#arrowFunctionBody}. + - Parameters: + - ctx: the parse tree + */ + func enterArrowFunctionBody(_ ctx: JavaScriptParser.ArrowFunctionBodyContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#arrowFunctionBody}. + - Parameters: + - ctx: the parse tree + */ + func exitArrowFunctionBody(_ ctx: JavaScriptParser.ArrowFunctionBodyContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#assignmentOperator}. + - Parameters: + - ctx: the parse tree + */ + func enterAssignmentOperator(_ ctx: JavaScriptParser.AssignmentOperatorContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#assignmentOperator}. + - Parameters: + - ctx: the parse tree + */ + func exitAssignmentOperator(_ ctx: JavaScriptParser.AssignmentOperatorContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#literal}. + - Parameters: + - ctx: the parse tree + */ + func enterLiteral(_ ctx: JavaScriptParser.LiteralContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#literal}. + - Parameters: + - ctx: the parse tree + */ + func exitLiteral(_ ctx: JavaScriptParser.LiteralContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#templateStringLiteral}. + - Parameters: + - ctx: the parse tree + */ + func enterTemplateStringLiteral(_ ctx: JavaScriptParser.TemplateStringLiteralContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#templateStringLiteral}. + - Parameters: + - ctx: the parse tree + */ + func exitTemplateStringLiteral(_ ctx: JavaScriptParser.TemplateStringLiteralContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#templateStringAtom}. + - Parameters: + - ctx: the parse tree + */ + func enterTemplateStringAtom(_ ctx: JavaScriptParser.TemplateStringAtomContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#templateStringAtom}. + - Parameters: + - ctx: the parse tree + */ + func exitTemplateStringAtom(_ ctx: JavaScriptParser.TemplateStringAtomContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#numericLiteral}. + - Parameters: + - ctx: the parse tree + */ + func enterNumericLiteral(_ ctx: JavaScriptParser.NumericLiteralContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#numericLiteral}. + - Parameters: + - ctx: the parse tree + */ + func exitNumericLiteral(_ ctx: JavaScriptParser.NumericLiteralContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#bigintLiteral}. + - Parameters: + - ctx: the parse tree + */ + func enterBigintLiteral(_ ctx: JavaScriptParser.BigintLiteralContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#bigintLiteral}. + - Parameters: + - ctx: the parse tree + */ + func exitBigintLiteral(_ ctx: JavaScriptParser.BigintLiteralContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#getter}. + - Parameters: + - ctx: the parse tree + */ + func enterGetter(_ ctx: JavaScriptParser.GetterContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#getter}. + - Parameters: + - ctx: the parse tree + */ + func exitGetter(_ ctx: JavaScriptParser.GetterContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#setter}. + - Parameters: + - ctx: the parse tree + */ + func enterSetter(_ ctx: JavaScriptParser.SetterContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#setter}. + - Parameters: + - ctx: the parse tree + */ + func exitSetter(_ ctx: JavaScriptParser.SetterContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#identifierName}. + - Parameters: + - ctx: the parse tree + */ + func enterIdentifierName(_ ctx: JavaScriptParser.IdentifierNameContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#identifierName}. + - Parameters: + - ctx: the parse tree + */ + func exitIdentifierName(_ ctx: JavaScriptParser.IdentifierNameContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#identifier}. + - Parameters: + - ctx: the parse tree + */ + func enterIdentifier(_ ctx: JavaScriptParser.IdentifierContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#identifier}. + - Parameters: + - ctx: the parse tree + */ + func exitIdentifier(_ ctx: JavaScriptParser.IdentifierContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#reservedWord}. + - Parameters: + - ctx: the parse tree + */ + func enterReservedWord(_ ctx: JavaScriptParser.ReservedWordContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#reservedWord}. + - Parameters: + - ctx: the parse tree + */ + func exitReservedWord(_ ctx: JavaScriptParser.ReservedWordContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#keyword}. + - Parameters: + - ctx: the parse tree + */ + func enterKeyword(_ ctx: JavaScriptParser.KeywordContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#keyword}. + - Parameters: + - ctx: the parse tree + */ + func exitKeyword(_ ctx: JavaScriptParser.KeywordContext) + /** + * Enter a parse tree produced by {@link JavaScriptParser#let_}. + - Parameters: + - ctx: the parse tree + */ + func enterLet_(_ ctx: JavaScriptParser.Let_Context) + /** + * Exit a parse tree produced by {@link JavaScriptParser#let_}. + - Parameters: + - ctx: the parse tree + */ + func exitLet_(_ ctx: JavaScriptParser.Let_Context) + /** + * Enter a parse tree produced by {@link JavaScriptParser#eos}. + - Parameters: + - ctx: the parse tree + */ + func enterEos(_ ctx: JavaScriptParser.EosContext) + /** + * Exit a parse tree produced by {@link JavaScriptParser#eos}. + - Parameters: + - ctx: the parse tree + */ + func exitEos(_ ctx: JavaScriptParser.EosContext) +} \ No newline at end of file diff --git a/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserVisitor.swift b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserVisitor.swift new file mode 100644 index 000000000..aae2c7617 --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParserAntlr/JavaScriptParserVisitor.swift @@ -0,0 +1,1425 @@ +// Generated from java-escape by ANTLR 4.11.1 +import Antlr4 + +/** + * This interface defines a complete generic visitor for a parse tree produced + * by {@link JavaScriptParser}. + * + * @param The return type of the visit operation. Use {@link Void} for + * operations with no return type. + */ +open class JavaScriptParserVisitor: ParseTreeVisitor { + /** + * Visit a parse tree produced by {@link JavaScriptParser#program}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitProgram(_ ctx: JavaScriptParser.ProgramContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#sourceElement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitSourceElement(_ ctx: JavaScriptParser.SourceElementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#statement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitStatement(_ ctx: JavaScriptParser.StatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#block}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitBlock(_ ctx: JavaScriptParser.BlockContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#statementList}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitStatementList(_ ctx: JavaScriptParser.StatementListContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#importStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitImportStatement(_ ctx: JavaScriptParser.ImportStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#importFromBlock}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitImportFromBlock(_ ctx: JavaScriptParser.ImportFromBlockContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#moduleItems}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitModuleItems(_ ctx: JavaScriptParser.ModuleItemsContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#importDefault}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitImportDefault(_ ctx: JavaScriptParser.ImportDefaultContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#importNamespace}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitImportNamespace(_ ctx: JavaScriptParser.ImportNamespaceContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#importFrom}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitImportFrom(_ ctx: JavaScriptParser.ImportFromContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#aliasName}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitAliasName(_ ctx: JavaScriptParser.AliasNameContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ExportDeclaration} + * labeled alternative in {@link JavaScriptParser#exportStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitExportDeclaration(_ ctx: JavaScriptParser.ExportDeclarationContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ExportDefaultDeclaration} + * labeled alternative in {@link JavaScriptParser#exportStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitExportDefaultDeclaration(_ ctx: JavaScriptParser.ExportDefaultDeclarationContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#exportFromBlock}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitExportFromBlock(_ ctx: JavaScriptParser.ExportFromBlockContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#declaration}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitDeclaration(_ ctx: JavaScriptParser.DeclarationContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#variableStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitVariableStatement(_ ctx: JavaScriptParser.VariableStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#variableDeclarationList}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitVariableDeclarationList(_ ctx: JavaScriptParser.VariableDeclarationListContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#variableDeclaration}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitVariableDeclaration(_ ctx: JavaScriptParser.VariableDeclarationContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#emptyStatement_}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitEmptyStatement_(_ ctx: JavaScriptParser.EmptyStatement_Context) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#expressionStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitExpressionStatement(_ ctx: JavaScriptParser.ExpressionStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#ifStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitIfStatement(_ ctx: JavaScriptParser.IfStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code DoStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitDoStatement(_ ctx: JavaScriptParser.DoStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code WhileStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitWhileStatement(_ ctx: JavaScriptParser.WhileStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ForStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitForStatement(_ ctx: JavaScriptParser.ForStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ForInStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitForInStatement(_ ctx: JavaScriptParser.ForInStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ForOfStatement} + * labeled alternative in {@link JavaScriptParser#iterationStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitForOfStatement(_ ctx: JavaScriptParser.ForOfStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#varModifier}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitVarModifier(_ ctx: JavaScriptParser.VarModifierContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#continueStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitContinueStatement(_ ctx: JavaScriptParser.ContinueStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#breakStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitBreakStatement(_ ctx: JavaScriptParser.BreakStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#returnStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitReturnStatement(_ ctx: JavaScriptParser.ReturnStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#yieldStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitYieldStatement(_ ctx: JavaScriptParser.YieldStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#withStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitWithStatement(_ ctx: JavaScriptParser.WithStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#switchStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitSwitchStatement(_ ctx: JavaScriptParser.SwitchStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#caseBlock}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitCaseBlock(_ ctx: JavaScriptParser.CaseBlockContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#caseClauses}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitCaseClauses(_ ctx: JavaScriptParser.CaseClausesContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#caseClause}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitCaseClause(_ ctx: JavaScriptParser.CaseClauseContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#defaultClause}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitDefaultClause(_ ctx: JavaScriptParser.DefaultClauseContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#labelledStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitLabelledStatement(_ ctx: JavaScriptParser.LabelledStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#throwStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitThrowStatement(_ ctx: JavaScriptParser.ThrowStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#tryStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitTryStatement(_ ctx: JavaScriptParser.TryStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#catchProduction}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitCatchProduction(_ ctx: JavaScriptParser.CatchProductionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#finallyProduction}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitFinallyProduction(_ ctx: JavaScriptParser.FinallyProductionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#debuggerStatement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitDebuggerStatement(_ ctx: JavaScriptParser.DebuggerStatementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#functionDeclaration}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitFunctionDeclaration(_ ctx: JavaScriptParser.FunctionDeclarationContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#classDeclaration}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitClassDeclaration(_ ctx: JavaScriptParser.ClassDeclarationContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#classTail}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitClassTail(_ ctx: JavaScriptParser.ClassTailContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#classElement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitClassElement(_ ctx: JavaScriptParser.ClassElementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#methodDefinition}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitMethodDefinition(_ ctx: JavaScriptParser.MethodDefinitionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#formalParameterList}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitFormalParameterList(_ ctx: JavaScriptParser.FormalParameterListContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#formalParameterArg}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitFormalParameterArg(_ ctx: JavaScriptParser.FormalParameterArgContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#lastFormalParameterArg}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitLastFormalParameterArg(_ ctx: JavaScriptParser.LastFormalParameterArgContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#functionBody}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitFunctionBody(_ ctx: JavaScriptParser.FunctionBodyContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#sourceElements}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitSourceElements(_ ctx: JavaScriptParser.SourceElementsContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#arrayLiteral}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitArrayLiteral(_ ctx: JavaScriptParser.ArrayLiteralContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#elementList}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitElementList(_ ctx: JavaScriptParser.ElementListContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#arrayElement}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitArrayElement(_ ctx: JavaScriptParser.ArrayElementContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code PropertyExpressionAssignment} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitPropertyExpressionAssignment(_ ctx: JavaScriptParser.PropertyExpressionAssignmentContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ComputedPropertyExpressionAssignment} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitComputedPropertyExpressionAssignment(_ ctx: JavaScriptParser.ComputedPropertyExpressionAssignmentContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code FunctionProperty} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitFunctionProperty(_ ctx: JavaScriptParser.FunctionPropertyContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code PropertyGetter} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitPropertyGetter(_ ctx: JavaScriptParser.PropertyGetterContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code PropertySetter} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitPropertySetter(_ ctx: JavaScriptParser.PropertySetterContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code PropertyShorthand} + * labeled alternative in {@link JavaScriptParser#propertyAssignment}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitPropertyShorthand(_ ctx: JavaScriptParser.PropertyShorthandContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#propertyName}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitPropertyName(_ ctx: JavaScriptParser.PropertyNameContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#arguments}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitArguments(_ ctx: JavaScriptParser.ArgumentsContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#argument}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitArgument(_ ctx: JavaScriptParser.ArgumentContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#expressionSequence}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitExpressionSequence(_ ctx: JavaScriptParser.ExpressionSequenceContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code TemplateStringExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitTemplateStringExpression(_ ctx: JavaScriptParser.TemplateStringExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code TernaryExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitTernaryExpression(_ ctx: JavaScriptParser.TernaryExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code LogicalAndExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitLogicalAndExpression(_ ctx: JavaScriptParser.LogicalAndExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code PowerExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitPowerExpression(_ ctx: JavaScriptParser.PowerExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code PreIncrementExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitPreIncrementExpression(_ ctx: JavaScriptParser.PreIncrementExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ObjectLiteralExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitObjectLiteralExpression(_ ctx: JavaScriptParser.ObjectLiteralExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code MetaExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitMetaExpression(_ ctx: JavaScriptParser.MetaExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code InExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitInExpression(_ ctx: JavaScriptParser.InExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code LogicalOrExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitLogicalOrExpression(_ ctx: JavaScriptParser.LogicalOrExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code OptionalChainExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitOptionalChainExpression(_ ctx: JavaScriptParser.OptionalChainExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code NotExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitNotExpression(_ ctx: JavaScriptParser.NotExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code PreDecreaseExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitPreDecreaseExpression(_ ctx: JavaScriptParser.PreDecreaseExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ArgumentsExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitArgumentsExpression(_ ctx: JavaScriptParser.ArgumentsExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code AwaitExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitAwaitExpression(_ ctx: JavaScriptParser.AwaitExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ThisExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitThisExpression(_ ctx: JavaScriptParser.ThisExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code FunctionExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitFunctionExpression(_ ctx: JavaScriptParser.FunctionExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code UnaryMinusExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitUnaryMinusExpression(_ ctx: JavaScriptParser.UnaryMinusExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code AssignmentExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitAssignmentExpression(_ ctx: JavaScriptParser.AssignmentExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code PostDecreaseExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitPostDecreaseExpression(_ ctx: JavaScriptParser.PostDecreaseExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code TypeofExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitTypeofExpression(_ ctx: JavaScriptParser.TypeofExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code InstanceofExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitInstanceofExpression(_ ctx: JavaScriptParser.InstanceofExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code UnaryPlusExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitUnaryPlusExpression(_ ctx: JavaScriptParser.UnaryPlusExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code DeleteExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitDeleteExpression(_ ctx: JavaScriptParser.DeleteExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ImportExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitImportExpression(_ ctx: JavaScriptParser.ImportExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code EqualityExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitEqualityExpression(_ ctx: JavaScriptParser.EqualityExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code BitXOrExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitBitXOrExpression(_ ctx: JavaScriptParser.BitXOrExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code SuperExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitSuperExpression(_ ctx: JavaScriptParser.SuperExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code MultiplicativeExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitMultiplicativeExpression(_ ctx: JavaScriptParser.MultiplicativeExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code BitShiftExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitBitShiftExpression(_ ctx: JavaScriptParser.BitShiftExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ParenthesizedExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitParenthesizedExpression(_ ctx: JavaScriptParser.ParenthesizedExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code AdditiveExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitAdditiveExpression(_ ctx: JavaScriptParser.AdditiveExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code RelationalExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitRelationalExpression(_ ctx: JavaScriptParser.RelationalExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code PostIncrementExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitPostIncrementExpression(_ ctx: JavaScriptParser.PostIncrementExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code YieldExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitYieldExpression(_ ctx: JavaScriptParser.YieldExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code BitNotExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitBitNotExpression(_ ctx: JavaScriptParser.BitNotExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code NewExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitNewExpression(_ ctx: JavaScriptParser.NewExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code LiteralExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitLiteralExpression(_ ctx: JavaScriptParser.LiteralExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ArrayLiteralExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitArrayLiteralExpression(_ ctx: JavaScriptParser.ArrayLiteralExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code MemberDotExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitMemberDotExpression(_ ctx: JavaScriptParser.MemberDotExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ClassExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitClassExpression(_ ctx: JavaScriptParser.ClassExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code MemberIndexExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitMemberIndexExpression(_ ctx: JavaScriptParser.MemberIndexExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code IdentifierExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitIdentifierExpression(_ ctx: JavaScriptParser.IdentifierExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code BitAndExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitBitAndExpression(_ ctx: JavaScriptParser.BitAndExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code BitOrExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitBitOrExpression(_ ctx: JavaScriptParser.BitOrExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code AssignmentOperatorExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitAssignmentOperatorExpression(_ ctx: JavaScriptParser.AssignmentOperatorExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code VoidExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitVoidExpression(_ ctx: JavaScriptParser.VoidExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code CoalesceExpression} + * labeled alternative in {@link JavaScriptParser#singleExpression}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitCoalesceExpression(_ ctx: JavaScriptParser.CoalesceExpressionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#assignable}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitAssignable(_ ctx: JavaScriptParser.AssignableContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#objectLiteral}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitObjectLiteral(_ ctx: JavaScriptParser.ObjectLiteralContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code FunctionDecl} + * labeled alternative in {@link JavaScriptParser#anonymousFunction}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitFunctionDecl(_ ctx: JavaScriptParser.FunctionDeclContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code AnonymousFunctionDecl} + * labeled alternative in {@link JavaScriptParser#anonymousFunction}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitAnonymousFunctionDecl(_ ctx: JavaScriptParser.AnonymousFunctionDeclContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by the {@code ArrowFunction} + * labeled alternative in {@link JavaScriptParser#anonymousFunction}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitArrowFunction(_ ctx: JavaScriptParser.ArrowFunctionContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#arrowFunctionParameters}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitArrowFunctionParameters(_ ctx: JavaScriptParser.ArrowFunctionParametersContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#arrowFunctionBody}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitArrowFunctionBody(_ ctx: JavaScriptParser.ArrowFunctionBodyContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#assignmentOperator}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitAssignmentOperator(_ ctx: JavaScriptParser.AssignmentOperatorContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#literal}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitLiteral(_ ctx: JavaScriptParser.LiteralContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#templateStringLiteral}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitTemplateStringLiteral(_ ctx: JavaScriptParser.TemplateStringLiteralContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#templateStringAtom}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitTemplateStringAtom(_ ctx: JavaScriptParser.TemplateStringAtomContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#numericLiteral}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitNumericLiteral(_ ctx: JavaScriptParser.NumericLiteralContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#bigintLiteral}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitBigintLiteral(_ ctx: JavaScriptParser.BigintLiteralContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#getter}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitGetter(_ ctx: JavaScriptParser.GetterContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#setter}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitSetter(_ ctx: JavaScriptParser.SetterContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#identifierName}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitIdentifierName(_ ctx: JavaScriptParser.IdentifierNameContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#identifier}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitIdentifier(_ ctx: JavaScriptParser.IdentifierContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#reservedWord}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitReservedWord(_ ctx: JavaScriptParser.ReservedWordContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#keyword}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitKeyword(_ ctx: JavaScriptParser.KeywordContext) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#let_}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitLet_(_ ctx: JavaScriptParser.Let_Context) -> T { + fatalError(#function + " must be overridden") + } + + /** + * Visit a parse tree produced by {@link JavaScriptParser#eos}. + - Parameters: + - ctx: the parse tree + - returns: the visitor result + */ + open func visitEos(_ ctx: JavaScriptParser.EosContext) -> T { + fatalError(#function + " must be overridden") + } + +} \ No newline at end of file diff --git a/Sources/Frontend/JavaScript/JsParserAntlr/shim.swift b/Sources/Frontend/JavaScript/JsParserAntlr/shim.swift new file mode 100644 index 000000000..3be91a86f --- /dev/null +++ b/Sources/Frontend/JavaScript/JsParserAntlr/shim.swift @@ -0,0 +1,5 @@ +import AntlrCommons + +typealias DFAParser = AntlrCommons.DFAParser +typealias DFALexer = AntlrCommons.DFALexer +typealias ATNConfigSetParser = AntlrCommons.ATNConfigSetParser diff --git a/Sources/Frontend/Objective-C/ObjectiveCFrontend/ObjectiveCParserCache.swift b/Sources/Frontend/Objective-C/ObjectiveCFrontend/ObjectiveCParserCache.swift index d8f7ded65..82abc21f0 100644 --- a/Sources/Frontend/Objective-C/ObjectiveCFrontend/ObjectiveCParserCache.swift +++ b/Sources/Frontend/Objective-C/ObjectiveCFrontend/ObjectiveCParserCache.swift @@ -24,37 +24,41 @@ public class ObjectiveCParserCache { self.sourcePreprocessors = sourcePreprocessors self.antlrSettings = antlrSettings } - + public func replaceCachedParsedTree(file: URL, parser: ObjcParser) { cache[file] = parser } public func loadParsedTree(input: InputSource) throws -> ObjcParser { - let url = URL(fileURLWithPath: input.sourcePath()) - - if let parser = cache[url] { + return try _cache.modifyingValue { cache in + let url = URL(fileURLWithPath: input.sourcePath()) + + if let parser = cache[url] { + try parser.parse() + return parser + } + + let processedSource = try applyPreprocessors(input: input, preprocessors: sourcePreprocessors) + + let state = parserStatePool.pull() + let parser = ObjcParser( + string: processedSource, + fileName: url.path, + state: state + ) + parser.antlrSettings = antlrSettings try parser.parse() + parserStatePool.repool(state) + cache[url] = parser return parser } - - let processedSource = try applyPreprocessors(input: input, preprocessors: sourcePreprocessors) - - let state = parserStatePool.pull() - let parser = ObjcParser(string: processedSource, - fileName: url.path, - state: state) - parser.antlrSettings = antlrSettings - try parser.parse() - parserStatePool.repool(state) - cache[url] = parser - return parser } - + private func applyPreprocessors(input: InputSource, preprocessors: [SourcePreprocessor]) throws -> String { let src = try input.loadSource().fetchSource() - + let context = _PreprocessingContext(filePath: input.sourcePath()) - + return preprocessors.reduce(src) { $1.preprocess(source: $0, context: context) } diff --git a/Sources/SwiftRewriter/JavaScript/JavaScriptCommand.swift b/Sources/SwiftRewriter/JavaScript/JavaScriptCommand.swift new file mode 100644 index 000000000..e8fe75144 --- /dev/null +++ b/Sources/SwiftRewriter/JavaScript/JavaScriptCommand.swift @@ -0,0 +1,273 @@ +import ArgumentParser +import Foundation +import Console +import JavaScriptFrontend +import SwiftRewriterCLI + +struct JavaScriptCommand: ParsableCommand { + static let configuration = CommandConfiguration( + commandName: "js", + abstract: "JavaScript code conversion frontend [EXPERIMENTAL]", + discussion: """ + Converts a set of JavaScript (.js) files, or, if not provided, starts an \ + interactive menu to navigate the file system and choose files to convert. + """, + subcommands: [Files.self, Path.self, InteractiveMode.self], + defaultSubcommand: InteractiveMode.self + ) + + func run() throws { + + } +} + +extension JavaScriptCommand { + struct Options: ParsableArguments { + @OptionGroup() + var globalOptions: GlobalOptions + + @Option( + help: """ + Provides a target file path to diagnose during rewriting. + After each intention pass and after expression passes, the file is written + to the standard output for diagnosing rewriting issues. + """ + ) + var diagnoseFile: String? + + @Flag( + name: .shortAndLong, + help: """ + Follows #import declarations in files in order to parse other relevant files. + Ignored when converting from standard input. + """ + ) + var followImports: Bool = false + + @Flag( + name: .long, + help: """ + Whether to emit JavaScript object declarations wrapped in a JavaScriptObject \ + declaration. + If specified, this will also emit a new file along the output for \ + the JavaScriptObject type definition. + """ + ) + var emitJavaScriptObject: Bool = false + + @Flag( + name: .long, + help: """ + Whether to spend time attempting to deduce types of local variables \ + and parameter types for functions. + Specifying this option can greatly increase time taken during conversion. + """ + ) + var deduceTypes: Bool = false + } +} + +extension JavaScriptCommand { + struct Files: ParsableCommand { + static let configuration = CommandConfiguration( + discussion: "Converts one or more .js file(s) to Swift." + ) + + @Argument(help: "JavaScript file(s) to convert.") + var files: [String] + + @OptionGroup() + var options: Options + + func run() throws { + let rewriter = try makeRewriterService(options) + + let fileProvider = FileDiskProvider() + let fileCollectionStep = JavaScriptFileCollectionStep(fileProvider: fileProvider) + let delegate = JavaScriptImportDirectiveFileCollectionDelegate( + parserCache: rewriter.parserCache, + fileProvider: fileProvider + ) + + if options.followImports { + fileCollectionStep.delegate = delegate + } + if options.globalOptions.verbose { + fileCollectionStep.listener = JavaScriptStdoutFileCollectionStepListener() + } + try withExtendedLifetime(delegate) { + for fileUrl in files { + try fileCollectionStep.addFile( + fromUrl: URL(fileURLWithPath: fileUrl), + isPrimary: true + ) + } + } + + try rewriter.rewrite(files: fileCollectionStep.files) + } + } +} + +extension JavaScriptCommand { + struct Path: ParsableCommand { + static let configuration = CommandConfiguration( + discussion: """ + Examines a path and collects all .js files to convert, before presenting \ + a prompt to confirm conversion of files. + """ + ) + + @Argument(help: "Path to the project to inspect") + var path: String + + @Option( + name: .shortAndLong, + help: """ + Provides a file pattern for excluding matches from the initial JavaScript \ + files search. Pattern is applied to the full path. + """ + ) + var excludePattern: String? + + @Option( + name: .shortAndLong, + help: """ + Provides a pattern for including matches from the initial JavaScript files \ + search. Pattern is applied to the full path. --exclude-pattern takes \ + priority over --include-pattern matches. + """ + ) + var includePattern: String? + + @Flag( + name: .shortAndLong, + help: "Skips asking for confirmation prior to parsing." + ) + var skipConfirm: Bool = false + + @Flag( + name: .shortAndLong, + help: "Overwrites any .swift file with a matching output name on the target path." + ) + var overwrite: Bool = false + + @OptionGroup() + var options: Options + + func run() throws { + let rewriter = try makeRewriterService(options) + let frontend = JavaScriptFrontendImpl(rewriterService: rewriter) + let fileProvider = FileDiskProvider() + + let console = Console() + let menu = Menu( + rewriterFrontend: frontend, + fileProvider: fileProvider, + console: console + ) + + let options: SuggestConversionInterface.Options = .init( + overwrite: overwrite, + skipConfirm: skipConfirm, + followImports: self.options.followImports, + excludePattern: excludePattern, + includePattern: includePattern, + verbose: self.options.globalOptions.verbose + ) + + let interface = SuggestConversionInterface( + rewriterFrontend: frontend, + fileProvider: fileProvider + ) + interface.searchAndShowConfirm( + in: menu, + url: URL(fileURLWithPath: path).standardizedFileURL, + options: options + ) + } + } +} + +extension JavaScriptCommand { + struct InteractiveMode: ParsableCommand { + @OptionGroup() + var options: Options + + func run() throws { + let colorize = options.globalOptions.colorize + let settings = try makeSettings(options) + let fileProvider = FileDiskProvider() + + let output = StdoutWriterOutput(colorize: colorize) + let service = JavaScriptSwiftRewriterServiceImpl(output: output, settings: settings) + let frontend = JavaScriptFrontendImpl(rewriterService: service) + + // Detect terminal + if isatty(fileno(stdin)) != 0 { + let console = Console() + let menu = Menu(rewriterFrontend: frontend, fileProvider: fileProvider, console: console) + + menu.main() + } else { + // If not invoked by a terminal, produce an output based on the + // standard input + + output.signalEndOfFiles = false + + let inputData = FileHandle.standardInput.availableData + let inputString = String(decoding: inputData, as: UTF8.self) + + let input = SingleInputProvider(code: inputString, isPrimary: true, fileName: "input.js") + + try service.rewrite(inputs: [input]) + } + } + } + + struct SwiftRewriterError: Error { + var description: String + } +} + +private func makeRewriterService(_ options: JavaScriptCommand.Options) throws -> JavaScriptSwiftRewriterService { + let colorize = options.globalOptions.colorize + let target = options.globalOptions.target ?? .filedisk + let settings = try makeSettings(options) + + let rewriter: JavaScriptSwiftRewriterService + + switch target { + case .filedisk: + rewriter = JavaScriptSwiftRewriterServiceImpl.fileDisk( + settings: settings + ) + case .stdout: + rewriter = JavaScriptSwiftRewriterServiceImpl.terminal( + settings: settings, + colorize: colorize + ) + } + + return rewriter +} + +private func makeSettings(_ options: JavaScriptCommand.Options) throws -> JavaScriptSwiftRewriterServiceImpl.Settings { + var settings = JavaScriptSwiftRewriterServiceImpl.Settings() + + settings.rewriter.verbose = options.globalOptions.verbose + settings.rewriter.diagnoseFiles = options.diagnoseFile.map { [$0] } ?? [] + settings.rewriter.numThreads = options.globalOptions.numThreads ?? OperationQueue.defaultMaxConcurrentOperationCount + settings.astWriter.outputExpressionTypes = options.globalOptions.printExpressionTypes + settings.astWriter.printIntentionHistory = options.globalOptions.printTracingHistory + settings.astWriter.format = try options.globalOptions.computeFormatterMode() + settings.rewriter.forceUseLLPrediction = options.globalOptions.forceLl + settings.rewriter.emitJavaScriptObject = options.emitJavaScriptObject + settings.rewriter.deduceTypes = options.deduceTypes + + if options.globalOptions.printCallGraph { + settings.rewriter.stageDiagnostics.append(.callGraph) + } + + return settings +} diff --git a/Sources/SwiftRewriter/JavaScript/JavaScriptFrontendImpl.swift b/Sources/SwiftRewriter/JavaScript/JavaScriptFrontendImpl.swift new file mode 100644 index 000000000..5c7ef17cc --- /dev/null +++ b/Sources/SwiftRewriter/JavaScript/JavaScriptFrontendImpl.swift @@ -0,0 +1,48 @@ +import Foundation +import SwiftRewriterLib +import JavaScriptFrontend +import SwiftRewriterCLI + +class JavaScriptFrontendImpl: SwiftRewriterFrontend { + private let rewriterService: JavaScriptSwiftRewriterService + + let name: String = "JavaScript" + + init(rewriterService: JavaScriptSwiftRewriterService) { + self.rewriterService = rewriterService + } + + func collectFiles( + from directory: URL, + fileProvider: FileProvider, + options: SwiftRewriterFrontendFileCollectionOptions + ) throws -> [DiskInputFile] { + + let fileCollectionStep = JavaScriptFileCollectionStep(fileProvider: fileProvider) + let importFileDelegate = JavaScriptImportDirectiveFileCollectionDelegate( + parserCache: rewriterService.parserCache, + fileProvider: fileProvider + ) + if options.followImports { + fileCollectionStep.delegate = importFileDelegate + } + if options.verbose { + fileCollectionStep.listener = JavaScriptStdoutFileCollectionStepListener() + } + + try withExtendedLifetime(importFileDelegate) { + try fileCollectionStep.addFromDirectory( + directory, + recursive: true, + includePattern: options.includePattern, + excludePattern: options.excludePattern + ) + } + + return fileCollectionStep.files + } + + func makeRewriterService() -> SwiftRewriterService { + rewriterService + } +} diff --git a/Sources/SwiftRewriter/JavaScript/JavaScriptStdoutFileCollectionStepListener.swift b/Sources/SwiftRewriter/JavaScript/JavaScriptStdoutFileCollectionStepListener.swift new file mode 100644 index 000000000..f0dbe0037 --- /dev/null +++ b/Sources/SwiftRewriter/JavaScript/JavaScriptStdoutFileCollectionStepListener.swift @@ -0,0 +1,14 @@ +import Foundation +import Console +import JavaScriptFrontend + +class JavaScriptStdoutFileCollectionStepListener: JavaScriptFileCollectionStepListener { + func javaScriptFileCollectionStep( + _ collectionStep: JavaScriptFileCollectionStep, + didAddReferencedFile referencedUrl: URL, + forInputFile inputFile: DiskInputFile + ) { + + print("Found referenced file \(referencedUrl.lastPathComponent) from input file \(inputFile.url.lastPathComponent)") + } +} diff --git a/Sources/SwiftRewriter/JavaScript/JavaScriptSwiftRewriterServiceImpl.swift b/Sources/SwiftRewriter/JavaScript/JavaScriptSwiftRewriterServiceImpl.swift new file mode 100644 index 000000000..b1ab38b18 --- /dev/null +++ b/Sources/SwiftRewriter/JavaScript/JavaScriptSwiftRewriterServiceImpl.swift @@ -0,0 +1,91 @@ +import Foundation +import AntlrCommons +import JavaScriptFrontend + +public final class JavaScriptSwiftRewriterServiceImpl: JavaScriptSwiftRewriterService { + public static func fileDisk(settings: Settings) -> JavaScriptSwiftRewriterService { + Self( + output: FileDiskWriterOutput(), + settings: settings + ) + } + + public static func terminal(settings: Settings, colorize: Bool) -> JavaScriptSwiftRewriterService { + Self( + output: StdoutWriterOutput(colorize: colorize), + settings: settings + ) + } + + let output: WriterOutput + let settings: Settings + let preprocessors: [SourcePreprocessor] = [QuickSpecPreprocessor()] + let parserStatePool: JsParserStatePool + + public var parserCache: JavaScriptParserCache + + public init(output: WriterOutput, settings: Settings) { + let antlrSettings = AntlrSettings(forceUseLLPrediction: settings.rewriter.forceUseLLPrediction) + + parserStatePool = JsParserStatePool() + parserCache = JavaScriptParserCache( + fileProvider: FileDiskProvider(), + parserStatePool: parserStatePool, + sourcePreprocessors: preprocessors, + antlrSettings: antlrSettings + ) + + self.output = output + self.settings = settings + } + + public func rewrite(files: [URL]) throws { + let inputFiles = files.map { DiskInputFile(url: $0, isPrimary: true) } + try rewrite(files: inputFiles) + } + + public func rewrite(files: [DiskInputFile]) throws { + try rewrite(inputs: files) + } + + public func rewrite(inputs: [InputSource]) throws { + let input = ArrayInputSourcesProvider(inputs: inputs) + + var jobBuilder = JavaScript2SwiftRewriterJobBuilder() + + jobBuilder.inputs.addInputs(from: input) + jobBuilder.settings = settings.rewriter + jobBuilder.swiftSyntaxOptions = settings.astWriter + jobBuilder.preprocessors = preprocessors + jobBuilder.parserCache = parserCache + + let job = jobBuilder.createJob() + + let results = job.execute(output: output) + + if !results.succeeded { + print("One or more errors where found while transpiling the input source code.") + print("See bellow for more information.") + } + + // Print diagnostics + for diag in results.diagnostics.diagnostics { + switch diag { + case .note: + print("// Note: \(diag)") + case .warning: + print("// Warning: \(diag)") + case .error: + print("// Error: \(diag)") + } + } + } + + public struct Settings { + /// Settings for the AST writer + public var astWriter: SwiftSyntaxOptions = JavaScript2SwiftRewriter.defaultWriterOptions + + /// General settings for `JavaScript2SwiftRewriter` instances + public var rewriter: JavaScript2SwiftRewriter.Settings = .default + } +} diff --git a/Sources/SwiftRewriter/SwiftRewriterCommand.swift b/Sources/SwiftRewriter/SwiftRewriterCommand.swift index 65d6fccce..c940446f9 100644 --- a/Sources/SwiftRewriter/SwiftRewriterCommand.swift +++ b/Sources/SwiftRewriter/SwiftRewriterCommand.swift @@ -12,6 +12,7 @@ struct SwiftRewriterCommand: ParsableCommand { """, subcommands: [ ObjectiveCCommand.self, + JavaScriptCommand.self, ], defaultSubcommand: ObjectiveCCommand.self ) diff --git a/Sources/SwiftRewriterLib/SwiftWriter.swift b/Sources/SwiftRewriterLib/SwiftWriter.swift index da5bdc56e..826b6bcc1 100644 --- a/Sources/SwiftRewriterLib/SwiftWriter.swift +++ b/Sources/SwiftRewriterLib/SwiftWriter.swift @@ -27,9 +27,9 @@ public final class SwiftWriter { let numThreads: Int let typeSystem: TypeSystem let syntaxRewriterApplier: SwiftSyntaxRewriterPassApplier - + public weak var progressListener: SwiftWriterProgressListener? - + public init( intentions: IntentionCollection, options: SwiftSyntaxOptions, @@ -47,29 +47,29 @@ public final class SwiftWriter { self.typeSystem = typeSystem self.syntaxRewriterApplier = syntaxRewriterApplier } - + public func execute() { typeSystem.makeCache() defer { typeSystem.tearDownCache() } - + var unique = Set() let fileIntents = intentions.fileIntentions() - + @ConcurrentValue var errors: [(String, Error)] = [] - + @ConcurrentValue var filesEmitted = 0 - + let listenerQueue = DispatchQueue(label: "com.swiftrewriter.swiftwriter.listener") let queue = ConcurrentOperationQueue() queue.maxConcurrentOperationCount = numThreads - + let mutex = Mutex() let filesToEmit = fileIntents.filter(shouldOutputFile(_:)) - + for file in filesToEmit { if !unique.insert(file.targetPath).inserted { mutex.locking { @@ -83,7 +83,7 @@ public final class SwiftWriter { } continue } - + let writer = SwiftSyntaxWriter( options: options, diagnostics: Diagnostics(), @@ -91,13 +91,13 @@ public final class SwiftWriter { typeSystem: typeSystem, syntaxRewriterApplier: syntaxRewriterApplier ) - + queue.addOperation { autoreleasepool { do { if let listener = self.progressListener { let fe: Int = _filesEmitted.prefixIncrement() - + listenerQueue.async { listener.swiftWriterReportProgress( self, @@ -107,9 +107,9 @@ public final class SwiftWriter { ) } } - + try writer.outputFile(file) - + mutex.locking { self.diagnostics.merge(with: writer.diagnostics) } @@ -119,9 +119,9 @@ public final class SwiftWriter { } } } - + queue.runAndWaitConcurrent() - + for error in errors { diagnostics.error( "Error while saving file \(error.0): \(error.1)", @@ -130,7 +130,7 @@ public final class SwiftWriter { ) } } - + func shouldOutputFile(_ file: FileGenerationIntention) -> Bool { return file.isPrimary } @@ -142,43 +142,43 @@ class SwiftSyntaxWriter { var options: SwiftSyntaxOptions let typeSystem: TypeSystem let syntaxRewriterApplier: SwiftSyntaxRewriterPassApplier - + init(options: SwiftSyntaxOptions, diagnostics: Diagnostics, output: WriterOutput, typeSystem: TypeSystem, syntaxRewriterApplier: SwiftSyntaxRewriterPassApplier) { - + self.options = options self.diagnostics = diagnostics self.output = output self.typeSystem = typeSystem self.syntaxRewriterApplier = syntaxRewriterApplier } - + func outputFile(_ fileIntent: FileGenerationIntention) throws { let target = try output.createFile(path: fileIntent.targetPath) - + try outputFile(fileIntent, targetFile: target) } - + func outputFile(_ fileIntent: FileGenerationIntention, targetFile: FileOutput) throws { let out = targetFile.outputTarget() - + let settings = SwiftProducer .Settings(outputExpressionTypes: options.outputExpressionTypes, printIntentionHistory: options.printIntentionHistory, emitObjcCompatibility: options.emitObjcCompatibility) - + let producer = SwiftProducer(settings: settings, delegate: self) - + var fileSyntax = producer.generateFile(fileIntent) fileSyntax = try formatSyntax(fileSyntax, fileUrl: URL(fileURLWithPath: fileIntent.targetPath), format: options.format) fileSyntax = applySyntaxPasses(fileSyntax) - + out.outputFile(fileSyntax) - + targetFile.close() } @@ -186,11 +186,11 @@ class SwiftSyntaxWriter { switch format { case .noFormatting: return file - + case .swiftFormat(let configuration): // Turn the syntax back into a string and pass that string as an // input in order to normalize abnormal syntax trees that may have - // been generated by `SwiftSyntaxProducer`. + // been generated by `SwiftProducer`. let string = file.description let formatter = SwiftFormatter(configuration: configuration ?? .init()) @@ -219,11 +219,11 @@ extension SwiftSyntaxWriter: SwiftProducerDelegate { if intention != nil { return true } - + guard let initialValue = initialValue else { return true } - + return shouldEmitTypeSignature( forInitVal: initialValue, varType: storage.type, @@ -231,7 +231,7 @@ extension SwiftSyntaxWriter: SwiftProducerDelegate { isConstant: storage.isConstant ) } - + func swiftProducer( _ producer: SwiftProducer, initialValueFor intention: ValueStorageIntention @@ -244,7 +244,7 @@ extension SwiftSyntaxWriter: SwiftProducerDelegate { return nil } } - + // Don't emit `nil` values for non-constant fields, since Swift assumes // the initial value of these values to be nil already. // We need to emit `nil` in case of constants since 'let's don't do that @@ -252,10 +252,10 @@ extension SwiftSyntaxWriter: SwiftProducerDelegate { if intention.type.isOptional && !intention.storage.isConstant { return nil } - + return typeSystem.defaultValue(for: intention.type) } - + func shouldEmitTypeSignature( forInitVal exp: Expression, varType: SwiftType, @@ -269,32 +269,32 @@ extension SwiftSyntaxWriter: SwiftProducerDelegate { if exp.isErrorTyped { return true } - + if case .block? = exp.resolvedType { return true } - + if exp.isLiteralExpression { if let type = exp.resolvedType { switch type { case .int: return varType != .int - + case .float: return varType != .double - + case .optional, .implicitUnwrappedOptional, .nullabilityUnspecified: return true - + default: break } } - + switch deduceType(from: exp) { case .int, .float, .nil: return true - + default: return false } @@ -302,26 +302,26 @@ extension SwiftSyntaxWriter: SwiftProducerDelegate { guard typeSystem.isClassInstanceType(type) else { return !typeSystem.typesMatch(type, varType, ignoreNullability: true) } - + if isConstant { return false } - + if type.isOptional != varType.isOptional { let isSame = type.deepUnwrapped == varType.deepUnwrapped let isWeak = ownership == .weak - + if !isSame || !isWeak { return true } } - + return !typeSystem.typesMatch(type, varType, ignoreNullability: true) } - + return false } - + /// Attempts to make basic deductions about an expression's resulting type. /// Used only for deciding whether to infer types for variable definitions /// with initial values. @@ -330,7 +330,7 @@ extension SwiftSyntaxWriter: SwiftProducerDelegate { if constant.isInteger { return .int } - + switch constant { case .float: return .float @@ -343,30 +343,30 @@ extension SwiftSyntaxWriter: SwiftProducerDelegate { default: break } - + return .other } else if let binary = exp.asBinary { return deduceType(binary) - + } else if let assignment = exp.asAssignment { return deduceType(from: assignment.rhs) - + } else if let parens = exp.asParens { return deduceType(from: parens.exp) - + } else if exp is PrefixExpression || exp is UnaryExpression { let op = exp.asPrefix?.op ?? exp.asUnary?.op - + switch op { case .some(.negate): return .bool case .some(.bitwiseNot): return .int - + // Pointer types case .some(.multiply), .some(.bitwiseAnd): return .other - + default: return .other } @@ -375,29 +375,29 @@ extension SwiftSyntaxWriter: SwiftProducerDelegate { if lhsType == deduceType(from: ternary.ifFalse) { return lhsType } - + return .other } - + return .other } - + private func deduceType(_ binary: BinaryExpression) -> DeducedType { let lhs = binary.lhs let op = binary.op let rhs = binary.rhs - + switch op.category { case .arithmetic, .bitwise: let lhsType = deduceType(from: lhs) let rhsType = deduceType(from: rhs) - + // Arithmetic and bitwise operators keep operand types, if they // are the same. if lhsType == rhsType { return lhsType } - + // Float takes precedence over ints on arithmetic operators if op.category == .arithmetic { switch (lhsType, rhsType) { @@ -416,23 +416,23 @@ extension SwiftSyntaxWriter: SwiftProducerDelegate { break } } - + return .other - + case .assignment: return deduceType(from: rhs) - + case .comparison: return .bool - + case .logical: return .bool - + case .nullCoalesce, .range: return .other } } - + private enum DeducedType { case int case float diff --git a/Sources/TestCommons/Asserters/JsGrammarModels/JsFunctionBodyNode+Asserter.swift b/Sources/TestCommons/Asserters/JsGrammarModels/JsFunctionBodyNode+Asserter.swift new file mode 100644 index 000000000..3b3d96d7f --- /dev/null +++ b/Sources/TestCommons/Asserters/JsGrammarModels/JsFunctionBodyNode+Asserter.swift @@ -0,0 +1,40 @@ +import Utils +import GrammarModelBase +import JsGrammarModels + +public extension Asserter where Object == JsFunctionBodyNode { + /// Asserts that the underlying `JsFunctionBodyNode` object being tested + /// has a list of body comments that match a specified value. + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func assert( + comments: [RawCodeComment], + file: StaticString = #file, + line: UInt = #line + ) -> Self? { + + asserter(forKeyPath: \.comments) { + $0.assert(equals: comments, file: file, line: line) + } + } + + /// Asserts that the underlying `JsFunctionBodyNode` object being tested + /// has a list of body comments that match a specified value. + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func assert( + commentStrings: [String], + file: StaticString = #file, + line: UInt = #line + ) -> Self? { + + let actual = object.comments.map(\.string) + return asserter(for: actual) { + $0.assert(equals: commentStrings, file: file, line: line) + }.mapAsserter(self) + } +} diff --git a/Sources/TestCommons/Asserters/JsGrammarModels/JsFunctionDefinitionNode+Asserter.swift b/Sources/TestCommons/Asserters/JsGrammarModels/JsFunctionDefinitionNode+Asserter.swift new file mode 100644 index 000000000..0d7d1c0be --- /dev/null +++ b/Sources/TestCommons/Asserters/JsGrammarModels/JsFunctionDefinitionNode+Asserter.swift @@ -0,0 +1,197 @@ +import Utils +import GrammarModelBase +import JsGrammarModels + +public extension Asserter where Object == JsFunctionDeclarationNode { + /// Asserts that the underlying `JsFunctionDeclarationNode` being tested + /// has an identifier node with a specified `name` value. + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func assert( + name: String, + file: StaticString = #file, + line: UInt = #line + ) -> Self? { + + asserter(forKeyPath: \.identifier, file: file, line: line) { + $0.assertNotNil(message: "Expected function to have identifier '\(name)', found nil", file: file, line: line)? + .assert(name: name, file: file, line: line) + } + } + + /// Asserts that the underlying `JsFunctionDeclarationNode` being tested has + /// one or more variadic parameters, depending on the value of the provided + /// `hasVariadicParameter`. + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func assert( + hasVariadicParameter: Bool, + file: StaticString = #file, + line: UInt = #line + ) -> Self? { + + return asserter(forKeyPath: \.signature?.arguments, file: file, line: line) { parameterList -> Asserter<[JsFunctionArgument]>? in + let parameterList = parameterList + .assertNotNil( + message: "Expected function to have parameter list, found nil", + file: file, + line: line + ) + + if hasVariadicParameter { + return parameterList?.assertContains( + message: "Expected function to have at least one variadic parameter, found none", + file: file, + line: line + ) { + $0.isVariadic + } + } else { + return parameterList?.assertDoesNotContain( + message: "Expected function to have no variadic parameter, found one", + file: file, + line: line + ) { + $0.isVariadic + } + } + } + } + + /// Asserts that the underlying `JsFunctionDeclarationNode` being tested + /// has a parameter list with a specified count of parameters. + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func assertParameterCount( + _ count: Int, + file: StaticString = #file, + line: UInt = #line + ) -> Self? { + + asserter(forKeyPath: \.signature?.arguments, file: file, line: line) { + $0.assertNotNil(message: "Expected function to have parameter list, found nil", file: file, line: line)? + .assertCount(count, file: file, line: line) + } + } + + /// Opens an asserter context for a specified parameter node index on the + /// underlying `JsFunctionDeclarationNode` being tested. + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func asserter( + forParameterAt index: Int, + file: StaticString = #file, + line: UInt = #line, + _ closure: (Asserter) -> Void + ) -> Self? { + + guard let signature = object.signature else { + return assertFailed( + message: #"asserter(forParameterAt:) failed: `signature` node is nil."#, + file: file, + line: line + ) + } + guard signature.arguments.count > index else { + return assertFailed( + message: #"asserter(forParameterAt: \#(index)) failed: parameter list has less than \#(index + 1) parameter(s)."#, + file: file, + line: line + ) + } + + closure(.init(object: signature.arguments[index])) + + return self + } + + /// Asserts that the underlying `JsFunctionDeclarationNode` being tested + /// has a function body. + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func assertHasBody( + file: StaticString = #file, + line: UInt = #line + ) -> Self? { + + asserter(forKeyPath: \.body?.body, file: file, line: line) { stmt in + stmt.assertNotNil( + message: "Expected function definition to have a body.", + file: file, + line: line + ) + } + } + + /// Asserts that the underlying `JsFunctionDeclarationNode` being tested + /// has no function body associated with it. + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func assertHasNoBody( + file: StaticString = #file, + line: UInt = #line + ) -> Self? { + + asserter(forKeyPath: \.body?.body, file: file, line: line) { stmt in + stmt.assertNil( + message: "Expected function definition to have no body.", + file: file, + line: line + ) + } + } + + /// Asserts that the underlying `JsFunctionDeclarationNode` object being + /// tested has a body with a given list of body comments. + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func assert( + comments: [RawCodeComment], + file: StaticString = #file, + line: UInt = #line + ) -> Self? { + + asserter(forKeyPath: \.body) { body in + body.assertNotNil( + message: "Expected function body", + file: file, + line: line + )?.assert(comments: comments, file: file, line: line) + } + } + + /// Asserts that the underlying `JsFunctionDeclarationNode` object being + /// tested has a body with a given list of body comments + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func assert( + commentStrings: [String], + file: StaticString = #file, + line: UInt = #line + ) -> Self? { + + asserter(forKeyPath: \.body) { body in + body.assertNotNil( + message: "Expected function body", + file: file, + line: line + )?.assert(commentStrings: commentStrings, file: file, line: line) + } + } +} diff --git a/Sources/TestCommons/Asserters/JsGrammarModels/JsIdentifierNode+Asserter.swift b/Sources/TestCommons/Asserters/JsGrammarModels/JsIdentifierNode+Asserter.swift new file mode 100644 index 000000000..ce81777bb --- /dev/null +++ b/Sources/TestCommons/Asserters/JsGrammarModels/JsIdentifierNode+Asserter.swift @@ -0,0 +1,22 @@ +import Utils +import JsGrammarModels + +public extension Asserter where Object: JsIdentifierNode { + /// Asserts that the underlying `JsIdentifierNode` being tested has the + /// specified `name` value. + /// + /// Returns `nil` if the test failed, otherwise returns `self` for chaining + /// further tests. + @discardableResult + func assert( + name: String, + message: @autoclosure () -> String = "", + file: StaticString = #file, + line: UInt = #line + ) -> Self? { + + asserter(forKeyPath: \.name, file: file, line: line) { + $0.assert(equals: name, message: message(), file: file, line: line) + } + } +} diff --git a/Sources/Utils/ConcurrentValue.swift b/Sources/Utils/ConcurrentValue.swift index 00d80de55..850dcebd3 100644 --- a/Sources/Utils/ConcurrentValue.swift +++ b/Sources/Utils/ConcurrentValue.swift @@ -29,7 +29,7 @@ public final class ConcurrentValue { pthread_rwlock_unlock(&lock) } } - + @inlinable public var projectedValue: T { get { @@ -72,13 +72,13 @@ public final class ConcurrentValue { } @inlinable - public func modifyingValue(_ block: (inout T) -> U) -> U { + public func modifyingValue(_ block: (inout T) throws -> U) rethrows -> U { pthread_rwlock_wrlock(&lock) defer { pthread_rwlock_unlock(&lock) } - return block(&_value) + return try block(&_value) } @inlinable diff --git a/SwiftRewriter.code-workspace b/SwiftRewriter.code-workspace index 36bb6a46a..b6884c379 100644 --- a/SwiftRewriter.code-workspace +++ b/SwiftRewriter.code-workspace @@ -40,6 +40,7 @@ "args": [ "build", "--build-tests", + "-Xswiftc", "-diagnostic-style=llvm", ], "options": { "env": { @@ -64,6 +65,7 @@ "args": [ "build", "-c=release", + "-Xswiftc", "-diagnostic-style=llvm", ], "detail": "swift build -c=release", }, @@ -78,7 +80,13 @@ "args": [ "test", "--enable-code-coverage", + "-Xswiftc", "-diagnostic-style=llvm", ], + "options": { + "env": { + "SWIFT_REWRITER_BUILD_ANTLR_OPTIMIZED": "1", + } + }, "detail": "swift test", "dependsOn": "Build (debug)" }, @@ -90,6 +98,9 @@ "args": [ "test", "-c", "release", + "-Xswiftc", + "-DJS_PARSER_TESTS_FULL_FIXTURES", + "-Xswiftc", "-diagnostic-style=llvm", ], "detail": "swift test -c=release", }, @@ -194,7 +205,6 @@ }, }, - "flake8.args": ["--ignore=E203,E225,E302,E501,W293,W503"], "[python]": { "editor.formatOnSave": true }, @@ -256,13 +266,13 @@ "whitespaces", "Xexact" ], + "swiftTestFileGen.gotoTestFile.useFilenameHeuristics": true, "swiftTestFileGen.gotoTestFile.heuristicFilenamePattern": "$1Tests", }, "extensions": { "recommendations": [ "exodiusstudios.comment-anchors", - "vknabel.swift-coverage", "luizzak.swifttestfilegen", ], }, diff --git a/SwiftRewriter.xcodeproj/project.pbxproj b/SwiftRewriter.xcodeproj/project.pbxproj index 7e7269a88..afd4ad811 100644 --- a/SwiftRewriter.xcodeproj/project.pbxproj +++ b/SwiftRewriter.xcodeproj/project.pbxproj @@ -9,32 +9,34 @@ /* Begin PBXAggregateTarget section */ swiftrewriter::SwiftRewriterPackageTests::ProductTarget /* SwiftRewriterPackageTests */ = { isa = PBXAggregateTarget; - buildConfigurationList = OBJ_4192 /* Build configuration list for PBXAggregateTarget "SwiftRewriterPackageTests" */; + buildConfigurationList = OBJ_4780 /* Build configuration list for PBXAggregateTarget "SwiftRewriterPackageTests" */; buildPhases = ( ); dependencies = ( - OBJ_4195 /* PBXTargetDependency */, - OBJ_4197 /* PBXTargetDependency */, - OBJ_4199 /* PBXTargetDependency */, - OBJ_4201 /* PBXTargetDependency */, - OBJ_4203 /* PBXTargetDependency */, - OBJ_4205 /* PBXTargetDependency */, - OBJ_4207 /* PBXTargetDependency */, - OBJ_4209 /* PBXTargetDependency */, - OBJ_4210 /* PBXTargetDependency */, - OBJ_4211 /* PBXTargetDependency */, - OBJ_4212 /* PBXTargetDependency */, - OBJ_4213 /* PBXTargetDependency */, - OBJ_4214 /* PBXTargetDependency */, - OBJ_4215 /* PBXTargetDependency */, - OBJ_4216 /* PBXTargetDependency */, - OBJ_4217 /* PBXTargetDependency */, - OBJ_4218 /* PBXTargetDependency */, - OBJ_4219 /* PBXTargetDependency */, - OBJ_4220 /* PBXTargetDependency */, - OBJ_4221 /* PBXTargetDependency */, - OBJ_4222 /* PBXTargetDependency */, - OBJ_4223 /* PBXTargetDependency */, + OBJ_4783 /* PBXTargetDependency */, + OBJ_4785 /* PBXTargetDependency */, + OBJ_4787 /* PBXTargetDependency */, + OBJ_4789 /* PBXTargetDependency */, + OBJ_4791 /* PBXTargetDependency */, + OBJ_4793 /* PBXTargetDependency */, + OBJ_4795 /* PBXTargetDependency */, + OBJ_4797 /* PBXTargetDependency */, + OBJ_4798 /* PBXTargetDependency */, + OBJ_4799 /* PBXTargetDependency */, + OBJ_4800 /* PBXTargetDependency */, + OBJ_4801 /* PBXTargetDependency */, + OBJ_4802 /* PBXTargetDependency */, + OBJ_4803 /* PBXTargetDependency */, + OBJ_4804 /* PBXTargetDependency */, + OBJ_4805 /* PBXTargetDependency */, + OBJ_4806 /* PBXTargetDependency */, + OBJ_4807 /* PBXTargetDependency */, + OBJ_4808 /* PBXTargetDependency */, + OBJ_4809 /* PBXTargetDependency */, + OBJ_4810 /* PBXTargetDependency */, + OBJ_4811 /* PBXTargetDependency */, + OBJ_4812 /* PBXTargetDependency */, + OBJ_4813 /* PBXTargetDependency */, ); name = SwiftRewriterPackageTests; productName = SwiftRewriterPackageTests; @@ -42,2539 +44,2897 @@ /* End PBXAggregateTarget section */ /* Begin PBXBuildFile section */ - OBJ_1361 /* CallGraph+Creation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_10 /* CallGraph+Creation.swift */; }; - OBJ_1362 /* CallGraph+Graphviz.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_11 /* CallGraph+Graphviz.swift */; }; - OBJ_1363 /* CallGraph.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_12 /* CallGraph.swift */; }; - OBJ_1364 /* CFGVisitResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_14 /* CFGVisitResult.swift */; }; - OBJ_1365 /* ControlFlowGraph+Creation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_15 /* ControlFlowGraph+Creation.swift */; }; - OBJ_1366 /* ControlFlowGraph+Graphviz.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_16 /* ControlFlowGraph+Graphviz.swift */; }; - OBJ_1367 /* ControlFlowGraph+Visitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_17 /* ControlFlowGraph+Visitor.swift */; }; - OBJ_1368 /* ControlFlowGraph.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_18 /* ControlFlowGraph.swift */; }; - OBJ_1369 /* DefinitionTypePropagator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_19 /* DefinitionTypePropagator.swift */; }; - OBJ_1370 /* DirectedGraph.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_20 /* DirectedGraph.swift */; }; - OBJ_1371 /* DirectedGraphBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_21 /* DirectedGraphBase.swift */; }; - OBJ_1372 /* NodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_23 /* NodeDefinition.swift */; }; - OBJ_1373 /* ReachingDefinitionAnalyzer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_24 /* ReachingDefinitionAnalyzer.swift */; }; - OBJ_1374 /* SyntaxNode+ControlFlowGraphSyntaxNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_25 /* SyntaxNode+ControlFlowGraphSyntaxNode.swift */; }; - OBJ_1375 /* BaseUsageAnalyzer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_27 /* BaseUsageAnalyzer.swift */; }; - OBJ_1376 /* DefinitionUsage.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_28 /* DefinitionUsage.swift */; }; - OBJ_1377 /* IntentionCollectionUsageAnalyzer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_29 /* IntentionCollectionUsageAnalyzer.swift */; }; - OBJ_1378 /* LocalUsageAnalyzer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_30 /* LocalUsageAnalyzer.swift */; }; - OBJ_1379 /* LocalUsageAnalyzerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_31 /* LocalUsageAnalyzerType.swift */; }; - OBJ_1380 /* UsageAnalysis.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_32 /* UsageAnalysis.swift */; }; - OBJ_1382 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_1383 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_1384 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_1385 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_1386 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_1387 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_1388 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_1389 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_1390 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_1391 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_1392 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_1393 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_1394 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_1395 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_1396 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_1397 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_1398 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_1399 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_1400 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_1401 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_1447 /* CallGraph+CreationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_646 /* CallGraph+CreationTests.swift */; }; - OBJ_1448 /* CallGraphTestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_647 /* CallGraphTestUtils.swift */; }; - OBJ_1449 /* CallGraphTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_648 /* CallGraphTests.swift */; }; - OBJ_1450 /* ControlFlowGraph+CreationExpTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_650 /* ControlFlowGraph+CreationExpTests.swift */; }; - OBJ_1451 /* ControlFlowGraph+CreationStmtTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_651 /* ControlFlowGraph+CreationStmtTests.swift */; }; - OBJ_1452 /* ControlFlowGraph+CreationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_652 /* ControlFlowGraph+CreationTests.swift */; }; - OBJ_1453 /* ControlFlowGraphTestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_653 /* ControlFlowGraphTestUtils.swift */; }; - OBJ_1454 /* DefinitionTypePropagatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_654 /* DefinitionTypePropagatorTests.swift */; }; - OBJ_1455 /* DirectedGraphTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_655 /* DirectedGraphTests.swift */; }; - OBJ_1456 /* Graphviz+TestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_656 /* Graphviz+TestUtils.swift */; }; - OBJ_1457 /* ReachingDefinitionAnalyzerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_657 /* ReachingDefinitionAnalyzerTests.swift */; }; - OBJ_1458 /* BaseUsageAnalyzerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_659 /* BaseUsageAnalyzerTests.swift */; }; - OBJ_1459 /* IntentionCollectionUsageAnalyzerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_660 /* IntentionCollectionUsageAnalyzerTests.swift */; }; - OBJ_1460 /* LocalUsageAnalyzerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_661 /* LocalUsageAnalyzerTests.swift */; }; - OBJ_1461 /* UsageAnalysisTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_662 /* UsageAnalysisTests.swift */; }; - OBJ_1463 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_1464 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_1465 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_1466 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_1467 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_1468 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_1469 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_1470 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_1471 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_1472 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_1473 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_1474 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_1475 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_1476 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_1477 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_1478 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_1479 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_1480 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_1481 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_1482 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_1483 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_1484 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_1485 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_1486 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_1487 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_1488 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_1489 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_1490 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_1491 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_1492 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_1493 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_1494 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_1495 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_1496 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_1497 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_1498 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_1499 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_1500 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_1560 /* ANTLRErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1042 /* ANTLRErrorListener.swift */; }; - OBJ_1561 /* ANTLRErrorStrategy.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1043 /* ANTLRErrorStrategy.swift */; }; - OBJ_1562 /* ANTLRFileStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1044 /* ANTLRFileStream.swift */; }; - OBJ_1563 /* ANTLRInputStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1045 /* ANTLRInputStream.swift */; }; - OBJ_1564 /* BailErrorStrategy.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1046 /* BailErrorStrategy.swift */; }; - OBJ_1565 /* BaseErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1047 /* BaseErrorListener.swift */; }; - OBJ_1566 /* BufferedTokenStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1048 /* BufferedTokenStream.swift */; }; - OBJ_1567 /* CharStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1049 /* CharStream.swift */; }; - OBJ_1568 /* CommonToken.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1050 /* CommonToken.swift */; }; - OBJ_1569 /* CommonTokenFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1051 /* CommonTokenFactory.swift */; }; - OBJ_1570 /* CommonTokenStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1052 /* CommonTokenStream.swift */; }; - OBJ_1571 /* ConsoleErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1053 /* ConsoleErrorListener.swift */; }; - OBJ_1572 /* DefaultErrorStrategy.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1054 /* DefaultErrorStrategy.swift */; }; - OBJ_1573 /* DiagnosticErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1055 /* DiagnosticErrorListener.swift */; }; - OBJ_1574 /* FailedPredicateException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1056 /* FailedPredicateException.swift */; }; - OBJ_1575 /* InputMismatchException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1057 /* InputMismatchException.swift */; }; - OBJ_1576 /* IntStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1058 /* IntStream.swift */; }; - OBJ_1577 /* InterpreterRuleContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1059 /* InterpreterRuleContext.swift */; }; - OBJ_1578 /* Lexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1060 /* Lexer.swift */; }; - OBJ_1579 /* LexerInterpreter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1061 /* LexerInterpreter.swift */; }; - OBJ_1580 /* LexerNoViableAltException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1062 /* LexerNoViableAltException.swift */; }; - OBJ_1581 /* ListTokenSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1063 /* ListTokenSource.swift */; }; - OBJ_1582 /* NoViableAltException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1064 /* NoViableAltException.swift */; }; - OBJ_1583 /* Parser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1065 /* Parser.swift */; }; - OBJ_1584 /* ParserInterpreter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1066 /* ParserInterpreter.swift */; }; - OBJ_1585 /* ParserRuleContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1067 /* ParserRuleContext.swift */; }; - OBJ_1586 /* ProxyErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1068 /* ProxyErrorListener.swift */; }; - OBJ_1587 /* RecognitionException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1069 /* RecognitionException.swift */; }; - OBJ_1588 /* Recognizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1070 /* Recognizer.swift */; }; - OBJ_1589 /* RuleContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1071 /* RuleContext.swift */; }; - OBJ_1590 /* RuntimeMetaData.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1072 /* RuntimeMetaData.swift */; }; - OBJ_1591 /* Token.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1073 /* Token.swift */; }; - OBJ_1592 /* TokenFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1074 /* TokenFactory.swift */; }; - OBJ_1593 /* TokenSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1075 /* TokenSource.swift */; }; - OBJ_1594 /* TokenStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1076 /* TokenStream.swift */; }; - OBJ_1595 /* TokenStreamRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1077 /* TokenStreamRewriter.swift */; }; - OBJ_1596 /* UnbufferedCharStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1078 /* UnbufferedCharStream.swift */; }; - OBJ_1597 /* UnbufferedTokenStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1079 /* UnbufferedTokenStream.swift */; }; - OBJ_1598 /* VocabularySingle.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1080 /* VocabularySingle.swift */; }; - OBJ_1599 /* WritableToken.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1081 /* WritableToken.swift */; }; - OBJ_1600 /* ATN.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1083 /* ATN.swift */; }; - OBJ_1601 /* ATNConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1084 /* ATNConfig.swift */; }; - OBJ_1602 /* ATNConfigSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1085 /* ATNConfigSet.swift */; }; - OBJ_1603 /* ATNDeserializationOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1086 /* ATNDeserializationOptions.swift */; }; - OBJ_1604 /* ATNDeserializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1087 /* ATNDeserializer.swift */; }; - OBJ_1605 /* ATNSimulator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1088 /* ATNSimulator.swift */; }; - OBJ_1606 /* ATNState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1089 /* ATNState.swift */; }; - OBJ_1607 /* ATNType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1090 /* ATNType.swift */; }; - OBJ_1608 /* AbstractPredicateTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1091 /* AbstractPredicateTransition.swift */; }; - OBJ_1609 /* ActionTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1092 /* ActionTransition.swift */; }; - OBJ_1610 /* AmbiguityInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1093 /* AmbiguityInfo.swift */; }; - OBJ_1611 /* ArrayPredictionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1094 /* ArrayPredictionContext.swift */; }; - OBJ_1612 /* AtomTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1095 /* AtomTransition.swift */; }; - OBJ_1613 /* BasicBlockStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1096 /* BasicBlockStartState.swift */; }; - OBJ_1614 /* BasicState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1097 /* BasicState.swift */; }; - OBJ_1615 /* BlockEndState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1098 /* BlockEndState.swift */; }; - OBJ_1616 /* BlockStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1099 /* BlockStartState.swift */; }; - OBJ_1617 /* ContextSensitivityInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1100 /* ContextSensitivityInfo.swift */; }; - OBJ_1618 /* DecisionEventInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1101 /* DecisionEventInfo.swift */; }; - OBJ_1619 /* DecisionInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1102 /* DecisionInfo.swift */; }; - OBJ_1620 /* DecisionState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1103 /* DecisionState.swift */; }; - OBJ_1621 /* DefaultATNConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1104 /* DefaultATNConfig.swift */; }; - OBJ_1622 /* EmptyPredictionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1105 /* EmptyPredictionContext.swift */; }; - OBJ_1623 /* EpsilonTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1106 /* EpsilonTransition.swift */; }; - OBJ_1624 /* ErrorInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1107 /* ErrorInfo.swift */; }; - OBJ_1625 /* LL1Analyzer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1108 /* LL1Analyzer.swift */; }; - OBJ_1626 /* LexerATNConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1109 /* LexerATNConfig.swift */; }; - OBJ_1627 /* LexerATNSimulator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1110 /* LexerATNSimulator.swift */; }; - OBJ_1628 /* LexerAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1111 /* LexerAction.swift */; }; - OBJ_1629 /* LexerActionExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1112 /* LexerActionExecutor.swift */; }; - OBJ_1630 /* LexerActionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1113 /* LexerActionType.swift */; }; - OBJ_1631 /* LexerChannelAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1114 /* LexerChannelAction.swift */; }; - OBJ_1632 /* LexerCustomAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1115 /* LexerCustomAction.swift */; }; - OBJ_1633 /* LexerIndexedCustomAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1116 /* LexerIndexedCustomAction.swift */; }; - OBJ_1634 /* LexerModeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1117 /* LexerModeAction.swift */; }; - OBJ_1635 /* LexerMoreAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1118 /* LexerMoreAction.swift */; }; - OBJ_1636 /* LexerPopModeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1119 /* LexerPopModeAction.swift */; }; - OBJ_1637 /* LexerPushModeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1120 /* LexerPushModeAction.swift */; }; - OBJ_1638 /* LexerSkipAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1121 /* LexerSkipAction.swift */; }; - OBJ_1639 /* LexerTypeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1122 /* LexerTypeAction.swift */; }; - OBJ_1640 /* LookaheadEventInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1123 /* LookaheadEventInfo.swift */; }; - OBJ_1641 /* LookupATNConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1124 /* LookupATNConfig.swift */; }; - OBJ_1642 /* LookupDictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1125 /* LookupDictionary.swift */; }; - OBJ_1643 /* LoopEndState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1126 /* LoopEndState.swift */; }; - OBJ_1644 /* NotSetTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1127 /* NotSetTransition.swift */; }; - OBJ_1645 /* ParseInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1128 /* ParseInfo.swift */; }; - OBJ_1646 /* ParserATNSimulator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1129 /* ParserATNSimulator.swift */; }; - OBJ_1647 /* PlusBlockStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1130 /* PlusBlockStartState.swift */; }; - OBJ_1648 /* PlusLoopbackState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1131 /* PlusLoopbackState.swift */; }; - OBJ_1649 /* PrecedencePredicateTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1132 /* PrecedencePredicateTransition.swift */; }; - OBJ_1650 /* PredicateEvalInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1133 /* PredicateEvalInfo.swift */; }; - OBJ_1651 /* PredicateTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1134 /* PredicateTransition.swift */; }; - OBJ_1652 /* PredictionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1135 /* PredictionContext.swift */; }; - OBJ_1653 /* PredictionContextCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1136 /* PredictionContextCache.swift */; }; - OBJ_1654 /* PredictionMode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1137 /* PredictionMode.swift */; }; - OBJ_1655 /* ProfilingATNSimulator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1138 /* ProfilingATNSimulator.swift */; }; - OBJ_1656 /* RangeTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1139 /* RangeTransition.swift */; }; - OBJ_1657 /* RuleStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1140 /* RuleStartState.swift */; }; - OBJ_1658 /* RuleStopState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1141 /* RuleStopState.swift */; }; - OBJ_1659 /* RuleTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1142 /* RuleTransition.swift */; }; - OBJ_1660 /* SemanticContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1143 /* SemanticContext.swift */; }; - OBJ_1661 /* SetTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1144 /* SetTransition.swift */; }; - OBJ_1662 /* SingletonPredictionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1145 /* SingletonPredictionContext.swift */; }; - OBJ_1663 /* StarBlockStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1146 /* StarBlockStartState.swift */; }; - OBJ_1664 /* StarLoopEntryState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1147 /* StarLoopEntryState.swift */; }; - OBJ_1665 /* StarLoopbackState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1148 /* StarLoopbackState.swift */; }; - OBJ_1666 /* TokensStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1149 /* TokensStartState.swift */; }; - OBJ_1667 /* Transition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1150 /* Transition.swift */; }; - OBJ_1668 /* WildcardTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1151 /* WildcardTransition.swift */; }; - OBJ_1669 /* DFA.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1153 /* DFA.swift */; }; - OBJ_1670 /* DFASerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1154 /* DFASerializer.swift */; }; - OBJ_1671 /* DFAState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1155 /* DFAState.swift */; }; - OBJ_1672 /* LexerDFASerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1156 /* LexerDFASerializer.swift */; }; - OBJ_1673 /* BitSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1158 /* BitSet.swift */; }; - OBJ_1674 /* DoubleKeyMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1159 /* DoubleKeyMap.swift */; }; - OBJ_1675 /* IntSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1160 /* IntSet.swift */; }; - OBJ_1676 /* InterpreterDataReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1161 /* InterpreterDataReader.swift */; }; - OBJ_1677 /* Interval.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1162 /* Interval.swift */; }; - OBJ_1678 /* IntervalSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1163 /* IntervalSet.swift */; }; - OBJ_1679 /* MultiMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1164 /* MultiMap.swift */; }; - OBJ_1680 /* MurmurHash.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1165 /* MurmurHash.swift */; }; - OBJ_1681 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1166 /* Utils.swift */; }; - OBJ_1682 /* ANTLRError.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1168 /* ANTLRError.swift */; }; - OBJ_1683 /* ANTLRException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1169 /* ANTLRException.swift */; }; - OBJ_1684 /* ArrayExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1171 /* ArrayExtension.swift */; }; - OBJ_1685 /* CharacterExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1172 /* CharacterExtension.swift */; }; - OBJ_1686 /* IntStreamExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1173 /* IntStreamExtension.swift */; }; - OBJ_1687 /* StringExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1174 /* StringExtension.swift */; }; - OBJ_1688 /* TokenExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1175 /* TokenExtension.swift */; }; - OBJ_1689 /* UUIDExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1176 /* UUIDExtension.swift */; }; - OBJ_1690 /* AtomicInt.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1178 /* AtomicInt.swift */; }; - OBJ_1691 /* CommonUtil.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1179 /* CommonUtil.swift */; }; - OBJ_1692 /* Mutex.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1180 /* Mutex.swift */; }; - OBJ_1693 /* Stack.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1181 /* Stack.swift */; }; - OBJ_1694 /* AbstractParseTreeVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1183 /* AbstractParseTreeVisitor.swift */; }; - OBJ_1695 /* ErrorNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1184 /* ErrorNode.swift */; }; - OBJ_1696 /* ParseTree.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1185 /* ParseTree.swift */; }; - OBJ_1697 /* ParseTreeListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1186 /* ParseTreeListener.swift */; }; - OBJ_1698 /* ParseTreeProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1187 /* ParseTreeProperty.swift */; }; - OBJ_1699 /* ParseTreeVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1188 /* ParseTreeVisitor.swift */; }; - OBJ_1700 /* ParseTreeWalker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1189 /* ParseTreeWalker.swift */; }; - OBJ_1701 /* RuleNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1190 /* RuleNode.swift */; }; - OBJ_1702 /* SyntaxTree.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1191 /* SyntaxTree.swift */; }; - OBJ_1703 /* TerminalNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1192 /* TerminalNode.swift */; }; - OBJ_1704 /* TerminalNodeImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1193 /* TerminalNodeImpl.swift */; }; - OBJ_1705 /* Tree.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1194 /* Tree.swift */; }; - OBJ_1706 /* Trees.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1195 /* Trees.swift */; }; - OBJ_1707 /* Chunk.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1197 /* Chunk.swift */; }; - OBJ_1708 /* ParseTreeMatch.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1198 /* ParseTreeMatch.swift */; }; - OBJ_1709 /* ParseTreePattern.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1199 /* ParseTreePattern.swift */; }; - OBJ_1710 /* ParseTreePatternMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1200 /* ParseTreePatternMatcher.swift */; }; - OBJ_1711 /* RuleTagToken.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1201 /* RuleTagToken.swift */; }; - OBJ_1712 /* TagChunk.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1202 /* TagChunk.swift */; }; - OBJ_1713 /* TextChunk.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1203 /* TextChunk.swift */; }; - OBJ_1714 /* TokenTagToken.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1204 /* TokenTagToken.swift */; }; - OBJ_1716 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_1723 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1210 /* Package.swift */; }; - OBJ_1728 /* AntlrDiagnosticsErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_34 /* AntlrDiagnosticsErrorListener.swift */; }; - OBJ_1729 /* AntlrParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_35 /* AntlrParser.swift */; }; - OBJ_1730 /* AntlrSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_36 /* AntlrSettings.swift */; }; - OBJ_1731 /* AntlrTypeAliases.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_37 /* AntlrTypeAliases.swift */; }; - OBJ_1733 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_1734 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_1735 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_1744 /* BashCompletionsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1214 /* BashCompletionsGenerator.swift */; }; - OBJ_1745 /* CompletionsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1215 /* CompletionsGenerator.swift */; }; - OBJ_1746 /* FishCompletionsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1216 /* FishCompletionsGenerator.swift */; }; - OBJ_1747 /* ZshCompletionsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1217 /* ZshCompletionsGenerator.swift */; }; - OBJ_1748 /* Argument.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1219 /* Argument.swift */; }; - OBJ_1749 /* ArgumentHelp.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1220 /* ArgumentHelp.swift */; }; - OBJ_1750 /* ArgumentVisibility.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1221 /* ArgumentVisibility.swift */; }; - OBJ_1751 /* CompletionKind.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1222 /* CompletionKind.swift */; }; - OBJ_1752 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1223 /* Errors.swift */; }; - OBJ_1753 /* Flag.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1224 /* Flag.swift */; }; - OBJ_1754 /* NameSpecification.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1225 /* NameSpecification.swift */; }; - OBJ_1755 /* Option.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1226 /* Option.swift */; }; - OBJ_1756 /* OptionGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1227 /* OptionGroup.swift */; }; - OBJ_1757 /* AsyncParsableCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1229 /* AsyncParsableCommand.swift */; }; - OBJ_1758 /* CommandConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1230 /* CommandConfiguration.swift */; }; - OBJ_1759 /* EnumerableFlag.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1231 /* EnumerableFlag.swift */; }; - OBJ_1760 /* ExpressibleByArgument.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1232 /* ExpressibleByArgument.swift */; }; - OBJ_1761 /* ParsableArguments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1233 /* ParsableArguments.swift */; }; - OBJ_1762 /* ParsableArgumentsValidation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1234 /* ParsableArgumentsValidation.swift */; }; - OBJ_1763 /* ParsableCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1235 /* ParsableCommand.swift */; }; - OBJ_1764 /* ArgumentDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1237 /* ArgumentDecoder.swift */; }; - OBJ_1765 /* ArgumentDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1238 /* ArgumentDefinition.swift */; }; - OBJ_1766 /* ArgumentSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1239 /* ArgumentSet.swift */; }; - OBJ_1767 /* CommandParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1240 /* CommandParser.swift */; }; - OBJ_1768 /* InputOrigin.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1241 /* InputOrigin.swift */; }; - OBJ_1769 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1242 /* Name.swift */; }; - OBJ_1770 /* Parsed.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1243 /* Parsed.swift */; }; - OBJ_1771 /* ParsedValues.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1244 /* ParsedValues.swift */; }; - OBJ_1772 /* ParserError.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1245 /* ParserError.swift */; }; - OBJ_1773 /* SplitArguments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1246 /* SplitArguments.swift */; }; - OBJ_1774 /* DumpHelpGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1248 /* DumpHelpGenerator.swift */; }; - OBJ_1775 /* HelpCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1249 /* HelpCommand.swift */; }; - OBJ_1776 /* HelpGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1250 /* HelpGenerator.swift */; }; - OBJ_1777 /* MessageInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1251 /* MessageInfo.swift */; }; - OBJ_1778 /* UsageGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1252 /* UsageGenerator.swift */; }; - OBJ_1779 /* CollectionExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1254 /* CollectionExtensions.swift */; }; - OBJ_1780 /* SequenceExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1255 /* SequenceExtensions.swift */; }; - OBJ_1781 /* StringExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1256 /* StringExtensions.swift */; }; - OBJ_1782 /* Tree.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1257 /* Tree.swift */; }; - OBJ_1784 /* ArgumentParserToolInfo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParserToolInfo::Product /* ArgumentParserToolInfo.framework */; }; - OBJ_1791 /* ToolInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1259 /* ToolInfo.swift */; }; - OBJ_1797 /* atomic.c in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1206 /* atomic.c */; }; - OBJ_1803 /* ArgumentRewritingStrategy.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_39 /* ArgumentRewritingStrategy.swift */; }; - OBJ_1804 /* CompoundedMappingType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_40 /* CompoundedMappingType.swift */; }; - OBJ_1805 /* CompoundedMappingTypeList.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_41 /* CompoundedMappingTypeList.swift */; }; - OBJ_1806 /* CoreGraphicsCompoundTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_42 /* CoreGraphicsCompoundTypes.swift */; }; - OBJ_1807 /* FoundationCompoundTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_43 /* FoundationCompoundTypes.swift */; }; - OBJ_1808 /* FunctionInvocationTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_44 /* FunctionInvocationTransformer.swift */; }; - OBJ_1809 /* Helpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_45 /* Helpers.swift */; }; - OBJ_1810 /* IncompleteKnownType+CompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_46 /* IncompleteKnownType+CompoundType.swift */; }; - OBJ_1811 /* MethodInvocationRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_47 /* MethodInvocationRewriter.swift */; }; - OBJ_1812 /* PostfixInvocationTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_48 /* PostfixInvocationTransformer.swift */; }; - OBJ_1813 /* PostfixTransformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_49 /* PostfixTransformation.swift */; }; - OBJ_1814 /* SignatureMapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_50 /* SignatureMapper.swift */; }; - OBJ_1815 /* SwiftAttributeTransformationsExtractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_51 /* SwiftAttributeTransformationsExtractor.swift */; }; - OBJ_1816 /* SwiftClassInterfaceParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_52 /* SwiftClassInterfaceParser.swift */; }; - OBJ_1817 /* UIColorCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_53 /* UIColorCompoundType.swift */; }; - OBJ_1818 /* UIControlCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_54 /* UIControlCompoundType.swift */; }; - OBJ_1819 /* UIGestureRecognizerCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_55 /* UIGestureRecognizerCompoundType.swift */; }; - OBJ_1820 /* UILabelCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_56 /* UILabelCompoundType.swift */; }; - OBJ_1821 /* UIResponderCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_57 /* UIResponderCompoundType.swift */; }; - OBJ_1822 /* UIViewCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_58 /* UIViewCompoundType.swift */; }; - OBJ_1823 /* UIViewControllerCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_59 /* UIViewControllerCompoundType.swift */; }; - OBJ_1825 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_1826 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_1827 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_1828 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_1829 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_1830 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_1831 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_1832 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_1833 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_1834 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_1454 /* CallGraph+Creation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_10 /* CallGraph+Creation.swift */; }; + OBJ_1455 /* CallGraph+Graphviz.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_11 /* CallGraph+Graphviz.swift */; }; + OBJ_1456 /* CallGraph.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_12 /* CallGraph.swift */; }; + OBJ_1457 /* CFGVisitResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_14 /* CFGVisitResult.swift */; }; + OBJ_1458 /* ControlFlowGraph+Creation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_15 /* ControlFlowGraph+Creation.swift */; }; + OBJ_1459 /* ControlFlowGraph+Graphviz.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_16 /* ControlFlowGraph+Graphviz.swift */; }; + OBJ_1460 /* ControlFlowGraph+Visitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_17 /* ControlFlowGraph+Visitor.swift */; }; + OBJ_1461 /* ControlFlowGraph.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_18 /* ControlFlowGraph.swift */; }; + OBJ_1462 /* DefinitionTypePropagator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_19 /* DefinitionTypePropagator.swift */; }; + OBJ_1463 /* DirectedGraph.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_20 /* DirectedGraph.swift */; }; + OBJ_1464 /* DirectedGraphBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_21 /* DirectedGraphBase.swift */; }; + OBJ_1465 /* NodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_23 /* NodeDefinition.swift */; }; + OBJ_1466 /* ReachingDefinitionAnalyzer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_24 /* ReachingDefinitionAnalyzer.swift */; }; + OBJ_1467 /* SyntaxNode+ControlFlowGraphSyntaxNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_25 /* SyntaxNode+ControlFlowGraphSyntaxNode.swift */; }; + OBJ_1468 /* BaseUsageAnalyzer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_27 /* BaseUsageAnalyzer.swift */; }; + OBJ_1469 /* DefinitionUsage.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_28 /* DefinitionUsage.swift */; }; + OBJ_1470 /* IntentionCollectionUsageAnalyzer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_29 /* IntentionCollectionUsageAnalyzer.swift */; }; + OBJ_1471 /* LocalUsageAnalyzer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_30 /* LocalUsageAnalyzer.swift */; }; + OBJ_1472 /* LocalUsageAnalyzerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_31 /* LocalUsageAnalyzerType.swift */; }; + OBJ_1473 /* UsageAnalysis.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_32 /* UsageAnalysis.swift */; }; + OBJ_1475 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_1476 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_1477 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_1478 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_1479 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_1480 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_1481 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_1482 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_1483 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_1484 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_1485 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_1486 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_1487 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_1488 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_1489 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_1490 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_1491 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_1492 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_1493 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_1494 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_1540 /* CallGraph+CreationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_711 /* CallGraph+CreationTests.swift */; }; + OBJ_1541 /* CallGraphTestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_712 /* CallGraphTestUtils.swift */; }; + OBJ_1542 /* CallGraphTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_713 /* CallGraphTests.swift */; }; + OBJ_1543 /* ControlFlowGraph+CreationExpTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_715 /* ControlFlowGraph+CreationExpTests.swift */; }; + OBJ_1544 /* ControlFlowGraph+CreationStmtTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_716 /* ControlFlowGraph+CreationStmtTests.swift */; }; + OBJ_1545 /* ControlFlowGraph+CreationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_717 /* ControlFlowGraph+CreationTests.swift */; }; + OBJ_1546 /* ControlFlowGraphTestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_718 /* ControlFlowGraphTestUtils.swift */; }; + OBJ_1547 /* DefinitionTypePropagatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_719 /* DefinitionTypePropagatorTests.swift */; }; + OBJ_1548 /* DirectedGraphTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_720 /* DirectedGraphTests.swift */; }; + OBJ_1549 /* Graphviz+TestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_721 /* Graphviz+TestUtils.swift */; }; + OBJ_1550 /* ReachingDefinitionAnalyzerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_722 /* ReachingDefinitionAnalyzerTests.swift */; }; + OBJ_1551 /* BaseUsageAnalyzerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_724 /* BaseUsageAnalyzerTests.swift */; }; + OBJ_1552 /* IntentionCollectionUsageAnalyzerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_725 /* IntentionCollectionUsageAnalyzerTests.swift */; }; + OBJ_1553 /* LocalUsageAnalyzerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_726 /* LocalUsageAnalyzerTests.swift */; }; + OBJ_1554 /* UsageAnalysisTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_727 /* UsageAnalysisTests.swift */; }; + OBJ_1556 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_1557 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_1558 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_1559 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_1560 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_1561 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_1562 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_1563 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_1564 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_1565 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_1566 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_1567 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_1568 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_1569 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_1570 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_1571 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_1572 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_1573 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_1574 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_1575 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_1576 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_1577 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_1578 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_1579 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_1580 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_1581 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_1582 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_1583 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_1584 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_1585 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_1586 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_1587 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_1588 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_1589 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_1590 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_1591 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_1592 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_1593 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_1594 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_1595 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_1596 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_1662 /* ANTLRErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1130 /* ANTLRErrorListener.swift */; }; + OBJ_1663 /* ANTLRErrorStrategy.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1131 /* ANTLRErrorStrategy.swift */; }; + OBJ_1664 /* ANTLRFileStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1132 /* ANTLRFileStream.swift */; }; + OBJ_1665 /* ANTLRInputStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1133 /* ANTLRInputStream.swift */; }; + OBJ_1666 /* BailErrorStrategy.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1134 /* BailErrorStrategy.swift */; }; + OBJ_1667 /* BaseErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1135 /* BaseErrorListener.swift */; }; + OBJ_1668 /* BufferedTokenStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1136 /* BufferedTokenStream.swift */; }; + OBJ_1669 /* CharStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1137 /* CharStream.swift */; }; + OBJ_1670 /* CommonToken.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1138 /* CommonToken.swift */; }; + OBJ_1671 /* CommonTokenFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1139 /* CommonTokenFactory.swift */; }; + OBJ_1672 /* CommonTokenStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1140 /* CommonTokenStream.swift */; }; + OBJ_1673 /* ConsoleErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1141 /* ConsoleErrorListener.swift */; }; + OBJ_1674 /* DefaultErrorStrategy.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1142 /* DefaultErrorStrategy.swift */; }; + OBJ_1675 /* DiagnosticErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1143 /* DiagnosticErrorListener.swift */; }; + OBJ_1676 /* FailedPredicateException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1144 /* FailedPredicateException.swift */; }; + OBJ_1677 /* InputMismatchException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1145 /* InputMismatchException.swift */; }; + OBJ_1678 /* IntStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1146 /* IntStream.swift */; }; + OBJ_1679 /* InterpreterRuleContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1147 /* InterpreterRuleContext.swift */; }; + OBJ_1680 /* Lexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1148 /* Lexer.swift */; }; + OBJ_1681 /* LexerInterpreter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1149 /* LexerInterpreter.swift */; }; + OBJ_1682 /* LexerNoViableAltException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1150 /* LexerNoViableAltException.swift */; }; + OBJ_1683 /* ListTokenSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1151 /* ListTokenSource.swift */; }; + OBJ_1684 /* NoViableAltException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1152 /* NoViableAltException.swift */; }; + OBJ_1685 /* Parser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1153 /* Parser.swift */; }; + OBJ_1686 /* ParserInterpreter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1154 /* ParserInterpreter.swift */; }; + OBJ_1687 /* ParserRuleContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1155 /* ParserRuleContext.swift */; }; + OBJ_1688 /* ProxyErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1156 /* ProxyErrorListener.swift */; }; + OBJ_1689 /* RecognitionException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1157 /* RecognitionException.swift */; }; + OBJ_1690 /* Recognizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1158 /* Recognizer.swift */; }; + OBJ_1691 /* RuleContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1159 /* RuleContext.swift */; }; + OBJ_1692 /* RuntimeMetaData.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1160 /* RuntimeMetaData.swift */; }; + OBJ_1693 /* Token.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1161 /* Token.swift */; }; + OBJ_1694 /* TokenFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1162 /* TokenFactory.swift */; }; + OBJ_1695 /* TokenSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1163 /* TokenSource.swift */; }; + OBJ_1696 /* TokenStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1164 /* TokenStream.swift */; }; + OBJ_1697 /* TokenStreamRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1165 /* TokenStreamRewriter.swift */; }; + OBJ_1698 /* UnbufferedCharStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1166 /* UnbufferedCharStream.swift */; }; + OBJ_1699 /* UnbufferedTokenStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1167 /* UnbufferedTokenStream.swift */; }; + OBJ_1700 /* VocabularySingle.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1168 /* VocabularySingle.swift */; }; + OBJ_1701 /* WritableToken.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1169 /* WritableToken.swift */; }; + OBJ_1702 /* ATN.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1171 /* ATN.swift */; }; + OBJ_1703 /* ATNConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1172 /* ATNConfig.swift */; }; + OBJ_1704 /* ATNConfigSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1173 /* ATNConfigSet.swift */; }; + OBJ_1705 /* ATNDeserializationOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1174 /* ATNDeserializationOptions.swift */; }; + OBJ_1706 /* ATNDeserializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1175 /* ATNDeserializer.swift */; }; + OBJ_1707 /* ATNSimulator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1176 /* ATNSimulator.swift */; }; + OBJ_1708 /* ATNState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1177 /* ATNState.swift */; }; + OBJ_1709 /* ATNType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1178 /* ATNType.swift */; }; + OBJ_1710 /* AbstractPredicateTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1179 /* AbstractPredicateTransition.swift */; }; + OBJ_1711 /* ActionTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1180 /* ActionTransition.swift */; }; + OBJ_1712 /* AmbiguityInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1181 /* AmbiguityInfo.swift */; }; + OBJ_1713 /* ArrayPredictionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1182 /* ArrayPredictionContext.swift */; }; + OBJ_1714 /* AtomTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1183 /* AtomTransition.swift */; }; + OBJ_1715 /* BasicBlockStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1184 /* BasicBlockStartState.swift */; }; + OBJ_1716 /* BasicState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1185 /* BasicState.swift */; }; + OBJ_1717 /* BlockEndState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1186 /* BlockEndState.swift */; }; + OBJ_1718 /* BlockStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1187 /* BlockStartState.swift */; }; + OBJ_1719 /* ContextSensitivityInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1188 /* ContextSensitivityInfo.swift */; }; + OBJ_1720 /* DecisionEventInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1189 /* DecisionEventInfo.swift */; }; + OBJ_1721 /* DecisionInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1190 /* DecisionInfo.swift */; }; + OBJ_1722 /* DecisionState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1191 /* DecisionState.swift */; }; + OBJ_1723 /* DefaultATNConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1192 /* DefaultATNConfig.swift */; }; + OBJ_1724 /* EmptyPredictionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1193 /* EmptyPredictionContext.swift */; }; + OBJ_1725 /* EpsilonTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1194 /* EpsilonTransition.swift */; }; + OBJ_1726 /* ErrorInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1195 /* ErrorInfo.swift */; }; + OBJ_1727 /* LL1Analyzer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1196 /* LL1Analyzer.swift */; }; + OBJ_1728 /* LexerATNConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1197 /* LexerATNConfig.swift */; }; + OBJ_1729 /* LexerATNSimulator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1198 /* LexerATNSimulator.swift */; }; + OBJ_1730 /* LexerAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1199 /* LexerAction.swift */; }; + OBJ_1731 /* LexerActionExecutor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1200 /* LexerActionExecutor.swift */; }; + OBJ_1732 /* LexerActionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1201 /* LexerActionType.swift */; }; + OBJ_1733 /* LexerChannelAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1202 /* LexerChannelAction.swift */; }; + OBJ_1734 /* LexerCustomAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1203 /* LexerCustomAction.swift */; }; + OBJ_1735 /* LexerIndexedCustomAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1204 /* LexerIndexedCustomAction.swift */; }; + OBJ_1736 /* LexerModeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1205 /* LexerModeAction.swift */; }; + OBJ_1737 /* LexerMoreAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1206 /* LexerMoreAction.swift */; }; + OBJ_1738 /* LexerPopModeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1207 /* LexerPopModeAction.swift */; }; + OBJ_1739 /* LexerPushModeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1208 /* LexerPushModeAction.swift */; }; + OBJ_1740 /* LexerSkipAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1209 /* LexerSkipAction.swift */; }; + OBJ_1741 /* LexerTypeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1210 /* LexerTypeAction.swift */; }; + OBJ_1742 /* LookaheadEventInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1211 /* LookaheadEventInfo.swift */; }; + OBJ_1743 /* LookupATNConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1212 /* LookupATNConfig.swift */; }; + OBJ_1744 /* LookupDictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1213 /* LookupDictionary.swift */; }; + OBJ_1745 /* LoopEndState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1214 /* LoopEndState.swift */; }; + OBJ_1746 /* NotSetTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1215 /* NotSetTransition.swift */; }; + OBJ_1747 /* ParseInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1216 /* ParseInfo.swift */; }; + OBJ_1748 /* ParserATNSimulator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1217 /* ParserATNSimulator.swift */; }; + OBJ_1749 /* PlusBlockStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1218 /* PlusBlockStartState.swift */; }; + OBJ_1750 /* PlusLoopbackState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1219 /* PlusLoopbackState.swift */; }; + OBJ_1751 /* PrecedencePredicateTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1220 /* PrecedencePredicateTransition.swift */; }; + OBJ_1752 /* PredicateEvalInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1221 /* PredicateEvalInfo.swift */; }; + OBJ_1753 /* PredicateTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1222 /* PredicateTransition.swift */; }; + OBJ_1754 /* PredictionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1223 /* PredictionContext.swift */; }; + OBJ_1755 /* PredictionContextCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1224 /* PredictionContextCache.swift */; }; + OBJ_1756 /* PredictionMode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1225 /* PredictionMode.swift */; }; + OBJ_1757 /* ProfilingATNSimulator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1226 /* ProfilingATNSimulator.swift */; }; + OBJ_1758 /* RangeTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1227 /* RangeTransition.swift */; }; + OBJ_1759 /* RuleStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1228 /* RuleStartState.swift */; }; + OBJ_1760 /* RuleStopState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1229 /* RuleStopState.swift */; }; + OBJ_1761 /* RuleTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1230 /* RuleTransition.swift */; }; + OBJ_1762 /* SemanticContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1231 /* SemanticContext.swift */; }; + OBJ_1763 /* SetTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1232 /* SetTransition.swift */; }; + OBJ_1764 /* SingletonPredictionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1233 /* SingletonPredictionContext.swift */; }; + OBJ_1765 /* StarBlockStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1234 /* StarBlockStartState.swift */; }; + OBJ_1766 /* StarLoopEntryState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1235 /* StarLoopEntryState.swift */; }; + OBJ_1767 /* StarLoopbackState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1236 /* StarLoopbackState.swift */; }; + OBJ_1768 /* TokensStartState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1237 /* TokensStartState.swift */; }; + OBJ_1769 /* Transition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1238 /* Transition.swift */; }; + OBJ_1770 /* WildcardTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1239 /* WildcardTransition.swift */; }; + OBJ_1771 /* DFA.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1241 /* DFA.swift */; }; + OBJ_1772 /* DFASerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1242 /* DFASerializer.swift */; }; + OBJ_1773 /* DFAState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1243 /* DFAState.swift */; }; + OBJ_1774 /* LexerDFASerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1244 /* LexerDFASerializer.swift */; }; + OBJ_1775 /* BitSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1246 /* BitSet.swift */; }; + OBJ_1776 /* DoubleKeyMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1247 /* DoubleKeyMap.swift */; }; + OBJ_1777 /* IntSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1248 /* IntSet.swift */; }; + OBJ_1778 /* InterpreterDataReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1249 /* InterpreterDataReader.swift */; }; + OBJ_1779 /* Interval.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1250 /* Interval.swift */; }; + OBJ_1780 /* IntervalSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1251 /* IntervalSet.swift */; }; + OBJ_1781 /* MultiMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1252 /* MultiMap.swift */; }; + OBJ_1782 /* MurmurHash.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1253 /* MurmurHash.swift */; }; + OBJ_1783 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1254 /* Utils.swift */; }; + OBJ_1784 /* ANTLRError.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1256 /* ANTLRError.swift */; }; + OBJ_1785 /* ANTLRException.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1257 /* ANTLRException.swift */; }; + OBJ_1786 /* ArrayExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1259 /* ArrayExtension.swift */; }; + OBJ_1787 /* CharacterExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1260 /* CharacterExtension.swift */; }; + OBJ_1788 /* IntStreamExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1261 /* IntStreamExtension.swift */; }; + OBJ_1789 /* StringExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1262 /* StringExtension.swift */; }; + OBJ_1790 /* TokenExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1263 /* TokenExtension.swift */; }; + OBJ_1791 /* UUIDExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1264 /* UUIDExtension.swift */; }; + OBJ_1792 /* AtomicInt.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1266 /* AtomicInt.swift */; }; + OBJ_1793 /* CommonUtil.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1267 /* CommonUtil.swift */; }; + OBJ_1794 /* Mutex.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1268 /* Mutex.swift */; }; + OBJ_1795 /* Stack.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1269 /* Stack.swift */; }; + OBJ_1796 /* AbstractParseTreeVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1271 /* AbstractParseTreeVisitor.swift */; }; + OBJ_1797 /* ErrorNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1272 /* ErrorNode.swift */; }; + OBJ_1798 /* ParseTree.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1273 /* ParseTree.swift */; }; + OBJ_1799 /* ParseTreeListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1274 /* ParseTreeListener.swift */; }; + OBJ_1800 /* ParseTreeProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1275 /* ParseTreeProperty.swift */; }; + OBJ_1801 /* ParseTreeVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1276 /* ParseTreeVisitor.swift */; }; + OBJ_1802 /* ParseTreeWalker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1277 /* ParseTreeWalker.swift */; }; + OBJ_1803 /* RuleNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1278 /* RuleNode.swift */; }; + OBJ_1804 /* SyntaxTree.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1279 /* SyntaxTree.swift */; }; + OBJ_1805 /* TerminalNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1280 /* TerminalNode.swift */; }; + OBJ_1806 /* TerminalNodeImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1281 /* TerminalNodeImpl.swift */; }; + OBJ_1807 /* Tree.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1282 /* Tree.swift */; }; + OBJ_1808 /* Trees.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1283 /* Trees.swift */; }; + OBJ_1809 /* Chunk.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1285 /* Chunk.swift */; }; + OBJ_1810 /* ParseTreeMatch.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1286 /* ParseTreeMatch.swift */; }; + OBJ_1811 /* ParseTreePattern.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1287 /* ParseTreePattern.swift */; }; + OBJ_1812 /* ParseTreePatternMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1288 /* ParseTreePatternMatcher.swift */; }; + OBJ_1813 /* RuleTagToken.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1289 /* RuleTagToken.swift */; }; + OBJ_1814 /* TagChunk.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1290 /* TagChunk.swift */; }; + OBJ_1815 /* TextChunk.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1291 /* TextChunk.swift */; }; + OBJ_1816 /* TokenTagToken.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1292 /* TokenTagToken.swift */; }; + OBJ_1818 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_1825 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1298 /* Package.swift */; }; + OBJ_1830 /* AntlrDiagnosticsErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_34 /* AntlrDiagnosticsErrorListener.swift */; }; + OBJ_1831 /* AntlrParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_35 /* AntlrParser.swift */; }; + OBJ_1832 /* AntlrSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_36 /* AntlrSettings.swift */; }; + OBJ_1833 /* AntlrTypeAliases.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_37 /* AntlrTypeAliases.swift */; }; OBJ_1835 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; OBJ_1836 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_1837 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_1838 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_1839 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_1840 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_1841 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_1842 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_1866 /* CoreGraphicsCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_664 /* CoreGraphicsCompoundTypeTests.swift */; }; - OBJ_1867 /* FoundationCompoundTypesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_665 /* FoundationCompoundTypesTests.swift */; }; - OBJ_1868 /* FunctionInvocationTransformerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_666 /* FunctionInvocationTransformerTests.swift */; }; - OBJ_1869 /* SwiftClassInterfaceParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_667 /* SwiftClassInterfaceParserTests.swift */; }; - OBJ_1870 /* UIColorCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_668 /* UIColorCompoundTypeTests.swift */; }; - OBJ_1871 /* UIControlCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_669 /* UIControlCompoundTypeTests.swift */; }; - OBJ_1872 /* UIGestureRecognizerCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_670 /* UIGestureRecognizerCompoundTypeTests.swift */; }; - OBJ_1873 /* UILabelCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_671 /* UILabelCompoundTypeTests.swift */; }; - OBJ_1874 /* UIResponderCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_672 /* UIResponderCompoundTypeTests.swift */; }; - OBJ_1875 /* UIViewCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_673 /* UIViewCompoundTypeTests.swift */; }; - OBJ_1876 /* UIViewControllerCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_674 /* UIViewControllerCompoundTypeTests.swift */; }; - OBJ_1878 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_1879 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_1880 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_1881 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_1882 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_1883 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_1884 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_1885 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_1886 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_1887 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_1888 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_1889 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_1890 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_1891 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_1892 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_1893 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_1894 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_1895 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_1896 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_1897 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_1898 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_1899 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_1900 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_1901 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_1902 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_1903 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_1904 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_1905 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_1906 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_1907 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_1908 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_1909 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_1910 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_1911 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_1912 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_1913 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_1954 /* Console+Command.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1032 /* Console+Command.swift */; }; - OBJ_1955 /* Console+Paging.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1033 /* Console+Paging.swift */; }; - OBJ_1956 /* Console.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1034 /* Console.swift */; }; - OBJ_1957 /* ConsoleColor+Terminal.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1035 /* ConsoleColor+Terminal.swift */; }; - OBJ_1958 /* ConsoleDataProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1036 /* ConsoleDataProvider.swift */; }; - OBJ_1959 /* ConsoleMenuController.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1037 /* ConsoleMenuController.swift */; }; - OBJ_1960 /* LinuxSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1038 /* LinuxSupport.swift */; }; - OBJ_1967 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1039 /* Package.swift */; }; - OBJ_1972 /* ASTRewriterPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_61 /* ASTRewriterPass.swift */; }; - OBJ_1973 /* ASTRewriterPassApplier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_62 /* ASTRewriterPassApplier.swift */; }; - OBJ_1974 /* ASTRewriterPassContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_63 /* ASTRewriterPassContext.swift */; }; - OBJ_1975 /* ASTSimplifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_64 /* ASTSimplifier.swift */; }; - OBJ_1976 /* AllocInitExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_65 /* AllocInitExpressionPass.swift */; }; - OBJ_1977 /* BaseExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_66 /* BaseExpressionPass.swift */; }; - OBJ_1978 /* CanonicalNameExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_67 /* CanonicalNameExpressionPass.swift */; }; - OBJ_1979 /* CompoundTypeApplierExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_68 /* CompoundTypeApplierExpressionPass.swift */; }; - OBJ_1980 /* CoreGraphicsExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_69 /* CoreGraphicsExpressionPass.swift */; }; - OBJ_1981 /* EnumRewriterExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_70 /* EnumRewriterExpressionPass.swift */; }; - OBJ_1982 /* FoundationExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_71 /* FoundationExpressionPass.swift */; }; - OBJ_1983 /* InitRewriterExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_72 /* InitRewriterExpressionPass.swift */; }; - OBJ_1984 /* LocalConstantPromotionExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_73 /* LocalConstantPromotionExpressionPass.swift */; }; - OBJ_1985 /* MethodInvocationTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_74 /* MethodInvocationTransformer.swift */; }; - OBJ_1986 /* MethodsToPropertyTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_75 /* MethodsToPropertyTransformer.swift */; }; - OBJ_1987 /* NilValueTransformationsPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_76 /* NilValueTransformationsPass.swift */; }; - OBJ_1988 /* NumberCommonsExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_77 /* NumberCommonsExpressionPass.swift */; }; - OBJ_1989 /* PropertyAsMethodAccessCorrectingExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_78 /* PropertyAsMethodAccessCorrectingExpressionPass.swift */; }; - OBJ_1990 /* PropertyInvocationTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_79 /* PropertyInvocationTransformer.swift */; }; - OBJ_1991 /* StaticConstructorTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_80 /* StaticConstructorTransformer.swift */; }; - OBJ_1992 /* UIKitExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_81 /* UIKitExpressionPass.swift */; }; - OBJ_1993 /* ValueTransformer+PostfixTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_82 /* ValueTransformer+PostfixTransformer.swift */; }; - OBJ_1994 /* VariableNullabilityPromotionExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_83 /* VariableNullabilityPromotionExpressionPass.swift */; }; - OBJ_1996 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_1997 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_1998 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_1999 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_2000 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_2001 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_2002 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_2003 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_2004 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_2005 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_2006 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2007 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_2008 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2009 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2010 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2011 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2012 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2013 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2014 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2015 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2016 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2043 /* ASTRewriterPassApplierTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_676 /* ASTRewriterPassApplierTests.swift */; }; - OBJ_2044 /* ASTSimplifierTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_677 /* ASTSimplifierTests.swift */; }; - OBJ_2045 /* ObjectiveCExpressionPassTestAdapter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_679 /* ObjectiveCExpressionPassTestAdapter.swift */; }; - OBJ_2046 /* AllocInitExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_680 /* AllocInitExpressionPassTests.swift */; }; - OBJ_2047 /* CanonicalNameExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_681 /* CanonicalNameExpressionPassTests.swift */; }; - OBJ_2048 /* CompoundTypeApplierExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_682 /* CompoundTypeApplierExpressionPassTests.swift */; }; - OBJ_2049 /* CoreGraphicsExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_683 /* CoreGraphicsExpressionPassTests.swift */; }; - OBJ_2050 /* EnumRewriterExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_684 /* EnumRewriterExpressionPassTests.swift */; }; - OBJ_2051 /* ExpressionPassTestCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_685 /* ExpressionPassTestCase.swift */; }; - OBJ_2052 /* FoundationExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_686 /* FoundationExpressionPassTests.swift */; }; - OBJ_2053 /* InitRewriterExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_687 /* InitRewriterExpressionPassTests.swift */; }; - OBJ_2054 /* LocalConstantPromotionExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_688 /* LocalConstantPromotionExpressionPassTests.swift */; }; - OBJ_2055 /* NilValueTransformationsPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_689 /* NilValueTransformationsPassTests.swift */; }; - OBJ_2056 /* NumberCommonsExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_690 /* NumberCommonsExpressionPassTests.swift */; }; - OBJ_2057 /* PropertyAsMethodAccessCorrectingExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_691 /* PropertyAsMethodAccessCorrectingExpressionPassTests.swift */; }; - OBJ_2058 /* UIKitExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_692 /* UIKitExpressionPassTests.swift */; }; - OBJ_2059 /* VariableNullabilityPromotionExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_693 /* VariableNullabilityPromotionExpressionPassTests.swift */; }; - OBJ_2061 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_2062 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_2063 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_2064 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_2065 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_2066 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_2067 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_2068 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_2069 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_2070 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_2071 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_2072 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_2073 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_2074 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_2075 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_2076 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_2077 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_2078 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_2079 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_2080 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_2081 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_2082 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_2083 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_2084 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_2085 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_2086 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_2087 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_2088 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2089 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_2090 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2091 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2092 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2093 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2094 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2095 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2096 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2097 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2098 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2141 /* BaseGlobalsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_85 /* BaseGlobalsProvider.swift */; }; - OBJ_2142 /* CLibGlobalsProviders.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_86 /* CLibGlobalsProviders.swift */; }; - OBJ_2143 /* CompoundedMappingTypesGlobalsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_87 /* CompoundedMappingTypesGlobalsProvider.swift */; }; - OBJ_2144 /* DefaultGlobalsProvidersSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_88 /* DefaultGlobalsProvidersSource.swift */; }; - OBJ_2145 /* OpenGLESGlobalsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_89 /* OpenGLESGlobalsProvider.swift */; }; - OBJ_2146 /* UIKitGlobalsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_90 /* UIKitGlobalsProvider.swift */; }; - OBJ_2148 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_2149 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_2150 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_2151 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_2152 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_2153 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_2154 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_2155 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_2156 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2157 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_2158 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2159 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2160 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2161 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2162 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2163 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2164 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2165 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2166 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2191 /* BaseGlobalsProviderTestCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_695 /* BaseGlobalsProviderTestCase.swift */; }; - OBJ_2192 /* CLibGlobalsProvidersTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_696 /* CLibGlobalsProvidersTests.swift */; }; - OBJ_2193 /* DefaultGlobalsProvidersSourceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_697 /* DefaultGlobalsProvidersSourceTests.swift */; }; - OBJ_2194 /* OpenGLESGlobalsProviderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_698 /* OpenGLESGlobalsProviderTests.swift */; }; - OBJ_2195 /* UIKitGlobalsProviderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_699 /* UIKitGlobalsProviderTests.swift */; }; - OBJ_2197 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_2198 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_2199 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_2200 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_2201 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_2202 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_2203 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_2204 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_2205 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_2206 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_2207 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_2208 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_2209 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_2210 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_2211 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_2212 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_2213 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_2214 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_2215 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_2216 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_2217 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_2218 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_2219 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_2220 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_2221 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_2222 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_2223 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_2224 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2225 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_2226 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2227 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2228 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2229 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2230 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2231 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2232 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2233 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2234 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2277 /* ASTNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_92 /* ASTNode.swift */; }; - OBJ_2278 /* ASTVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_93 /* ASTVisitor.swift */; }; - OBJ_2279 /* CommentQuerier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_94 /* CommentQuerier.swift */; }; - OBJ_2280 /* RawCodeComment.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_95 /* RawCodeComment.swift */; }; - OBJ_2282 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2283 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2284 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2293 /* GrammarModelBaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_701 /* GrammarModelBaseTests.swift */; }; - OBJ_2295 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2296 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2297 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2298 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2307 /* GraphViz+Attribute.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_97 /* GraphViz+Attribute.swift */; }; - OBJ_2308 /* GraphViz+GraphAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_98 /* GraphViz+GraphAttributes.swift */; }; - OBJ_2309 /* GraphViz.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_99 /* GraphViz.swift */; }; - OBJ_2316 /* GraphViz+GraphAttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_703 /* GraphViz+GraphAttributesTests.swift */; }; - OBJ_2317 /* GraphVizTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_704 /* GraphVizTests.swift */; }; - OBJ_2319 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_2320 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_2321 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_2322 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_2323 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_2324 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_2325 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_2326 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_2327 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_2328 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_2329 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_2330 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_2331 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_2332 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_2333 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_2334 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_2335 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_2336 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_2337 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_2338 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_2339 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_2340 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_2341 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_1837 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_1846 /* BashCompletionsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1302 /* BashCompletionsGenerator.swift */; }; + OBJ_1847 /* CompletionsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1303 /* CompletionsGenerator.swift */; }; + OBJ_1848 /* FishCompletionsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1304 /* FishCompletionsGenerator.swift */; }; + OBJ_1849 /* ZshCompletionsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1305 /* ZshCompletionsGenerator.swift */; }; + OBJ_1850 /* Argument.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1307 /* Argument.swift */; }; + OBJ_1851 /* ArgumentHelp.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1308 /* ArgumentHelp.swift */; }; + OBJ_1852 /* ArgumentVisibility.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1309 /* ArgumentVisibility.swift */; }; + OBJ_1853 /* CompletionKind.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1310 /* CompletionKind.swift */; }; + OBJ_1854 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1311 /* Errors.swift */; }; + OBJ_1855 /* Flag.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1312 /* Flag.swift */; }; + OBJ_1856 /* NameSpecification.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1313 /* NameSpecification.swift */; }; + OBJ_1857 /* Option.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1314 /* Option.swift */; }; + OBJ_1858 /* OptionGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1315 /* OptionGroup.swift */; }; + OBJ_1859 /* AsyncParsableCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1317 /* AsyncParsableCommand.swift */; }; + OBJ_1860 /* CommandConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1318 /* CommandConfiguration.swift */; }; + OBJ_1861 /* EnumerableFlag.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1319 /* EnumerableFlag.swift */; }; + OBJ_1862 /* ExpressibleByArgument.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1320 /* ExpressibleByArgument.swift */; }; + OBJ_1863 /* ParsableArguments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1321 /* ParsableArguments.swift */; }; + OBJ_1864 /* ParsableArgumentsValidation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1322 /* ParsableArgumentsValidation.swift */; }; + OBJ_1865 /* ParsableCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1323 /* ParsableCommand.swift */; }; + OBJ_1866 /* ArgumentDecoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1325 /* ArgumentDecoder.swift */; }; + OBJ_1867 /* ArgumentDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1326 /* ArgumentDefinition.swift */; }; + OBJ_1868 /* ArgumentSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1327 /* ArgumentSet.swift */; }; + OBJ_1869 /* CommandParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1328 /* CommandParser.swift */; }; + OBJ_1870 /* InputOrigin.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1329 /* InputOrigin.swift */; }; + OBJ_1871 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1330 /* Name.swift */; }; + OBJ_1872 /* Parsed.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1331 /* Parsed.swift */; }; + OBJ_1873 /* ParsedValues.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1332 /* ParsedValues.swift */; }; + OBJ_1874 /* ParserError.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1333 /* ParserError.swift */; }; + OBJ_1875 /* SplitArguments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1334 /* SplitArguments.swift */; }; + OBJ_1876 /* DumpHelpGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1336 /* DumpHelpGenerator.swift */; }; + OBJ_1877 /* HelpCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1337 /* HelpCommand.swift */; }; + OBJ_1878 /* HelpGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1338 /* HelpGenerator.swift */; }; + OBJ_1879 /* MessageInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1339 /* MessageInfo.swift */; }; + OBJ_1880 /* UsageGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1340 /* UsageGenerator.swift */; }; + OBJ_1881 /* CollectionExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1342 /* CollectionExtensions.swift */; }; + OBJ_1882 /* SequenceExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1343 /* SequenceExtensions.swift */; }; + OBJ_1883 /* StringExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1344 /* StringExtensions.swift */; }; + OBJ_1884 /* Tree.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1345 /* Tree.swift */; }; + OBJ_1886 /* ArgumentParserToolInfo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParserToolInfo::Product /* ArgumentParserToolInfo.framework */; }; + OBJ_1893 /* ToolInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1347 /* ToolInfo.swift */; }; + OBJ_1899 /* atomic.c in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1294 /* atomic.c */; }; + OBJ_1905 /* ArgumentRewritingStrategy.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_39 /* ArgumentRewritingStrategy.swift */; }; + OBJ_1906 /* CompoundedMappingType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_40 /* CompoundedMappingType.swift */; }; + OBJ_1907 /* CompoundedMappingTypeList.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_41 /* CompoundedMappingTypeList.swift */; }; + OBJ_1908 /* CoreGraphicsCompoundTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_42 /* CoreGraphicsCompoundTypes.swift */; }; + OBJ_1909 /* FoundationCompoundTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_43 /* FoundationCompoundTypes.swift */; }; + OBJ_1910 /* FunctionInvocationTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_44 /* FunctionInvocationTransformer.swift */; }; + OBJ_1911 /* Helpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_45 /* Helpers.swift */; }; + OBJ_1912 /* IncompleteKnownType+CompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_46 /* IncompleteKnownType+CompoundType.swift */; }; + OBJ_1913 /* MethodInvocationRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_47 /* MethodInvocationRewriter.swift */; }; + OBJ_1914 /* PostfixInvocationTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_48 /* PostfixInvocationTransformer.swift */; }; + OBJ_1915 /* PostfixTransformation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_49 /* PostfixTransformation.swift */; }; + OBJ_1916 /* SignatureMapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_50 /* SignatureMapper.swift */; }; + OBJ_1917 /* SwiftAttributeTransformationsExtractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_51 /* SwiftAttributeTransformationsExtractor.swift */; }; + OBJ_1918 /* SwiftClassInterfaceParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_52 /* SwiftClassInterfaceParser.swift */; }; + OBJ_1919 /* UIColorCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_53 /* UIColorCompoundType.swift */; }; + OBJ_1920 /* UIControlCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_54 /* UIControlCompoundType.swift */; }; + OBJ_1921 /* UIGestureRecognizerCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_55 /* UIGestureRecognizerCompoundType.swift */; }; + OBJ_1922 /* UILabelCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_56 /* UILabelCompoundType.swift */; }; + OBJ_1923 /* UIResponderCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_57 /* UIResponderCompoundType.swift */; }; + OBJ_1924 /* UIViewCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_58 /* UIViewCompoundType.swift */; }; + OBJ_1925 /* UIViewControllerCompoundType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_59 /* UIViewControllerCompoundType.swift */; }; + OBJ_1927 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_1928 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_1929 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_1930 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_1931 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_1932 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_1933 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_1934 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_1935 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_1936 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_1937 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_1938 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_1939 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_1940 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_1941 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_1942 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_1943 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_1944 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_1968 /* CoreGraphicsCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_729 /* CoreGraphicsCompoundTypeTests.swift */; }; + OBJ_1969 /* FoundationCompoundTypesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_730 /* FoundationCompoundTypesTests.swift */; }; + OBJ_1970 /* FunctionInvocationTransformerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_731 /* FunctionInvocationTransformerTests.swift */; }; + OBJ_1971 /* SwiftClassInterfaceParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_732 /* SwiftClassInterfaceParserTests.swift */; }; + OBJ_1972 /* UIColorCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_733 /* UIColorCompoundTypeTests.swift */; }; + OBJ_1973 /* UIControlCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_734 /* UIControlCompoundTypeTests.swift */; }; + OBJ_1974 /* UIGestureRecognizerCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_735 /* UIGestureRecognizerCompoundTypeTests.swift */; }; + OBJ_1975 /* UILabelCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_736 /* UILabelCompoundTypeTests.swift */; }; + OBJ_1976 /* UIResponderCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_737 /* UIResponderCompoundTypeTests.swift */; }; + OBJ_1977 /* UIViewCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_738 /* UIViewCompoundTypeTests.swift */; }; + OBJ_1978 /* UIViewControllerCompoundTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_739 /* UIViewControllerCompoundTypeTests.swift */; }; + OBJ_1980 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_1981 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_1982 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_1983 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_1984 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_1985 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_1986 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_1987 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_1988 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_1989 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_1990 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_1991 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_1992 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_1993 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_1994 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_1995 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_1996 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_1997 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_1998 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_1999 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_2000 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_2001 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_2002 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_2003 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2004 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_2005 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_2006 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_2007 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2008 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2009 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_2010 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_2011 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2012 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2013 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2014 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2015 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2016 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2017 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2018 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2062 /* Console+Command.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1120 /* Console+Command.swift */; }; + OBJ_2063 /* Console+Paging.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1121 /* Console+Paging.swift */; }; + OBJ_2064 /* Console.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1122 /* Console.swift */; }; + OBJ_2065 /* ConsoleColor+Terminal.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1123 /* ConsoleColor+Terminal.swift */; }; + OBJ_2066 /* ConsoleDataProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1124 /* ConsoleDataProvider.swift */; }; + OBJ_2067 /* ConsoleMenuController.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1125 /* ConsoleMenuController.swift */; }; + OBJ_2068 /* LinuxSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1126 /* LinuxSupport.swift */; }; + OBJ_2075 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1127 /* Package.swift */; }; + OBJ_2080 /* ASTRewriterPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_61 /* ASTRewriterPass.swift */; }; + OBJ_2081 /* ASTRewriterPassApplier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_62 /* ASTRewriterPassApplier.swift */; }; + OBJ_2082 /* ASTRewriterPassContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_63 /* ASTRewriterPassContext.swift */; }; + OBJ_2083 /* ASTSimplifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_64 /* ASTSimplifier.swift */; }; + OBJ_2084 /* AllocInitExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_65 /* AllocInitExpressionPass.swift */; }; + OBJ_2085 /* BaseExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_66 /* BaseExpressionPass.swift */; }; + OBJ_2086 /* CanonicalNameExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_67 /* CanonicalNameExpressionPass.swift */; }; + OBJ_2087 /* CompoundTypeApplierExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_68 /* CompoundTypeApplierExpressionPass.swift */; }; + OBJ_2088 /* CoreGraphicsExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_69 /* CoreGraphicsExpressionPass.swift */; }; + OBJ_2089 /* EnumRewriterExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_70 /* EnumRewriterExpressionPass.swift */; }; + OBJ_2090 /* FoundationExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_71 /* FoundationExpressionPass.swift */; }; + OBJ_2091 /* InitRewriterExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_72 /* InitRewriterExpressionPass.swift */; }; + OBJ_2092 /* LocalConstantPromotionExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_73 /* LocalConstantPromotionExpressionPass.swift */; }; + OBJ_2093 /* MethodInvocationTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_74 /* MethodInvocationTransformer.swift */; }; + OBJ_2094 /* MethodsToPropertyTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_75 /* MethodsToPropertyTransformer.swift */; }; + OBJ_2095 /* NilValueTransformationsPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_76 /* NilValueTransformationsPass.swift */; }; + OBJ_2096 /* NumberCommonsExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_77 /* NumberCommonsExpressionPass.swift */; }; + OBJ_2097 /* PropertyAsMethodAccessCorrectingExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_78 /* PropertyAsMethodAccessCorrectingExpressionPass.swift */; }; + OBJ_2098 /* PropertyInvocationTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_79 /* PropertyInvocationTransformer.swift */; }; + OBJ_2099 /* StaticConstructorTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_80 /* StaticConstructorTransformer.swift */; }; + OBJ_2100 /* UIKitExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_81 /* UIKitExpressionPass.swift */; }; + OBJ_2101 /* ValueTransformer+PostfixTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_82 /* ValueTransformer+PostfixTransformer.swift */; }; + OBJ_2102 /* VariableNullabilityPromotionExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_83 /* VariableNullabilityPromotionExpressionPass.swift */; }; + OBJ_2104 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_2105 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_2106 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_2107 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_2108 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_2109 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2110 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_2111 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_2112 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_2113 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2114 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2115 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_2116 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_2117 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2118 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2119 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2120 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2121 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2122 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2123 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2124 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2151 /* ASTRewriterPassApplierTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_741 /* ASTRewriterPassApplierTests.swift */; }; + OBJ_2152 /* ASTSimplifierTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_742 /* ASTSimplifierTests.swift */; }; + OBJ_2153 /* ObjectiveCExpressionPassTestAdapter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_744 /* ObjectiveCExpressionPassTestAdapter.swift */; }; + OBJ_2154 /* AllocInitExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_745 /* AllocInitExpressionPassTests.swift */; }; + OBJ_2155 /* CanonicalNameExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_746 /* CanonicalNameExpressionPassTests.swift */; }; + OBJ_2156 /* CompoundTypeApplierExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_747 /* CompoundTypeApplierExpressionPassTests.swift */; }; + OBJ_2157 /* CoreGraphicsExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_748 /* CoreGraphicsExpressionPassTests.swift */; }; + OBJ_2158 /* EnumRewriterExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_749 /* EnumRewriterExpressionPassTests.swift */; }; + OBJ_2159 /* ExpressionPassTestCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_750 /* ExpressionPassTestCase.swift */; }; + OBJ_2160 /* FoundationExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_751 /* FoundationExpressionPassTests.swift */; }; + OBJ_2161 /* InitRewriterExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_752 /* InitRewriterExpressionPassTests.swift */; }; + OBJ_2162 /* LocalConstantPromotionExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_753 /* LocalConstantPromotionExpressionPassTests.swift */; }; + OBJ_2163 /* NilValueTransformationsPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_754 /* NilValueTransformationsPassTests.swift */; }; + OBJ_2164 /* NumberCommonsExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_755 /* NumberCommonsExpressionPassTests.swift */; }; + OBJ_2165 /* PropertyAsMethodAccessCorrectingExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_756 /* PropertyAsMethodAccessCorrectingExpressionPassTests.swift */; }; + OBJ_2166 /* UIKitExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_757 /* UIKitExpressionPassTests.swift */; }; + OBJ_2167 /* VariableNullabilityPromotionExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_758 /* VariableNullabilityPromotionExpressionPassTests.swift */; }; + OBJ_2169 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_2170 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_2171 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_2172 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_2173 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_2174 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_2175 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_2176 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_2177 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_2178 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_2179 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_2180 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_2181 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_2182 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_2183 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_2184 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_2185 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_2186 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_2187 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_2188 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_2189 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_2190 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_2191 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_2192 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_2193 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_2194 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2195 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_2196 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_2197 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_2198 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2199 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2200 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_2201 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_2202 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2203 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2204 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2205 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2206 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2207 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2208 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2209 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2255 /* BaseGlobalsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_85 /* BaseGlobalsProvider.swift */; }; + OBJ_2256 /* CLibGlobalsProviders.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_86 /* CLibGlobalsProviders.swift */; }; + OBJ_2257 /* CompoundedMappingTypesGlobalsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_87 /* CompoundedMappingTypesGlobalsProvider.swift */; }; + OBJ_2258 /* DefaultGlobalsProvidersSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_88 /* DefaultGlobalsProvidersSource.swift */; }; + OBJ_2259 /* OpenGLESGlobalsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_89 /* OpenGLESGlobalsProvider.swift */; }; + OBJ_2260 /* UIKitGlobalsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_90 /* UIKitGlobalsProvider.swift */; }; + OBJ_2262 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_2263 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_2264 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_2265 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2266 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_2267 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_2268 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_2269 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2270 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2271 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_2272 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_2273 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2274 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2275 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2276 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2277 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2278 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2279 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2280 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2305 /* BaseGlobalsProviderTestCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_760 /* BaseGlobalsProviderTestCase.swift */; }; + OBJ_2306 /* CLibGlobalsProvidersTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_761 /* CLibGlobalsProvidersTests.swift */; }; + OBJ_2307 /* DefaultGlobalsProvidersSourceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_762 /* DefaultGlobalsProvidersSourceTests.swift */; }; + OBJ_2308 /* OpenGLESGlobalsProviderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_763 /* OpenGLESGlobalsProviderTests.swift */; }; + OBJ_2309 /* UIKitGlobalsProviderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_764 /* UIKitGlobalsProviderTests.swift */; }; + OBJ_2311 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_2312 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_2313 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_2314 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_2315 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_2316 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_2317 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_2318 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_2319 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_2320 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_2321 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_2322 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_2323 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_2324 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_2325 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_2326 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_2327 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_2328 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_2329 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_2330 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_2331 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_2332 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_2333 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_2334 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_2335 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_2336 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2337 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_2338 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_2339 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_2340 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2341 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; OBJ_2342 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; OBJ_2343 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2344 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_2345 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_2346 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2347 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2348 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2349 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_2350 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2351 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2352 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2353 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2354 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2355 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2356 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_2399 /* AnonymousIntentionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_101 /* AnonymousIntentionVisitor.swift */; }; - OBJ_2400 /* DetectNoReturnsIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_102 /* DetectNoReturnsIntentionPass.swift */; }; - OBJ_2401 /* DetectNonnullReturnsIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_103 /* DetectNonnullReturnsIntentionPass.swift */; }; - OBJ_2402 /* DetectTypePropertiesBySelfAssignmentIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_104 /* DetectTypePropertiesBySelfAssignmentIntentionPass.swift */; }; - OBJ_2403 /* FileTypeMergingIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_105 /* FileTypeMergingIntentionPass.swift */; }; - OBJ_2404 /* FunctionIntentionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_106 /* FunctionIntentionVisitor.swift */; }; - OBJ_2405 /* ImportDirectiveIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_107 /* ImportDirectiveIntentionPass.swift */; }; - OBJ_2406 /* InitAnalysisIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_108 /* InitAnalysisIntentionPass.swift */; }; - OBJ_2407 /* IntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_109 /* IntentionPass.swift */; }; - OBJ_2408 /* IntentionPassSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_110 /* IntentionPassSource.swift */; }; - OBJ_2409 /* PromoteProtocolPropertyConformanceIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_111 /* PromoteProtocolPropertyConformanceIntentionPass.swift */; }; - OBJ_2410 /* ProtocolNullabilityPropagationToConformersIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_112 /* ProtocolNullabilityPropagationToConformersIntentionPass.swift */; }; - OBJ_2411 /* RemoveEmptyExtensionsIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_113 /* RemoveEmptyExtensionsIntentionPass.swift */; }; - OBJ_2412 /* ReturnStatementVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_115 /* ReturnStatementVisitor.swift */; }; - OBJ_2413 /* ArrayIntentionPassSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_117 /* ArrayIntentionPassSource.swift */; }; - OBJ_2414 /* StoredPropertyToNominalTypesIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_118 /* StoredPropertyToNominalTypesIntentionPass.swift */; }; - OBJ_2415 /* SubscriptDeclarationIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_119 /* SubscriptDeclarationIntentionPass.swift */; }; - OBJ_2416 /* SwiftifyMethodSignaturesIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_120 /* SwiftifyMethodSignaturesIntentionPass.swift */; }; - OBJ_2417 /* TypeMerger.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_121 /* TypeMerger.swift */; }; - OBJ_2418 /* TypeVisitingIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_122 /* TypeVisitingIntentionPass.swift */; }; - OBJ_2419 /* UIKitCorrectorIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_123 /* UIKitCorrectorIntentionPass.swift */; }; - OBJ_2421 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_2422 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_2423 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_2424 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_2425 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_2426 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_2427 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_2428 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_2429 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_2430 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_2431 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2432 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_2433 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2434 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2435 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2436 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2437 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2438 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2439 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2440 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2441 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2468 /* DetectNoReturnsIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_706 /* DetectNoReturnsIntentionPassTests.swift */; }; - OBJ_2469 /* DetectNonnullReturnsIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_707 /* DetectNonnullReturnsIntentionPassTests.swift */; }; - OBJ_2470 /* DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_708 /* DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift */; }; - OBJ_2471 /* FileTypeMergingIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_709 /* FileTypeMergingIntentionPassTests.swift */; }; - OBJ_2472 /* ImportDirectiveIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_710 /* ImportDirectiveIntentionPassTests.swift */; }; - OBJ_2473 /* InitAnalysisIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_711 /* InitAnalysisIntentionPassTests.swift */; }; - OBJ_2474 /* PromoteProtocolPropertyConformanceIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_712 /* PromoteProtocolPropertyConformanceIntentionPassTests.swift */; }; - OBJ_2475 /* ProtocolNullabilityPropagationToConformersIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_713 /* ProtocolNullabilityPropagationToConformersIntentionPassTests.swift */; }; - OBJ_2476 /* RemoveEmptyExtensionsIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_714 /* RemoveEmptyExtensionsIntentionPassTests.swift */; }; - OBJ_2477 /* StoredPropertyToNominalTypesIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_715 /* StoredPropertyToNominalTypesIntentionPassTests.swift */; }; - OBJ_2478 /* SubscriptDeclarationIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_716 /* SubscriptDeclarationIntentionPassTests.swift */; }; - OBJ_2479 /* SwiftifyMethodSignaturesIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_717 /* SwiftifyMethodSignaturesIntentionPassTests.swift */; }; - OBJ_2480 /* TestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_718 /* TestUtils.swift */; }; - OBJ_2481 /* UIKitCorrectorIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_719 /* UIKitCorrectorIntentionPassTests.swift */; }; - OBJ_2483 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_2484 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_2485 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_2486 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_2487 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_2488 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_2489 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_2490 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_2491 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_2492 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_2493 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_2494 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_2495 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_2496 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_2497 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_2498 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_2499 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_2500 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_2501 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_2502 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_2503 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_2504 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_2505 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_2506 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_2507 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_2508 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_2509 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_2510 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2511 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_2512 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2513 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2514 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2515 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2516 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2517 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2518 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2519 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2520 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2563 /* BaseClassIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_125 /* BaseClassIntention.swift */; }; - OBJ_2564 /* FileLevelIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_126 /* FileLevelIntention.swift */; }; - OBJ_2565 /* FromSourceIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_127 /* FromSourceIntention.swift */; }; - OBJ_2566 /* FunctionBodyCarryingIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_128 /* FunctionBodyCarryingIntention.swift */; }; - OBJ_2567 /* FunctionBodyQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_129 /* FunctionBodyQueue.swift */; }; - OBJ_2568 /* FunctionIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_130 /* FunctionIntention.swift */; }; - OBJ_2569 /* Historic.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_132 /* Historic.swift */; }; - OBJ_2570 /* IntentionHistory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_133 /* IntentionHistory.swift */; }; - OBJ_2571 /* IntentionHistoryEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_134 /* IntentionHistoryEntry.swift */; }; - OBJ_2572 /* IntentionHistoryEntryEcho.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_135 /* IntentionHistoryEntryEcho.swift */; }; - OBJ_2573 /* IntentionHistoryTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_136 /* IntentionHistoryTracker.swift */; }; - OBJ_2574 /* InstanceVariableContainerIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_137 /* InstanceVariableContainerIntention.swift */; }; - OBJ_2575 /* Intention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_138 /* Intention.swift */; }; - OBJ_2576 /* IntentionCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_139 /* IntentionCollection.swift */; }; - OBJ_2577 /* ClassExtensionGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_141 /* ClassExtensionGenerationIntention.swift */; }; - OBJ_2578 /* ClassGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_142 /* ClassGenerationIntention.swift */; }; - OBJ_2579 /* DeinitGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_143 /* DeinitGenerationIntention.swift */; }; - OBJ_2580 /* EnumCaseGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_144 /* EnumCaseGenerationIntention.swift */; }; - OBJ_2581 /* EnumGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_145 /* EnumGenerationIntention.swift */; }; - OBJ_2582 /* FileGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_146 /* FileGenerationIntention.swift */; }; - OBJ_2583 /* FunctionBodyIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_147 /* FunctionBodyIntention.swift */; }; - OBJ_2584 /* GlobalFunctionGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_148 /* GlobalFunctionGenerationIntention.swift */; }; - OBJ_2585 /* GlobalVariableGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_149 /* GlobalVariableGenerationIntention.swift */; }; - OBJ_2586 /* GlobalVariableInitialValueIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_150 /* GlobalVariableInitialValueIntention.swift */; }; - OBJ_2587 /* InitGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_151 /* InitGenerationIntention.swift */; }; - OBJ_2588 /* InstanceVariableGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_152 /* InstanceVariableGenerationIntention.swift */; }; - OBJ_2589 /* MethodGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_153 /* MethodGenerationIntention.swift */; }; - OBJ_2590 /* PropertyGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_154 /* PropertyGenerationIntention.swift */; }; - OBJ_2591 /* PropertyInitialValueGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_155 /* PropertyInitialValueGenerationIntention.swift */; }; - OBJ_2592 /* PropertySynthesizationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_156 /* PropertySynthesizationIntention.swift */; }; - OBJ_2593 /* ProtocolGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_157 /* ProtocolGenerationIntention.swift */; }; - OBJ_2594 /* ProtocolInheritanceIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_158 /* ProtocolInheritanceIntention.swift */; }; - OBJ_2595 /* ProtocolMethodGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_159 /* ProtocolMethodGenerationIntention.swift */; }; - OBJ_2596 /* ProtocolPropertyGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_160 /* ProtocolPropertyGenerationIntention.swift */; }; - OBJ_2597 /* StructGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_161 /* StructGenerationIntention.swift */; }; - OBJ_2598 /* SubscriptGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_162 /* SubscriptGenerationIntention.swift */; }; - OBJ_2599 /* TypealiasIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_163 /* TypealiasIntention.swift */; }; - OBJ_2600 /* KnownType+IntentionBuild.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_164 /* KnownType+IntentionBuild.swift */; }; - OBJ_2601 /* MemberGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_165 /* MemberGenerationIntention.swift */; }; - OBJ_2602 /* SerializableMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_167 /* SerializableMetadata.swift */; }; - OBJ_2603 /* SerializableMetadataEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_168 /* SerializableMetadataEntry.swift */; }; - OBJ_2604 /* SerializableMetadataSerializerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_169 /* SerializableMetadataSerializerType.swift */; }; - OBJ_2605 /* NonNullScopedIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_170 /* NonNullScopedIntention.swift */; }; - OBJ_2606 /* OverridableMemberGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_171 /* OverridableMemberGenerationIntention.swift */; }; - OBJ_2607 /* IntentionSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_173 /* IntentionSerializer.swift */; }; - OBJ_2608 /* KeyedDecodingContainerProtocol+Intention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_174 /* KeyedDecodingContainerProtocol+Intention.swift */; }; - OBJ_2609 /* KeyedEncodingContainerProtocol+Intention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_175 /* KeyedEncodingContainerProtocol+Intention.swift */; }; - OBJ_2610 /* UnkeyedDecodingContainer+Intention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_176 /* UnkeyedDecodingContainer+Intention.swift */; }; - OBJ_2611 /* UnkeyedEncodingContainer+Intention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_177 /* UnkeyedEncodingContainer+Intention.swift */; }; - OBJ_2612 /* StatementContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_178 /* StatementContainer.swift */; }; - OBJ_2613 /* TypeFormatter+Intentions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_179 /* TypeFormatter+Intentions.swift */; }; - OBJ_2614 /* TypeGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_180 /* TypeGenerationIntention.swift */; }; - OBJ_2615 /* ValueStorageIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_181 /* ValueStorageIntention.swift */; }; - OBJ_2616 /* AnonymousIntentionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_183 /* AnonymousIntentionVisitor.swift */; }; - OBJ_2617 /* IntentionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_184 /* IntentionVisitor.swift */; }; - OBJ_2619 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_2620 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2621 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2622 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2623 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2624 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2625 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2626 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2627 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2628 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2644 /* FromSourceIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_721 /* FromSourceIntentionTests.swift */; }; - OBJ_2645 /* FunctionBodyQueueTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_722 /* FunctionBodyQueueTests.swift */; }; - OBJ_2646 /* Intention+FileTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_723 /* Intention+FileTests.swift */; }; - OBJ_2647 /* ClassExtensionGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_725 /* ClassExtensionGenerationIntentionTests.swift */; }; - OBJ_2648 /* ClassGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_726 /* ClassGenerationIntentionTests.swift */; }; - OBJ_2649 /* DeinitGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_727 /* DeinitGenerationIntentionTests.swift */; }; - OBJ_2650 /* EnumCaseGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_728 /* EnumCaseGenerationIntentionTests.swift */; }; - OBJ_2651 /* EnumGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_729 /* EnumGenerationIntentionTests.swift */; }; - OBJ_2652 /* FileGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_730 /* FileGenerationIntentionTests.swift */; }; - OBJ_2653 /* FunctionBodyIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_731 /* FunctionBodyIntentionTests.swift */; }; - OBJ_2654 /* GlobalFunctionGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_732 /* GlobalFunctionGenerationIntentionTests.swift */; }; - OBJ_2655 /* GlobalVariableGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_733 /* GlobalVariableGenerationIntentionTests.swift */; }; - OBJ_2656 /* GlobalVariableInitialValueIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_734 /* GlobalVariableInitialValueIntentionTests.swift */; }; - OBJ_2657 /* InitGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_735 /* InitGenerationIntentionTests.swift */; }; - OBJ_2658 /* InstanceVariableGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_736 /* InstanceVariableGenerationIntentionTests.swift */; }; - OBJ_2659 /* MethodGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_737 /* MethodGenerationIntentionTests.swift */; }; - OBJ_2660 /* PropertyGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_738 /* PropertyGenerationIntentionTests.swift */; }; - OBJ_2661 /* PropertyInitialValueGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_739 /* PropertyInitialValueGenerationIntentionTests.swift */; }; - OBJ_2662 /* PropertySynthesizationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_740 /* PropertySynthesizationIntentionTests.swift */; }; - OBJ_2663 /* ProtocolGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_741 /* ProtocolGenerationIntentionTests.swift */; }; - OBJ_2664 /* ProtocolInheritanceIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_742 /* ProtocolInheritanceIntentionTests.swift */; }; - OBJ_2665 /* ProtocolMethodGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_743 /* ProtocolMethodGenerationIntentionTests.swift */; }; - OBJ_2666 /* ProtocolPropertyGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_744 /* ProtocolPropertyGenerationIntentionTests.swift */; }; - OBJ_2667 /* StructGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_745 /* StructGenerationIntentionTests.swift */; }; - OBJ_2668 /* SubscriptGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_746 /* SubscriptGenerationIntentionTests.swift */; }; - OBJ_2669 /* TypealiasIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_747 /* TypealiasIntentionTests.swift */; }; - OBJ_2670 /* IntentionSerializerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_749 /* IntentionSerializerTests.swift */; }; - OBJ_2671 /* TestIntentionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_751 /* TestIntentionVisitor.swift */; }; - OBJ_2673 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_2674 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_2675 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_2676 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_2677 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_2678 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_2679 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_2680 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_2681 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_2682 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_2683 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_2684 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_2685 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_2686 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_2687 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_2688 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_2689 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_2690 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_2691 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_2692 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_2693 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_2694 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_2695 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_2696 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_2697 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_2698 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2699 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_2700 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_2701 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_2702 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2703 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2704 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2705 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2706 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2707 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2708 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2709 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2710 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2753 /* AttributeTaggableObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_186 /* AttributeTaggableObject.swift */; }; - OBJ_2754 /* KnownAttribute.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_187 /* KnownAttribute.swift */; }; - OBJ_2755 /* KnownDeclaration.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_188 /* KnownDeclaration.swift */; }; - OBJ_2756 /* KnownFile+Equality.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_189 /* KnownFile+Equality.swift */; }; - OBJ_2757 /* KnownFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_190 /* KnownFile.swift */; }; - OBJ_2758 /* KnownFileBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_191 /* KnownFileBuilder.swift */; }; - OBJ_2759 /* KnownType+Equality.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_192 /* KnownType+Equality.swift */; }; - OBJ_2760 /* KnownType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_193 /* KnownType.swift */; }; - OBJ_2761 /* KnownTypeBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_194 /* KnownTypeBuilder.swift */; }; - OBJ_2762 /* KnownTypeSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_195 /* KnownTypeSerializer.swift */; }; - OBJ_2763 /* Semantic.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_196 /* Semantic.swift */; }; - OBJ_2764 /* SemanticalObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_197 /* SemanticalObject.swift */; }; - OBJ_2765 /* Semantics.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_198 /* Semantics.swift */; }; - OBJ_2766 /* TypeFormatter+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_199 /* TypeFormatter+Ext.swift */; }; - OBJ_2768 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2769 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2770 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2771 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2772 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2773 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2785 /* KnownFileBuilderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_753 /* KnownFileBuilderTests.swift */; }; - OBJ_2786 /* KnownTypeSerializerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_754 /* KnownTypeSerializerTests.swift */; }; - OBJ_2787 /* TypeFormatter+ExtTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_755 /* TypeFormatter+ExtTests.swift */; }; - OBJ_2789 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_2790 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_2791 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_2792 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_2793 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_2794 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_2795 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_2796 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_2797 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_2798 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_2799 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_2800 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_2801 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_2802 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_2803 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_2804 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_2805 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_2806 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_2807 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_2808 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_2809 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_2810 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_2811 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_2812 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_2813 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_2814 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2815 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_2816 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_2817 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2818 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2819 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2820 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_2821 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_2822 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_2823 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_2824 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_2825 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_2826 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2869 /* GrammarRules+Operators.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1265 /* GrammarRules+Operators.swift */; }; - OBJ_2870 /* GrammarRules.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1266 /* GrammarRules.swift */; }; - OBJ_2871 /* Lexer+Advance.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1267 /* Lexer+Advance.swift */; }; - OBJ_2872 /* Lexer+AdvancedParsing.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1268 /* Lexer+AdvancedParsing.swift */; }; - OBJ_2873 /* Lexer+Consume.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1269 /* Lexer+Consume.swift */; }; - OBJ_2874 /* Lexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1270 /* Lexer.swift */; }; - OBJ_2875 /* TokenProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1271 /* TokenProtocol.swift */; }; - OBJ_2876 /* TokenizerLexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1272 /* TokenizerLexer.swift */; }; - OBJ_2883 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1276 /* Package.swift */; }; - OBJ_2888 /* ASTNodeSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_201 /* ASTNodeSerialization.swift */; }; - OBJ_2889 /* ObjcASTNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_202 /* ObjcASTNode.swift */; }; - OBJ_2890 /* ObjcClass+Method.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_203 /* ObjcClass+Method.swift */; }; - OBJ_2891 /* ObjcClass+Property.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_204 /* ObjcClass+Property.swift */; }; - OBJ_2892 /* ObjcClassCategoryInterfaceNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_205 /* ObjcClassCategoryInterfaceNode.swift */; }; - OBJ_2893 /* ObjcClassImplementationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_206 /* ObjcClassImplementationNode.swift */; }; - OBJ_2894 /* ObjcClassInterfaceNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_207 /* ObjcClassInterfaceNode.swift */; }; - OBJ_2895 /* ObjcEnumDeclarationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_208 /* ObjcEnumDeclarationNode.swift */; }; - OBJ_2896 /* ObjcExpressionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_209 /* ObjcExpressionNode.swift */; }; - OBJ_2897 /* ObjcFunctionDefinitionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_210 /* ObjcFunctionDefinitionNode.swift */; }; - OBJ_2898 /* ObjcGlobalContextNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_211 /* ObjcGlobalContextNode.swift */; }; - OBJ_2899 /* ObjcIdentifierNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_212 /* ObjcIdentifierNode.swift */; }; - OBJ_2900 /* ObjcInitializableNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_213 /* ObjcInitializableNode.swift */; }; - OBJ_2901 /* ObjcKeyword.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_214 /* ObjcKeyword.swift */; }; - OBJ_2902 /* ObjcKeywordNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_215 /* ObjcKeywordNode.swift */; }; - OBJ_2903 /* ObjcOperator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_216 /* ObjcOperator.swift */; }; - OBJ_2904 /* ObjcPreprocessorDirective.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_217 /* ObjcPreprocessorDirective.swift */; }; - OBJ_2905 /* ObjcPropertyImplementationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_218 /* ObjcPropertyImplementationNode.swift */; }; - OBJ_2906 /* ObjcPropertySynthesizeListNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_219 /* ObjcPropertySynthesizeListNode.swift */; }; - OBJ_2907 /* ObjcProtocolDeclarationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_220 /* ObjcProtocolDeclarationNode.swift */; }; - OBJ_2908 /* ObjcStructDeclarationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_221 /* ObjcStructDeclarationNode.swift */; }; - OBJ_2909 /* ObjcTokenType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_222 /* ObjcTokenType.swift */; }; - OBJ_2910 /* ObjcType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_223 /* ObjcType.swift */; }; - OBJ_2911 /* ObjcTypeNameNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_224 /* ObjcTypeNameNode.swift */; }; - OBJ_2912 /* ObjcTypedefNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_225 /* ObjcTypedefNode.swift */; }; - OBJ_2913 /* ObjcUnknownNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_226 /* ObjcUnknownNode.swift */; }; - OBJ_2914 /* ObjcVariableDeclarationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_227 /* ObjcVariableDeclarationNode.swift */; }; - OBJ_2916 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2917 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_2918 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2919 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2920 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2921 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2933 /* ObjcGrammarModelsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_757 /* ObjcGrammarModelsTests.swift */; }; - OBJ_2935 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_2936 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_2937 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_2938 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_2939 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_2940 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_2941 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_2953 /* ConstantExtractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_229 /* ConstantExtractor.swift */; }; - OBJ_2954 /* AntlrDeclarationParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_231 /* AntlrDeclarationParser.swift */; }; - OBJ_2955 /* DeclarationExtractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_232 /* DeclarationExtractor.swift */; }; - OBJ_2956 /* DeclarationSyntaxElementType+ObjcType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_233 /* DeclarationSyntaxElementType+ObjcType.swift */; }; - OBJ_2957 /* DeclarationSyntaxElementType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_234 /* DeclarationSyntaxElementType.swift */; }; - OBJ_2958 /* ConstantExpressionSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_237 /* ConstantExpressionSyntax.swift */; }; - OBJ_2959 /* ExpressionSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_238 /* ExpressionSyntax.swift */; }; - OBJ_2960 /* IdentifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_239 /* IdentifierSyntax.swift */; }; - OBJ_2961 /* InitializerSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_240 /* InitializerSyntax.swift */; }; - OBJ_2962 /* ParameterDeclarationSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_241 /* ParameterDeclarationSyntax.swift */; }; - OBJ_2963 /* ParameterListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_242 /* ParameterListSyntax.swift */; }; - OBJ_2964 /* ParameterTypeListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_243 /* ParameterTypeListSyntax.swift */; }; - OBJ_2965 /* PointerSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_244 /* PointerSyntax.swift */; }; - OBJ_2966 /* ProtocolReferenceListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_245 /* ProtocolReferenceListSyntax.swift */; }; - OBJ_2967 /* SpecifierQualifierListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_246 /* SpecifierQualifierListSyntax.swift */; }; - OBJ_2968 /* TypeQualifierListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_247 /* TypeQualifierListSyntax.swift */; }; - OBJ_2969 /* DeclarationSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_248 /* DeclarationSpecifierSyntax.swift */; }; - OBJ_2970 /* AlignmentSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_250 /* AlignmentSpecifierSyntax.swift */; }; - OBJ_2971 /* ArcBehaviourSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_251 /* ArcBehaviourSpecifierSyntax.swift */; }; - OBJ_2972 /* BlockDeclarationSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_252 /* BlockDeclarationSpecifierSyntax.swift */; }; - OBJ_2973 /* FunctionSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_253 /* FunctionSpecifierSyntax.swift */; }; - OBJ_2974 /* IBOutletQualifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_254 /* IBOutletQualifierSyntax.swift */; }; - OBJ_2975 /* NullabilitySpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_255 /* NullabilitySpecifierSyntax.swift */; }; - OBJ_2976 /* ProtocolQualifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_256 /* ProtocolQualifierSyntax.swift */; }; - OBJ_2977 /* StorageClassSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_257 /* StorageClassSpecifierSyntax.swift */; }; - OBJ_2978 /* TypePrefixSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_258 /* TypePrefixSyntax.swift */; }; - OBJ_2979 /* TypeQualifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_259 /* TypeQualifierSyntax.swift */; }; - OBJ_2980 /* TypeSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_260 /* TypeSpecifierSyntax.swift */; }; - OBJ_2981 /* EnumSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_262 /* EnumSpecifierSyntax.swift */; }; - OBJ_2982 /* GenericTypeSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_263 /* GenericTypeSpecifierSyntax.swift */; }; - OBJ_2983 /* ScalarTypeSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_264 /* ScalarTypeSpecifierSyntax.swift */; }; - OBJ_2984 /* StructOrUnionSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_265 /* StructOrUnionSpecifierSyntax.swift */; }; - OBJ_2985 /* TypeIdentifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_266 /* TypeIdentifierSyntax.swift */; }; - OBJ_2986 /* DeclarationSpecifiersSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_267 /* DeclarationSpecifiersSyntax.swift */; }; - OBJ_2987 /* DeclarationSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_268 /* DeclarationSyntax.swift */; }; - OBJ_2988 /* DeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_270 /* DeclaratorSyntax.swift */; }; - OBJ_2989 /* DirectDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_271 /* DirectDeclaratorSyntax.swift */; }; - OBJ_2990 /* ArrayDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_273 /* ArrayDeclaratorSyntax.swift */; }; - OBJ_2991 /* BlockDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_274 /* BlockDeclaratorSyntax.swift */; }; - OBJ_2992 /* FunctionDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_275 /* FunctionDeclaratorSyntax.swift */; }; - OBJ_2993 /* FieldDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_276 /* FieldDeclaratorSyntax.swift */; }; - OBJ_2994 /* FieldDeclarationSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_277 /* FieldDeclarationSyntax.swift */; }; - OBJ_2995 /* InitDeclarationListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_278 /* InitDeclarationListSyntax.swift */; }; - OBJ_2996 /* InitDeclarationSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_279 /* InitDeclarationSyntax.swift */; }; - OBJ_2997 /* AbstractDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_281 /* AbstractDeclaratorSyntax.swift */; }; - OBJ_2998 /* DirectAbstractDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_282 /* DirectAbstractDeclaratorSyntax.swift */; }; - OBJ_2999 /* ArrayAbstractDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_284 /* ArrayAbstractDeclaratorSyntax.swift */; }; - OBJ_3000 /* BlockAbstractDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_285 /* BlockAbstractDeclaratorSyntax.swift */; }; - OBJ_3001 /* FunctionAbstractDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_286 /* FunctionAbstractDeclaratorSyntax.swift */; }; - OBJ_3002 /* TypeNameSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_287 /* TypeNameSyntax.swift */; }; - OBJ_3003 /* TypeVariableDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_288 /* TypeVariableDeclaratorSyntax.swift */; }; - OBJ_3004 /* DeclarationTranslator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_289 /* DeclarationTranslator.swift */; }; - OBJ_3005 /* DefinitionCollector.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_290 /* DefinitionCollector.swift */; }; - OBJ_3006 /* Lexer+ObjcLexing.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_291 /* Lexer+ObjcLexing.swift */; }; - OBJ_3007 /* NodeContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_292 /* NodeContext.swift */; }; - OBJ_3008 /* NonnullContextQuerier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_293 /* NonnullContextQuerier.swift */; }; - OBJ_3009 /* ObjcASTNodeFactory+DeclarationSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_294 /* ObjcASTNodeFactory+DeclarationSyntax.swift */; }; - OBJ_3010 /* ObjcASTNodeFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_295 /* ObjcASTNodeFactory.swift */; }; - OBJ_3011 /* ObjcImportDecl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_296 /* ObjcImportDecl.swift */; }; - OBJ_3012 /* ObjcParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_297 /* ObjcParser.swift */; }; - OBJ_3013 /* ObjcParserListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_298 /* ObjcParserListener.swift */; }; - OBJ_3014 /* ObjcParserState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_299 /* ObjcParserState.swift */; }; - OBJ_3015 /* ObjcPreprocessorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_300 /* ObjcPreprocessorListener.swift */; }; - OBJ_3016 /* ObjcTokenType+TokenProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_301 /* ObjcTokenType+TokenProtocol.swift */; }; - OBJ_3017 /* ObjcTypeParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_302 /* ObjcTypeParser.swift */; }; - OBJ_3018 /* ObjectiveCParser+ParserRuleContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_303 /* ObjectiveCParser+ParserRuleContext.swift */; }; - OBJ_3019 /* ObjectiveCParser+RuleExt.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_304 /* ObjectiveCParser+RuleExt.swift */; }; - OBJ_3020 /* ObjectiveCPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_305 /* ObjectiveCPreprocessor.swift */; }; - OBJ_3021 /* Source+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_306 /* Source+Ext.swift */; }; - OBJ_3022 /* VarDeclarationIdentifierNameExtractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_307 /* VarDeclarationIdentifierNameExtractor.swift */; }; - OBJ_3024 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_3025 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_3026 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_3027 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_3028 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_3029 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_3030 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_3031 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_3032 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_3046 /* ObjectiveCLexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_309 /* ObjectiveCLexer.swift */; }; - OBJ_3047 /* ObjectiveCParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_310 /* ObjectiveCParser.swift */; }; - OBJ_3048 /* ObjectiveCParserBaseListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_311 /* ObjectiveCParserBaseListener.swift */; }; - OBJ_3049 /* ObjectiveCParserBaseVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_312 /* ObjectiveCParserBaseVisitor.swift */; }; - OBJ_3050 /* ObjectiveCParserListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_313 /* ObjectiveCParserListener.swift */; }; - OBJ_3051 /* ObjectiveCParserVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_314 /* ObjectiveCParserVisitor.swift */; }; - OBJ_3052 /* ObjectiveCPreprocessorLexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_315 /* ObjectiveCPreprocessorLexer.swift */; }; - OBJ_3053 /* ObjectiveCPreprocessorParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_316 /* ObjectiveCPreprocessorParser.swift */; }; - OBJ_3054 /* ObjectiveCPreprocessorParserBaseListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_317 /* ObjectiveCPreprocessorParserBaseListener.swift */; }; - OBJ_3055 /* ObjectiveCPreprocessorParserBaseVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_318 /* ObjectiveCPreprocessorParserBaseVisitor.swift */; }; - OBJ_3056 /* ObjectiveCPreprocessorParserListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_319 /* ObjectiveCPreprocessorParserListener.swift */; }; - OBJ_3057 /* ObjectiveCPreprocessorParserVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_320 /* ObjectiveCPreprocessorParserVisitor.swift */; }; - OBJ_3058 /* shim.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_321 /* shim.swift */; }; - OBJ_3060 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_3061 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_3062 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_3063 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_3073 /* AntlrDeclarationParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_760 /* AntlrDeclarationParserTests.swift */; }; - OBJ_3074 /* DeclarationExtractorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_761 /* DeclarationExtractorTests.swift */; }; - OBJ_3075 /* DeclarationTranslatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_762 /* DeclarationTranslatorTests.swift */; }; - OBJ_3076 /* DefinitionCollectorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_763 /* DefinitionCollectorTests.swift */; }; - OBJ_3077 /* ObjcParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_764 /* ObjcParserTests.swift */; }; - OBJ_3078 /* ObjcTypeParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_765 /* ObjcTypeParserTests.swift */; }; - OBJ_3079 /* AntlrErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_767 /* AntlrErrorListener.swift */; }; - OBJ_3080 /* BaseParserTestFixture.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_768 /* BaseParserTestFixture.swift */; }; - OBJ_3081 /* DeclarationExtractor+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_769 /* DeclarationExtractor+Asserter.swift */; }; - OBJ_3082 /* DeclarationSyntaxElementType+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_770 /* DeclarationSyntaxElementType+Asserter.swift */; }; - OBJ_3083 /* DeclarationTranslator+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_771 /* DeclarationTranslator+Asserter.swift */; }; - OBJ_3085 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_3086 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_3087 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_3088 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_3089 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_3090 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_3091 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_3092 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_3093 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3094 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3095 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_3096 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_3097 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_3098 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_3099 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_3100 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_3101 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_3102 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_3103 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_3104 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_3105 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_3106 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_3107 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_3108 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_3109 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_3110 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_3111 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3112 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3113 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_3114 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_3115 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_3116 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2344 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2345 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2346 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2347 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2348 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2349 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2350 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2351 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2397 /* ASTNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_92 /* ASTNode.swift */; }; + OBJ_2398 /* ASTVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_93 /* ASTVisitor.swift */; }; + OBJ_2399 /* CommentQuerier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_94 /* CommentQuerier.swift */; }; + OBJ_2400 /* RawCodeComment.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_95 /* RawCodeComment.swift */; }; + OBJ_2402 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2403 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2404 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2413 /* GrammarModelBaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_766 /* GrammarModelBaseTests.swift */; }; + OBJ_2415 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2416 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2417 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2418 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2427 /* GraphViz+Attribute.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_97 /* GraphViz+Attribute.swift */; }; + OBJ_2428 /* GraphViz+GraphAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_98 /* GraphViz+GraphAttributes.swift */; }; + OBJ_2429 /* GraphViz.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_99 /* GraphViz.swift */; }; + OBJ_2436 /* GraphViz+GraphAttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_768 /* GraphViz+GraphAttributesTests.swift */; }; + OBJ_2437 /* GraphVizTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_769 /* GraphVizTests.swift */; }; + OBJ_2439 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_2440 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_2441 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_2442 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_2443 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_2444 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_2445 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_2446 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_2447 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_2448 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_2449 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_2450 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_2451 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_2452 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_2453 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_2454 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_2455 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_2456 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_2457 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_2458 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_2459 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_2460 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_2461 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_2462 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_2463 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_2464 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2465 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_2466 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_2467 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_2468 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_2469 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2470 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2471 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2472 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2473 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2474 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2475 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2476 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2477 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2478 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2479 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_2525 /* AnonymousIntentionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_101 /* AnonymousIntentionVisitor.swift */; }; + OBJ_2526 /* DetectNoReturnsIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_102 /* DetectNoReturnsIntentionPass.swift */; }; + OBJ_2527 /* DetectNonnullReturnsIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_103 /* DetectNonnullReturnsIntentionPass.swift */; }; + OBJ_2528 /* DetectTypePropertiesBySelfAssignmentIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_104 /* DetectTypePropertiesBySelfAssignmentIntentionPass.swift */; }; + OBJ_2529 /* FileTypeMergingIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_105 /* FileTypeMergingIntentionPass.swift */; }; + OBJ_2530 /* FunctionIntentionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_106 /* FunctionIntentionVisitor.swift */; }; + OBJ_2531 /* ImportDirectiveIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_107 /* ImportDirectiveIntentionPass.swift */; }; + OBJ_2532 /* InitAnalysisIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_108 /* InitAnalysisIntentionPass.swift */; }; + OBJ_2533 /* IntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_109 /* IntentionPass.swift */; }; + OBJ_2534 /* IntentionPassSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_110 /* IntentionPassSource.swift */; }; + OBJ_2535 /* PromoteProtocolPropertyConformanceIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_111 /* PromoteProtocolPropertyConformanceIntentionPass.swift */; }; + OBJ_2536 /* ProtocolNullabilityPropagationToConformersIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_112 /* ProtocolNullabilityPropagationToConformersIntentionPass.swift */; }; + OBJ_2537 /* RemoveEmptyExtensionsIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_113 /* RemoveEmptyExtensionsIntentionPass.swift */; }; + OBJ_2538 /* ReturnStatementVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_115 /* ReturnStatementVisitor.swift */; }; + OBJ_2539 /* ArrayIntentionPassSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_117 /* ArrayIntentionPassSource.swift */; }; + OBJ_2540 /* StoredPropertyToNominalTypesIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_118 /* StoredPropertyToNominalTypesIntentionPass.swift */; }; + OBJ_2541 /* SubscriptDeclarationIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_119 /* SubscriptDeclarationIntentionPass.swift */; }; + OBJ_2542 /* SwiftifyMethodSignaturesIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_120 /* SwiftifyMethodSignaturesIntentionPass.swift */; }; + OBJ_2543 /* TypeMerger.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_121 /* TypeMerger.swift */; }; + OBJ_2544 /* TypeVisitingIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_122 /* TypeVisitingIntentionPass.swift */; }; + OBJ_2545 /* UIKitCorrectorIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_123 /* UIKitCorrectorIntentionPass.swift */; }; + OBJ_2547 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_2548 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_2549 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_2550 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_2551 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_2552 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2553 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_2554 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_2555 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_2556 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2557 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2558 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_2559 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_2560 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2561 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2562 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2563 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2564 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2565 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2566 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2567 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2594 /* DetectNoReturnsIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_771 /* DetectNoReturnsIntentionPassTests.swift */; }; + OBJ_2595 /* DetectNonnullReturnsIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_772 /* DetectNonnullReturnsIntentionPassTests.swift */; }; + OBJ_2596 /* DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_773 /* DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift */; }; + OBJ_2597 /* FileTypeMergingIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_774 /* FileTypeMergingIntentionPassTests.swift */; }; + OBJ_2598 /* ImportDirectiveIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_775 /* ImportDirectiveIntentionPassTests.swift */; }; + OBJ_2599 /* InitAnalysisIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_776 /* InitAnalysisIntentionPassTests.swift */; }; + OBJ_2600 /* PromoteProtocolPropertyConformanceIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_777 /* PromoteProtocolPropertyConformanceIntentionPassTests.swift */; }; + OBJ_2601 /* ProtocolNullabilityPropagationToConformersIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_778 /* ProtocolNullabilityPropagationToConformersIntentionPassTests.swift */; }; + OBJ_2602 /* RemoveEmptyExtensionsIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_779 /* RemoveEmptyExtensionsIntentionPassTests.swift */; }; + OBJ_2603 /* StoredPropertyToNominalTypesIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_780 /* StoredPropertyToNominalTypesIntentionPassTests.swift */; }; + OBJ_2604 /* SubscriptDeclarationIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_781 /* SubscriptDeclarationIntentionPassTests.swift */; }; + OBJ_2605 /* SwiftifyMethodSignaturesIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_782 /* SwiftifyMethodSignaturesIntentionPassTests.swift */; }; + OBJ_2606 /* TestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_783 /* TestUtils.swift */; }; + OBJ_2607 /* UIKitCorrectorIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_784 /* UIKitCorrectorIntentionPassTests.swift */; }; + OBJ_2609 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_2610 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_2611 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_2612 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_2613 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_2614 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_2615 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_2616 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_2617 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_2618 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_2619 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_2620 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_2621 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_2622 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_2623 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_2624 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_2625 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_2626 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_2627 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_2628 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_2629 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_2630 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_2631 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_2632 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_2633 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_2634 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2635 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_2636 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_2637 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_2638 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2639 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2640 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_2641 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_2642 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2643 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2644 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2645 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2646 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2647 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2648 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2649 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2695 /* BaseClassIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_125 /* BaseClassIntention.swift */; }; + OBJ_2696 /* FileLevelIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_126 /* FileLevelIntention.swift */; }; + OBJ_2697 /* FromSourceIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_127 /* FromSourceIntention.swift */; }; + OBJ_2698 /* FunctionBodyCarryingIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_128 /* FunctionBodyCarryingIntention.swift */; }; + OBJ_2699 /* FunctionBodyQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_129 /* FunctionBodyQueue.swift */; }; + OBJ_2700 /* FunctionIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_130 /* FunctionIntention.swift */; }; + OBJ_2701 /* Historic.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_132 /* Historic.swift */; }; + OBJ_2702 /* IntentionHistory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_133 /* IntentionHistory.swift */; }; + OBJ_2703 /* IntentionHistoryEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_134 /* IntentionHistoryEntry.swift */; }; + OBJ_2704 /* IntentionHistoryEntryEcho.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_135 /* IntentionHistoryEntryEcho.swift */; }; + OBJ_2705 /* IntentionHistoryTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_136 /* IntentionHistoryTracker.swift */; }; + OBJ_2706 /* InstanceVariableContainerIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_137 /* InstanceVariableContainerIntention.swift */; }; + OBJ_2707 /* Intention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_138 /* Intention.swift */; }; + OBJ_2708 /* IntentionCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_139 /* IntentionCollection.swift */; }; + OBJ_2709 /* ClassExtensionGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_141 /* ClassExtensionGenerationIntention.swift */; }; + OBJ_2710 /* ClassGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_142 /* ClassGenerationIntention.swift */; }; + OBJ_2711 /* DeinitGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_143 /* DeinitGenerationIntention.swift */; }; + OBJ_2712 /* EnumCaseGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_144 /* EnumCaseGenerationIntention.swift */; }; + OBJ_2713 /* EnumGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_145 /* EnumGenerationIntention.swift */; }; + OBJ_2714 /* FileGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_146 /* FileGenerationIntention.swift */; }; + OBJ_2715 /* FunctionBodyIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_147 /* FunctionBodyIntention.swift */; }; + OBJ_2716 /* GlobalFunctionGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_148 /* GlobalFunctionGenerationIntention.swift */; }; + OBJ_2717 /* GlobalVariableGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_149 /* GlobalVariableGenerationIntention.swift */; }; + OBJ_2718 /* GlobalVariableInitialValueIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_150 /* GlobalVariableInitialValueIntention.swift */; }; + OBJ_2719 /* InitGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_151 /* InitGenerationIntention.swift */; }; + OBJ_2720 /* InstanceVariableGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_152 /* InstanceVariableGenerationIntention.swift */; }; + OBJ_2721 /* MethodGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_153 /* MethodGenerationIntention.swift */; }; + OBJ_2722 /* PropertyGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_154 /* PropertyGenerationIntention.swift */; }; + OBJ_2723 /* PropertyInitialValueGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_155 /* PropertyInitialValueGenerationIntention.swift */; }; + OBJ_2724 /* PropertySynthesizationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_156 /* PropertySynthesizationIntention.swift */; }; + OBJ_2725 /* ProtocolGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_157 /* ProtocolGenerationIntention.swift */; }; + OBJ_2726 /* ProtocolInheritanceIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_158 /* ProtocolInheritanceIntention.swift */; }; + OBJ_2727 /* ProtocolMethodGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_159 /* ProtocolMethodGenerationIntention.swift */; }; + OBJ_2728 /* ProtocolPropertyGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_160 /* ProtocolPropertyGenerationIntention.swift */; }; + OBJ_2729 /* StructGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_161 /* StructGenerationIntention.swift */; }; + OBJ_2730 /* SubscriptGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_162 /* SubscriptGenerationIntention.swift */; }; + OBJ_2731 /* TypealiasIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_163 /* TypealiasIntention.swift */; }; + OBJ_2732 /* KnownType+IntentionBuild.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_164 /* KnownType+IntentionBuild.swift */; }; + OBJ_2733 /* MemberGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_165 /* MemberGenerationIntention.swift */; }; + OBJ_2734 /* SerializableMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_167 /* SerializableMetadata.swift */; }; + OBJ_2735 /* SerializableMetadataEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_168 /* SerializableMetadataEntry.swift */; }; + OBJ_2736 /* SerializableMetadataSerializerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_169 /* SerializableMetadataSerializerType.swift */; }; + OBJ_2737 /* NonNullScopedIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_170 /* NonNullScopedIntention.swift */; }; + OBJ_2738 /* OverridableMemberGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_171 /* OverridableMemberGenerationIntention.swift */; }; + OBJ_2739 /* IntentionSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_173 /* IntentionSerializer.swift */; }; + OBJ_2740 /* KeyedDecodingContainerProtocol+Intention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_174 /* KeyedDecodingContainerProtocol+Intention.swift */; }; + OBJ_2741 /* KeyedEncodingContainerProtocol+Intention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_175 /* KeyedEncodingContainerProtocol+Intention.swift */; }; + OBJ_2742 /* UnkeyedDecodingContainer+Intention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_176 /* UnkeyedDecodingContainer+Intention.swift */; }; + OBJ_2743 /* UnkeyedEncodingContainer+Intention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_177 /* UnkeyedEncodingContainer+Intention.swift */; }; + OBJ_2744 /* StatementContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_178 /* StatementContainer.swift */; }; + OBJ_2745 /* TypeFormatter+Intentions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_179 /* TypeFormatter+Intentions.swift */; }; + OBJ_2746 /* TypeGenerationIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_180 /* TypeGenerationIntention.swift */; }; + OBJ_2747 /* ValueStorageIntention.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_181 /* ValueStorageIntention.swift */; }; + OBJ_2748 /* AnonymousIntentionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_183 /* AnonymousIntentionVisitor.swift */; }; + OBJ_2749 /* IntentionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_184 /* IntentionVisitor.swift */; }; + OBJ_2751 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2752 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2753 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2754 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2755 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2756 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2757 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2758 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2759 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2760 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2776 /* FromSourceIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_786 /* FromSourceIntentionTests.swift */; }; + OBJ_2777 /* FunctionBodyQueueTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_787 /* FunctionBodyQueueTests.swift */; }; + OBJ_2778 /* Intention+FileTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_788 /* Intention+FileTests.swift */; }; + OBJ_2779 /* ClassExtensionGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_790 /* ClassExtensionGenerationIntentionTests.swift */; }; + OBJ_2780 /* ClassGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_791 /* ClassGenerationIntentionTests.swift */; }; + OBJ_2781 /* DeinitGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_792 /* DeinitGenerationIntentionTests.swift */; }; + OBJ_2782 /* EnumCaseGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_793 /* EnumCaseGenerationIntentionTests.swift */; }; + OBJ_2783 /* EnumGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_794 /* EnumGenerationIntentionTests.swift */; }; + OBJ_2784 /* FileGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_795 /* FileGenerationIntentionTests.swift */; }; + OBJ_2785 /* FunctionBodyIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_796 /* FunctionBodyIntentionTests.swift */; }; + OBJ_2786 /* GlobalFunctionGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_797 /* GlobalFunctionGenerationIntentionTests.swift */; }; + OBJ_2787 /* GlobalVariableGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_798 /* GlobalVariableGenerationIntentionTests.swift */; }; + OBJ_2788 /* GlobalVariableInitialValueIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_799 /* GlobalVariableInitialValueIntentionTests.swift */; }; + OBJ_2789 /* InitGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_800 /* InitGenerationIntentionTests.swift */; }; + OBJ_2790 /* InstanceVariableGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_801 /* InstanceVariableGenerationIntentionTests.swift */; }; + OBJ_2791 /* MethodGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_802 /* MethodGenerationIntentionTests.swift */; }; + OBJ_2792 /* PropertyGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_803 /* PropertyGenerationIntentionTests.swift */; }; + OBJ_2793 /* PropertyInitialValueGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_804 /* PropertyInitialValueGenerationIntentionTests.swift */; }; + OBJ_2794 /* PropertySynthesizationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_805 /* PropertySynthesizationIntentionTests.swift */; }; + OBJ_2795 /* ProtocolGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_806 /* ProtocolGenerationIntentionTests.swift */; }; + OBJ_2796 /* ProtocolInheritanceIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_807 /* ProtocolInheritanceIntentionTests.swift */; }; + OBJ_2797 /* ProtocolMethodGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_808 /* ProtocolMethodGenerationIntentionTests.swift */; }; + OBJ_2798 /* ProtocolPropertyGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_809 /* ProtocolPropertyGenerationIntentionTests.swift */; }; + OBJ_2799 /* StructGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_810 /* StructGenerationIntentionTests.swift */; }; + OBJ_2800 /* SubscriptGenerationIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_811 /* SubscriptGenerationIntentionTests.swift */; }; + OBJ_2801 /* TypealiasIntentionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_812 /* TypealiasIntentionTests.swift */; }; + OBJ_2802 /* IntentionSerializerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_814 /* IntentionSerializerTests.swift */; }; + OBJ_2803 /* TestIntentionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_816 /* TestIntentionVisitor.swift */; }; + OBJ_2805 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_2806 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_2807 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_2808 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_2809 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_2810 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_2811 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_2812 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_2813 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_2814 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_2815 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_2816 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_2817 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_2818 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_2819 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_2820 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_2821 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_2822 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_2823 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_2824 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_2825 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_2826 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_2827 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_2828 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_2829 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_2830 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_2831 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2832 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_2833 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_2834 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_2835 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_2836 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2837 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2838 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2839 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2840 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2841 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2842 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2843 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2844 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2845 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2892 /* JavaScriptASTCorrectorExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_187 /* JavaScriptASTCorrectorExpressionPass.swift */; }; + OBJ_2893 /* Intention+TypedSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_188 /* Intention+TypedSource.swift */; }; + OBJ_2894 /* JavaScriptPropertyMergeIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_190 /* JavaScriptPropertyMergeIntentionPass.swift */; }; + OBJ_2895 /* JavaScript2SwiftRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_191 /* JavaScript2SwiftRewriter.swift */; }; + OBJ_2896 /* JavaScript2SwiftRewriterJob.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_192 /* JavaScript2SwiftRewriterJob.swift */; }; + OBJ_2897 /* JavaScript2SwiftRewriterJobBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_193 /* JavaScript2SwiftRewriterJobBuilder.swift */; }; + OBJ_2898 /* JavaScriptASTReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_194 /* JavaScriptASTReader.swift */; }; + OBJ_2899 /* JavaScriptASTReaderContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_195 /* JavaScriptASTReaderContext.swift */; }; + OBJ_2900 /* JavaScriptExprASTReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_196 /* JavaScriptExprASTReader.swift */; }; + OBJ_2901 /* JavaScriptFileCollectionStep.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_197 /* JavaScriptFileCollectionStep.swift */; }; + OBJ_2902 /* JavaScriptFileCollectionStepDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_198 /* JavaScriptFileCollectionStepDelegate.swift */; }; + OBJ_2903 /* JavaScriptFrontend.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_199 /* JavaScriptFrontend.swift */; }; + OBJ_2904 /* JavaScriptImportDirectiveFileCollectionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_200 /* JavaScriptImportDirectiveFileCollectionDelegate.swift */; }; + OBJ_2905 /* JavaScriptIntentionCollector.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_201 /* JavaScriptIntentionCollector.swift */; }; + OBJ_2906 /* JavaScriptMethodSignatureConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_202 /* JavaScriptMethodSignatureConverter.swift */; }; + OBJ_2907 /* JavaScriptObjectGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_203 /* JavaScriptObjectGenerator.swift */; }; + OBJ_2908 /* JavaScriptParserCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_204 /* JavaScriptParserCache.swift */; }; + OBJ_2909 /* JavaScriptStatementASTReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_205 /* JavaScriptStatementASTReader.swift */; }; + OBJ_2910 /* JavaScriptSwiftRewriterService.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_206 /* JavaScriptSwiftRewriterService.swift */; }; + OBJ_2911 /* JsParserStatePool.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_207 /* JsParserStatePool.swift */; }; + OBJ_2913 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_2914 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_2915 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_2916 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_2917 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_2918 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_2919 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_2920 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_2921 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_2922 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_2923 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_2924 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_2925 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_2926 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_2927 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_2928 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_2929 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_2930 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_2931 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_2932 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_2933 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_2934 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_2935 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_2936 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_2937 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_2938 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_2939 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_2940 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_2941 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_2942 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_2943 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_2944 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_2945 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_2946 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_2947 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_2948 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_2949 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_2950 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_2951 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_2996 /* JavaScriptASTCorrectorExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_819 /* JavaScriptASTCorrectorExpressionPassTests.swift */; }; + OBJ_2997 /* MultiFileTestBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_821 /* MultiFileTestBuilder.swift */; }; + OBJ_2998 /* SingleFileTestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_822 /* SingleFileTestUtils.swift */; }; + OBJ_2999 /* JavaScriptPropertyMergeIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_824 /* JavaScriptPropertyMergeIntentionPassTests.swift */; }; + OBJ_3000 /* JavaScript2SwiftRewriter+MultiFilesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_825 /* JavaScript2SwiftRewriter+MultiFilesTests.swift */; }; + OBJ_3001 /* JavaScript2SwiftRewriterJobBuilderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_826 /* JavaScript2SwiftRewriterJobBuilderTests.swift */; }; + OBJ_3002 /* JavaScript2SwiftRewriterJobTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_827 /* JavaScript2SwiftRewriterJobTests.swift */; }; + OBJ_3003 /* JavaScript2SwiftRewriterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_828 /* JavaScript2SwiftRewriterTests.swift */; }; + OBJ_3004 /* JavaScriptExprASTReaderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_829 /* JavaScriptExprASTReaderTests.swift */; }; + OBJ_3005 /* JavaScriptFileCollectionStepTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_830 /* JavaScriptFileCollectionStepTests.swift */; }; + OBJ_3006 /* JavaScriptImportDirectiveFileCollectionDelegateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_831 /* JavaScriptImportDirectiveFileCollectionDelegateTests.swift */; }; + OBJ_3007 /* JavaScriptIntentionCollectorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_832 /* JavaScriptIntentionCollectorTests.swift */; }; + OBJ_3008 /* JavaScriptObjectGeneratorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_833 /* JavaScriptObjectGeneratorTests.swift */; }; + OBJ_3009 /* JavaScriptStatementASTReaderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_834 /* JavaScriptStatementASTReaderTests.swift */; }; + OBJ_3010 /* TestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_835 /* TestUtils.swift */; }; + OBJ_3012 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_3013 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_3014 /* JavaScriptFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JavaScriptFrontend::Product /* JavaScriptFrontend.framework */; }; + OBJ_3015 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_3016 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_3017 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_3018 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_3019 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_3020 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_3021 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_3022 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_3023 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_3024 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_3025 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_3026 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_3027 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_3028 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_3029 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_3030 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_3031 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_3032 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_3033 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_3034 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_3035 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_3036 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_3037 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_3038 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_3039 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_3040 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_3041 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_3042 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3043 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3044 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3045 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3046 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3047 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_3048 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_3049 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3050 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_3051 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_3052 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_3053 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3100 /* JsASTNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_209 /* JsASTNode.swift */; }; + OBJ_3101 /* JsAnonymousFunction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_210 /* JsAnonymousFunction.swift */; }; + OBJ_3102 /* JsClassNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_211 /* JsClassNode.swift */; }; + OBJ_3103 /* JsClassPropertyNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_212 /* JsClassPropertyNode.swift */; }; + OBJ_3104 /* JsConstructorDefinitionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_213 /* JsConstructorDefinitionNode.swift */; }; + OBJ_3105 /* JsExpressionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_214 /* JsExpressionNode.swift */; }; + OBJ_3106 /* JsFunctionBodyNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_215 /* JsFunctionBodyNode.swift */; }; + OBJ_3107 /* JsFunctionDeclarationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_216 /* JsFunctionDeclarationNode.swift */; }; + OBJ_3108 /* JsFunctionNodeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_217 /* JsFunctionNodeType.swift */; }; + OBJ_3109 /* JsFunctionSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_218 /* JsFunctionSignature.swift */; }; + OBJ_3110 /* JsGlobalContextNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_219 /* JsGlobalContextNode.swift */; }; + OBJ_3111 /* JsIdentifierNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_220 /* JsIdentifierNode.swift */; }; + OBJ_3112 /* JsInitializableNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_221 /* JsInitializableNode.swift */; }; + OBJ_3113 /* JsMethodDefinitionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_222 /* JsMethodDefinitionNode.swift */; }; + OBJ_3114 /* JsVariableDeclarationListNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_223 /* JsVariableDeclarationListNode.swift */; }; + OBJ_3115 /* JsVariableDeclarationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_224 /* JsVariableDeclarationNode.swift */; }; OBJ_3117 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_3118 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3118 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; OBJ_3119 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; OBJ_3120 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; OBJ_3121 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; OBJ_3122 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_3165 /* CPreprocessorDirectiveConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_323 /* CPreprocessorDirectiveConverter.swift */; }; - OBJ_3166 /* ObjectiveCASTCorrectorExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_325 /* ObjectiveCASTCorrectorExpressionPass.swift */; }; - OBJ_3167 /* Intention+Metadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_326 /* Intention+Metadata.swift */; }; - OBJ_3168 /* Intention+TypedSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_327 /* Intention+TypedSource.swift */; }; - OBJ_3169 /* ObjectiveCPropertyMergeIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_329 /* ObjectiveCPropertyMergeIntentionPass.swift */; }; - OBJ_3170 /* MandatoryIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_330 /* MandatoryIntentionPass.swift */; }; - OBJ_3171 /* MandatorySyntaxNodePass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_331 /* MandatorySyntaxNodePass.swift */; }; - OBJ_3172 /* ObjcParserStatePool.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_332 /* ObjcParserStatePool.swift */; }; - OBJ_3173 /* ObjectiveC2SwiftRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_333 /* ObjectiveC2SwiftRewriter.swift */; }; - OBJ_3174 /* ObjectiveC2SwiftRewriterJob.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_334 /* ObjectiveC2SwiftRewriterJob.swift */; }; - OBJ_3175 /* ObjectiveC2SwiftRewriterJobBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_335 /* ObjectiveC2SwiftRewriterJobBuilder.swift */; }; - OBJ_3176 /* ObjectiveCASTReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_336 /* ObjectiveCASTReader.swift */; }; - OBJ_3177 /* ObjectiveCASTReaderContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_337 /* ObjectiveCASTReaderContext.swift */; }; - OBJ_3178 /* ObjectiveCExprASTReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_338 /* ObjectiveCExprASTReader.swift */; }; - OBJ_3179 /* ObjectiveCFileCollectionStep.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_339 /* ObjectiveCFileCollectionStep.swift */; }; - OBJ_3180 /* ObjectiveCFileCollectionStepDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_340 /* ObjectiveCFileCollectionStepDelegate.swift */; }; - OBJ_3181 /* ObjectiveCFrontend.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_341 /* ObjectiveCFrontend.swift */; }; - OBJ_3182 /* ObjectiveCImportDirectiveFileCollectionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_342 /* ObjectiveCImportDirectiveFileCollectionDelegate.swift */; }; - OBJ_3183 /* ObjectiveCIntentionCollector.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_343 /* ObjectiveCIntentionCollector.swift */; }; - OBJ_3184 /* ObjectiveCMethodSignatureConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_344 /* ObjectiveCMethodSignatureConverter.swift */; }; - OBJ_3185 /* ObjectiveCParserCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_345 /* ObjectiveCParserCache.swift */; }; - OBJ_3186 /* ObjectiveCStatementASTReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_346 /* ObjectiveCStatementASTReader.swift */; }; - OBJ_3187 /* ObjectiveCSwiftRewriterService.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_347 /* ObjectiveCSwiftRewriterService.swift */; }; - OBJ_3189 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_3190 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_3191 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_3192 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_3193 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_3194 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_3195 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3196 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3197 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_3198 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_3199 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_3200 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_3201 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_3202 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_3203 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_3204 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_3205 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_3206 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_3207 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_3208 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_3209 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_3210 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_3211 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_3212 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_3213 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3214 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3215 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_3216 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_3217 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_3218 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_3219 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_3220 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_3221 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_3222 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_3223 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_3224 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_3266 /* ASTRewriterPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_773 /* ASTRewriterPassTests.swift */; }; - OBJ_3267 /* CPreprocessorDirectiveConverterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_774 /* CPreprocessorDirectiveConverterTests.swift */; }; - OBJ_3268 /* ObjectiveCASTCorrectorExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_776 /* ObjectiveCASTCorrectorExpressionPassTests.swift */; }; - OBJ_3269 /* MultiFileTestBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_778 /* MultiFileTestBuilder.swift */; }; - OBJ_3270 /* SingleFileTestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_779 /* SingleFileTestUtils.swift */; }; - OBJ_3271 /* ObjectiveCPropertyMergeIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_781 /* ObjectiveCPropertyMergeIntentionPassTests.swift */; }; - OBJ_3272 /* ObjectiveC2SwiftRewriter+Crashers.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_782 /* ObjectiveC2SwiftRewriter+Crashers.swift */; }; - OBJ_3273 /* ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_783 /* ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift */; }; - OBJ_3274 /* ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_784 /* ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift */; }; - OBJ_3275 /* ObjectiveC2SwiftRewriter+IntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_785 /* ObjectiveC2SwiftRewriter+IntentionPassTests.swift */; }; - OBJ_3276 /* ObjectiveC2SwiftRewriter+MultiFilesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_786 /* ObjectiveC2SwiftRewriter+MultiFilesTests.swift */; }; - OBJ_3277 /* ObjectiveC2SwiftRewriter+NullabilityTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_787 /* ObjectiveC2SwiftRewriter+NullabilityTests.swift */; }; - OBJ_3278 /* ObjectiveC2SwiftRewriter+SourcePreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_788 /* ObjectiveC2SwiftRewriter+SourcePreprocessor.swift */; }; - OBJ_3279 /* ObjectiveC2SwiftRewriter+StmtTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_789 /* ObjectiveC2SwiftRewriter+StmtTests.swift */; }; - OBJ_3280 /* ObjectiveC2SwiftRewriter+ThreadingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_790 /* ObjectiveC2SwiftRewriter+ThreadingTests.swift */; }; - OBJ_3281 /* ObjectiveC2SwiftRewriter+TypingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_791 /* ObjectiveC2SwiftRewriter+TypingTests.swift */; }; - OBJ_3282 /* ObjectiveC2SwiftRewriterJobBuilderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_792 /* ObjectiveC2SwiftRewriterJobBuilderTests.swift */; }; - OBJ_3283 /* ObjectiveC2SwiftRewriterJobTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_793 /* ObjectiveC2SwiftRewriterJobTests.swift */; }; - OBJ_3284 /* ObjectiveC2SwiftRewriterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_794 /* ObjectiveC2SwiftRewriterTests.swift */; }; - OBJ_3285 /* ObjectiveCASTReaderContextTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_795 /* ObjectiveCASTReaderContextTests.swift */; }; - OBJ_3286 /* ObjectiveCExprASTReaderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_796 /* ObjectiveCExprASTReaderTests.swift */; }; - OBJ_3287 /* ObjectiveCFileCollectionStepTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_797 /* ObjectiveCFileCollectionStepTests.swift */; }; - OBJ_3288 /* ObjectiveCImportDirectiveFileCollectionDelegateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_798 /* ObjectiveCImportDirectiveFileCollectionDelegateTests.swift */; }; - OBJ_3289 /* ObjectiveCIntentionCollectorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_799 /* ObjectiveCIntentionCollectorTests.swift */; }; - OBJ_3290 /* ObjectiveCMethodSignatureConverterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_800 /* ObjectiveCMethodSignatureConverterTests.swift */; }; - OBJ_3291 /* ObjectiveCStatementASTReaderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_801 /* ObjectiveCStatementASTReaderTests.swift */; }; - OBJ_3292 /* PropertyMergeIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_802 /* PropertyMergeIntentionPassTests.swift */; }; - OBJ_3293 /* TestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_803 /* TestUtils.swift */; }; - OBJ_3295 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_3296 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_3297 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_3298 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_3299 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_3300 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_3301 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_3302 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_3303 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3304 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3305 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_3306 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_3307 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_3308 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_3309 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_3310 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_3311 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_3312 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_3313 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_3314 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_3315 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_3316 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_3317 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_3318 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_3319 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_3320 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_3321 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3322 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3323 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_3324 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_3325 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_3326 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_3327 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_3328 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_3329 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_3330 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_3331 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_3332 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_3375 /* QuickSpecPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_349 /* QuickSpecPreprocessor.swift */; }; - OBJ_3376 /* SourcePreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_350 /* SourcePreprocessor.swift */; }; - OBJ_3378 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_3379 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_3387 /* QuickSpecPreprocessorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_805 /* QuickSpecPreprocessorTests.swift */; }; - OBJ_3389 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_3390 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_3391 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_3392 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_3393 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_3394 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_3395 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3396 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3397 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_3398 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_3399 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_3400 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_3401 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_3402 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_3403 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_3404 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_3405 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_3406 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_3407 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_3408 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_3409 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_3410 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_3411 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_3412 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3413 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3414 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_3415 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_3416 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_3417 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_3418 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_3419 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_3420 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_3421 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_3422 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_3423 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_3424 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_3465 /* AccessLevel.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_352 /* AccessLevel.swift */; }; - OBJ_3466 /* SwiftComment.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_354 /* SwiftComment.swift */; }; - OBJ_3467 /* Expression+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_355 /* Expression+Ext.swift */; }; - OBJ_3468 /* Expression+Matcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_356 /* Expression+Matcher.swift */; }; - OBJ_3469 /* Expression+Transformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_357 /* Expression+Transformer.swift */; }; - OBJ_3470 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_358 /* Expression.swift */; }; - OBJ_3471 /* ArrayLiteralExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_360 /* ArrayLiteralExpression.swift */; }; - OBJ_3472 /* AssignmentExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_361 /* AssignmentExpression.swift */; }; - OBJ_3473 /* BinaryExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_362 /* BinaryExpression.swift */; }; - OBJ_3474 /* BlockLiteralExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_363 /* BlockLiteralExpression.swift */; }; - OBJ_3475 /* CastExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_364 /* CastExpression.swift */; }; - OBJ_3476 /* ConstantExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_365 /* ConstantExpression.swift */; }; - OBJ_3477 /* DictionaryLiteralExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_366 /* DictionaryLiteralExpression.swift */; }; - OBJ_3478 /* ExpressionPostfixBuildable.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_367 /* ExpressionPostfixBuildable.swift */; }; - OBJ_3479 /* IdentifierExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_368 /* IdentifierExpression.swift */; }; - OBJ_3480 /* OptionalAccessPostfixBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_369 /* OptionalAccessPostfixBuilder.swift */; }; - OBJ_3481 /* ParensExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_370 /* ParensExpression.swift */; }; - OBJ_3482 /* FunctionCallPostfix.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_372 /* FunctionCallPostfix.swift */; }; - OBJ_3483 /* MemberPostfix.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_373 /* MemberPostfix.swift */; }; - OBJ_3484 /* Postfix.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_374 /* Postfix.swift */; }; - OBJ_3485 /* SubscriptPostfix.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_375 /* SubscriptPostfix.swift */; }; - OBJ_3486 /* PostfixExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_376 /* PostfixExpression.swift */; }; - OBJ_3487 /* PrefixExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_377 /* PrefixExpression.swift */; }; - OBJ_3488 /* SelectorExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_378 /* SelectorExpression.swift */; }; - OBJ_3489 /* SizeOfExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_379 /* SizeOfExpression.swift */; }; - OBJ_3490 /* TernaryExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_380 /* TernaryExpression.swift */; }; - OBJ_3491 /* TryExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_381 /* TryExpression.swift */; }; - OBJ_3492 /* TupleExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_382 /* TupleExpression.swift */; }; - OBJ_3493 /* TypeCheckExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_383 /* TypeCheckExpression.swift */; }; - OBJ_3494 /* UnaryExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_384 /* UnaryExpression.swift */; }; - OBJ_3495 /* UnknownExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_385 /* UnknownExpression.swift */; }; - OBJ_3496 /* ExpressionKind.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_386 /* ExpressionKind.swift */; }; - OBJ_3497 /* FunctionSignatureParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_387 /* FunctionSignatureParser.swift */; }; - OBJ_3498 /* Matchable.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_388 /* Matchable.swift */; }; - OBJ_3499 /* Ownership.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_389 /* Ownership.swift */; }; - OBJ_3500 /* Pattern.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_390 /* Pattern.swift */; }; - OBJ_3501 /* PostfixChainInverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_391 /* PostfixChainInverter.swift */; }; - OBJ_3502 /* KeyedDecodingContainerProtocol+SwiftAST.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_393 /* KeyedDecodingContainerProtocol+SwiftAST.swift */; }; - OBJ_3503 /* KeyedEncodingContainerProtocol+SwiftAST.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_394 /* KeyedEncodingContainerProtocol+SwiftAST.swift */; }; - OBJ_3504 /* SerializationOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_395 /* SerializationOptions.swift */; }; - OBJ_3505 /* SwiftASTSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_396 /* SwiftASTSerializer.swift */; }; - OBJ_3506 /* UnkeyedDecodingContainer+SwiftAST.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_397 /* UnkeyedDecodingContainer+SwiftAST.swift */; }; - OBJ_3507 /* UnkeyedEncodingContainer+SwiftAST.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_398 /* UnkeyedEncodingContainer+SwiftAST.swift */; }; - OBJ_3508 /* Statement+Matcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_399 /* Statement+Matcher.swift */; }; - OBJ_3509 /* Statement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_400 /* Statement.swift */; }; - OBJ_3510 /* BreakStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_402 /* BreakStatement.swift */; }; - OBJ_3511 /* CompoundStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_403 /* CompoundStatement.swift */; }; - OBJ_3512 /* ContinueStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_404 /* ContinueStatement.swift */; }; - OBJ_3513 /* DeferStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_405 /* DeferStatement.swift */; }; - OBJ_3514 /* DoStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_406 /* DoStatement.swift */; }; - OBJ_3515 /* ExpressionsStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_407 /* ExpressionsStatement.swift */; }; - OBJ_3516 /* FallthroughStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_408 /* FallthroughStatement.swift */; }; - OBJ_3517 /* ForStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_409 /* ForStatement.swift */; }; - OBJ_3518 /* IfStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_410 /* IfStatement.swift */; }; - OBJ_3519 /* LocalFunctionStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_411 /* LocalFunctionStatement.swift */; }; - OBJ_3520 /* RepeatWhileStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_412 /* RepeatWhileStatement.swift */; }; - OBJ_3521 /* ReturnStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_413 /* ReturnStatement.swift */; }; - OBJ_3522 /* SwitchStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_414 /* SwitchStatement.swift */; }; - OBJ_3523 /* ThrowStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_415 /* ThrowStatement.swift */; }; - OBJ_3524 /* UnknownStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_416 /* UnknownStatement.swift */; }; - OBJ_3525 /* VariableDeclarationsStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_417 /* VariableDeclarationsStatement.swift */; }; - OBJ_3526 /* WhiteStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_418 /* WhiteStatement.swift */; }; - OBJ_3527 /* StatementKind.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_419 /* StatementKind.swift */; }; - OBJ_3528 /* FunctionIdentifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_421 /* FunctionIdentifier.swift */; }; - OBJ_3529 /* FunctionSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_422 /* FunctionSignature.swift */; }; - OBJ_3530 /* LocalFunction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_423 /* LocalFunction.swift */; }; - OBJ_3531 /* ObjcPropertyAttribute.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_424 /* ObjcPropertyAttribute.swift */; }; - OBJ_3532 /* ParameterSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_425 /* ParameterSignature.swift */; }; - OBJ_3533 /* SelectorSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_426 /* SelectorSignature.swift */; }; - OBJ_3534 /* SubscriptIdentifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_427 /* SubscriptIdentifier.swift */; }; - OBJ_3535 /* SubscriptSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_428 /* SubscriptSignature.swift */; }; - OBJ_3536 /* SwiftOperator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_429 /* SwiftOperator.swift */; }; - OBJ_3537 /* SwiftRewriterAttribute.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_430 /* SwiftRewriterAttribute.swift */; }; - OBJ_3538 /* SwiftType+Stdlib.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_431 /* SwiftType+Stdlib.swift */; }; - OBJ_3539 /* SwiftType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_432 /* SwiftType.swift */; }; - OBJ_3540 /* SwiftTypeParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_433 /* SwiftTypeParser.swift */; }; - OBJ_3541 /* SyntaxNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_434 /* SyntaxNode.swift */; }; - OBJ_3542 /* SyntaxNodeIterator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_435 /* SyntaxNodeIterator.swift */; }; - OBJ_3543 /* SyntaxNodeRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_436 /* SyntaxNodeRewriter.swift */; }; - OBJ_3544 /* TypeFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_437 /* TypeFormatter.swift */; }; - OBJ_3545 /* UnknownASTContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_438 /* UnknownASTContext.swift */; }; - OBJ_3546 /* ValueMatcher+Matchers.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_439 /* ValueMatcher+Matchers.swift */; }; - OBJ_3547 /* ValueMatcher+PartialValueMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_440 /* ValueMatcher+PartialValueMatcher.swift */; }; - OBJ_3548 /* ValueMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_441 /* ValueMatcher.swift */; }; - OBJ_3549 /* ValueMatcherConvertible.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_442 /* ValueMatcherConvertible.swift */; }; - OBJ_3550 /* ValueStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_443 /* ValueStorage.swift */; }; - OBJ_3551 /* ValueTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_444 /* ValueTransformer.swift */; }; - OBJ_3552 /* AnonymousSyntaxNodeStatefulVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_446 /* AnonymousSyntaxNodeStatefulVisitor.swift */; }; - OBJ_3553 /* AnonymousSyntaxNodeVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_447 /* AnonymousSyntaxNodeVisitor.swift */; }; - OBJ_3554 /* BaseSyntaxNodeVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_448 /* BaseSyntaxNodeVisitor.swift */; }; - OBJ_3555 /* ExpressionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_449 /* ExpressionVisitor.swift */; }; - OBJ_3556 /* StatementStatefulVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_450 /* StatementStatefulVisitor.swift */; }; - OBJ_3557 /* StatementVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_451 /* StatementVisitor.swift */; }; - OBJ_3559 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_3560 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_3561 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3562 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3563 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_3574 /* AccessLevelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_807 /* AccessLevelTests.swift */; }; - OBJ_3575 /* Expression+MatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_808 /* Expression+MatcherTests.swift */; }; - OBJ_3576 /* PostfixExpressionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_810 /* PostfixExpressionTests.swift */; }; - OBJ_3577 /* SelectorExpressionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_811 /* SelectorExpressionTests.swift */; }; - OBJ_3578 /* ExpressionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_812 /* ExpressionTests.swift */; }; - OBJ_3579 /* FunctionIdentifierTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_813 /* FunctionIdentifierTests.swift */; }; - OBJ_3580 /* FunctionSignatureParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_814 /* FunctionSignatureParserTests.swift */; }; - OBJ_3581 /* PatternTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_815 /* PatternTests.swift */; }; - OBJ_3582 /* SwiftASTSerializerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_817 /* SwiftASTSerializerTests.swift */; }; - OBJ_3583 /* StatementTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_818 /* StatementTests.swift */; }; - OBJ_3584 /* FunctionSignatureTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_820 /* FunctionSignatureTests.swift */; }; - OBJ_3585 /* SwiftOperatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_821 /* SwiftOperatorTests.swift */; }; - OBJ_3586 /* SwiftTypeParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_822 /* SwiftTypeParserTests.swift */; }; - OBJ_3587 /* SwiftTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_823 /* SwiftTypeTests.swift */; }; - OBJ_3588 /* SyntaxNodeIteratorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_824 /* SyntaxNodeIteratorTests.swift */; }; - OBJ_3589 /* SyntaxNodeRewriterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_825 /* SyntaxNodeRewriterTests.swift */; }; - OBJ_3590 /* SyntaxNodeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_826 /* SyntaxNodeTests.swift */; }; - OBJ_3591 /* TypeFormatterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_827 /* TypeFormatterTests.swift */; }; - OBJ_3592 /* ValueMatcher+MatchersTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_828 /* ValueMatcher+MatchersTests.swift */; }; - OBJ_3593 /* ValueMatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_829 /* ValueMatcherTests.swift */; }; - OBJ_3594 /* ValueTransformerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_830 /* ValueTransformerTests.swift */; }; - OBJ_3596 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_3597 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_3598 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_3599 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_3600 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_3601 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_3602 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_3603 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_3604 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3605 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3606 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_3607 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_3608 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_3609 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_3610 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_3611 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_3612 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_3613 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_3614 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_3615 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_3616 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_3617 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_3618 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_3619 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_3620 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_3621 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_3622 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_3623 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_3624 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_3625 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_3626 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_3627 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_3628 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_3629 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_3630 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_3631 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3632 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3633 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_3676 /* DebugOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_885 /* DebugOptions.swift */; }; - OBJ_3677 /* Exports.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_886 /* Exports.swift */; }; - OBJ_3678 /* FormatPipeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_887 /* FormatPipeline.swift */; }; - OBJ_3679 /* LintPipeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_888 /* LintPipeline.swift */; }; - OBJ_3680 /* Pipelines+Generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_889 /* Pipelines+Generated.swift */; }; - OBJ_3681 /* SwiftFormatError.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_890 /* SwiftFormatError.swift */; }; - OBJ_3682 /* SwiftFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_891 /* SwiftFormatter.swift */; }; - OBJ_3683 /* SwiftLinter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_892 /* SwiftLinter.swift */; }; - OBJ_3684 /* SyntaxValidatingVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_893 /* SyntaxValidatingVisitor.swift */; }; - OBJ_3686 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_3687 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_3688 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_3689 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_3690 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3691 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3692 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3693 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3706 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_895 /* Configuration.swift */; }; - OBJ_3707 /* Indent.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_896 /* Indent.swift */; }; - OBJ_3708 /* RuleRegistry+Generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_897 /* RuleRegistry+Generated.swift */; }; - OBJ_3714 /* Context.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_899 /* Context.swift */; }; - OBJ_3715 /* Finding+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_900 /* Finding+Convenience.swift */; }; - OBJ_3716 /* Finding.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_901 /* Finding.swift */; }; - OBJ_3717 /* FindingCategorizing.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_902 /* FindingCategorizing.swift */; }; - OBJ_3718 /* FindingEmitter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_903 /* FindingEmitter.swift */; }; - OBJ_3719 /* Rule.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_904 /* Rule.swift */; }; - OBJ_3720 /* RuleBasedFindingCategory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_905 /* RuleBasedFindingCategory.swift */; }; - OBJ_3721 /* RuleMask.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_906 /* RuleMask.swift */; }; - OBJ_3722 /* RuleState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_907 /* RuleState.swift */; }; - OBJ_3723 /* SyntaxFormatRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_908 /* SyntaxFormatRule.swift */; }; - OBJ_3724 /* SyntaxLintRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_909 /* SyntaxLintRule.swift */; }; - OBJ_3725 /* SyntaxProtocol+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_910 /* SyntaxProtocol+Convenience.swift */; }; - OBJ_3726 /* Trivia+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_911 /* Trivia+Convenience.swift */; }; - OBJ_3728 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3729 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3730 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3738 /* Comment.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_913 /* Comment.swift */; }; - OBJ_3739 /* Indent+Length.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_914 /* Indent+Length.swift */; }; - OBJ_3740 /* OperatorContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_915 /* OperatorContext.swift */; }; - OBJ_3741 /* PrettyPrint.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_916 /* PrettyPrint.swift */; }; - OBJ_3742 /* PrettyPrintFindingCategory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_917 /* PrettyPrintFindingCategory.swift */; }; - OBJ_3743 /* SequenceExprFolding.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_918 /* SequenceExprFolding.swift */; }; - OBJ_3744 /* Token.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_919 /* Token.swift */; }; - OBJ_3745 /* TokenStreamCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_920 /* TokenStreamCreator.swift */; }; - OBJ_3746 /* Verbatim.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_921 /* Verbatim.swift */; }; - OBJ_3748 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3749 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3750 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3751 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3760 /* AddModifierRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_923 /* AddModifierRewriter.swift */; }; - OBJ_3761 /* AllPublicDeclarationsHaveDocumentation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_924 /* AllPublicDeclarationsHaveDocumentation.swift */; }; - OBJ_3762 /* AlwaysUseLowerCamelCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_925 /* AlwaysUseLowerCamelCase.swift */; }; - OBJ_3763 /* AmbiguousTrailingClosureOverload.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_926 /* AmbiguousTrailingClosureOverload.swift */; }; - OBJ_3764 /* BeginDocumentationCommentWithOneLineSummary.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_927 /* BeginDocumentationCommentWithOneLineSummary.swift */; }; - OBJ_3765 /* DeclSyntaxProtocol+Comments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_928 /* DeclSyntaxProtocol+Comments.swift */; }; - OBJ_3766 /* DoNotUseSemicolons.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_929 /* DoNotUseSemicolons.swift */; }; - OBJ_3767 /* DontRepeatTypeInStaticProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_930 /* DontRepeatTypeInStaticProperties.swift */; }; - OBJ_3768 /* FileScopedDeclarationPrivacy.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_931 /* FileScopedDeclarationPrivacy.swift */; }; - OBJ_3769 /* FullyIndirectEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_932 /* FullyIndirectEnum.swift */; }; - OBJ_3770 /* FunctionDeclSyntax+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_933 /* FunctionDeclSyntax+Convenience.swift */; }; - OBJ_3771 /* GroupNumericLiterals.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_934 /* GroupNumericLiterals.swift */; }; - OBJ_3772 /* IdentifiersMustBeASCII.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_935 /* IdentifiersMustBeASCII.swift */; }; - OBJ_3773 /* ImportsXCTestVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_936 /* ImportsXCTestVisitor.swift */; }; - OBJ_3774 /* ModifierListSyntax+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_937 /* ModifierListSyntax+Convenience.swift */; }; - OBJ_3775 /* NeverForceUnwrap.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_938 /* NeverForceUnwrap.swift */; }; - OBJ_3776 /* NeverUseForceTry.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_939 /* NeverUseForceTry.swift */; }; - OBJ_3777 /* NeverUseImplicitlyUnwrappedOptionals.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_940 /* NeverUseImplicitlyUnwrappedOptionals.swift */; }; - OBJ_3778 /* NoAccessLevelOnExtensionDeclaration.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_941 /* NoAccessLevelOnExtensionDeclaration.swift */; }; - OBJ_3779 /* NoBlockComments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_942 /* NoBlockComments.swift */; }; - OBJ_3780 /* NoCasesWithOnlyFallthrough.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_943 /* NoCasesWithOnlyFallthrough.swift */; }; - OBJ_3781 /* NoEmptyTrailingClosureParentheses.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_944 /* NoEmptyTrailingClosureParentheses.swift */; }; - OBJ_3782 /* NoLabelsInCasePatterns.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_945 /* NoLabelsInCasePatterns.swift */; }; - OBJ_3783 /* NoLeadingUnderscores.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_946 /* NoLeadingUnderscores.swift */; }; - OBJ_3784 /* NoParensAroundConditions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_947 /* NoParensAroundConditions.swift */; }; - OBJ_3785 /* NoPlaygroundLiterals.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_948 /* NoPlaygroundLiterals.swift */; }; - OBJ_3786 /* NoVoidReturnOnFunctionSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_949 /* NoVoidReturnOnFunctionSignature.swift */; }; - OBJ_3787 /* OneCasePerLine.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_950 /* OneCasePerLine.swift */; }; - OBJ_3788 /* OneVariableDeclarationPerLine.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_951 /* OneVariableDeclarationPerLine.swift */; }; - OBJ_3789 /* OnlyOneTrailingClosureArgument.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_952 /* OnlyOneTrailingClosureArgument.swift */; }; - OBJ_3790 /* OrderedImports.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_953 /* OrderedImports.swift */; }; - OBJ_3791 /* ReplaceTrivia.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_954 /* ReplaceTrivia.swift */; }; - OBJ_3792 /* ReturnVoidInsteadOfEmptyTuple.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_955 /* ReturnVoidInsteadOfEmptyTuple.swift */; }; - OBJ_3793 /* RuleNameCache+Generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_956 /* RuleNameCache+Generated.swift */; }; - OBJ_3794 /* SemicolonSyntaxProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_957 /* SemicolonSyntaxProtocol.swift */; }; - OBJ_3795 /* TokenSyntax+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_958 /* TokenSyntax+Convenience.swift */; }; - OBJ_3796 /* UseEarlyExits.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_959 /* UseEarlyExits.swift */; }; - OBJ_3797 /* UseLetInEveryBoundCaseVariable.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_960 /* UseLetInEveryBoundCaseVariable.swift */; }; - OBJ_3798 /* UseShorthandTypeNames.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_961 /* UseShorthandTypeNames.swift */; }; - OBJ_3799 /* UseSingleLinePropertyGetter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_962 /* UseSingleLinePropertyGetter.swift */; }; - OBJ_3800 /* UseSynthesizedInitializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_963 /* UseSynthesizedInitializer.swift */; }; - OBJ_3801 /* UseTripleSlashForDocumentationComments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_964 /* UseTripleSlashForDocumentationComments.swift */; }; - OBJ_3802 /* UseWhereClausesInForLoops.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_965 /* UseWhereClausesInForLoops.swift */; }; - OBJ_3803 /* ValidateDocumentationComments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_966 /* ValidateDocumentationComments.swift */; }; - OBJ_3804 /* VarDeclSyntax+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_967 /* VarDeclSyntax+Convenience.swift */; }; - OBJ_3806 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3807 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3808 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3809 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3818 /* LazySplitSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_969 /* LazySplitSequence.swift */; }; - OBJ_3819 /* RememberingIterator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_970 /* RememberingIterator.swift */; }; - OBJ_3820 /* WhitespaceFindingCategory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_971 /* WhitespaceFindingCategory.swift */; }; - OBJ_3821 /* WhitespaceLinter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_972 /* WhitespaceLinter.swift */; }; - OBJ_3823 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3824 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3825 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3826 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3836 /* GlobalOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_453 /* GlobalOptions.swift */; }; - OBJ_3837 /* ObjectiveCCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_454 /* ObjectiveCCommand.swift */; }; - OBJ_3838 /* ObjectiveCFrontendImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_455 /* ObjectiveCFrontendImpl.swift */; }; - OBJ_3839 /* ObjectiveCSwiftRewriterServiceImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_456 /* ObjectiveCSwiftRewriterServiceImpl.swift */; }; - OBJ_3840 /* StdoutFileCollectionStepListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_457 /* StdoutFileCollectionStepListener.swift */; }; - OBJ_3841 /* SwiftRewriterCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_458 /* SwiftRewriterCommand.swift */; }; - OBJ_3842 /* Target.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_459 /* Target.swift */; }; - OBJ_3843 /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_460 /* main.swift */; }; - OBJ_3845 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_3846 /* SwiftRewriterCLI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterCLI::Product /* SwiftRewriterCLI.framework */; }; - OBJ_3847 /* ArgumentParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParser::Product /* ArgumentParser.framework */; }; - OBJ_3848 /* ArgumentParserToolInfo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParserToolInfo::Product /* ArgumentParserToolInfo.framework */; }; - OBJ_3849 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_3850 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_3851 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_3852 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_3853 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_3854 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_3855 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3856 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3857 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_3858 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_3859 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_3860 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_3861 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_3862 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_3863 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_3864 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_3865 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_3866 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_3867 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_3868 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_3869 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_3133 /* JsASTNodeFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_226 /* JsASTNodeFactory.swift */; }; + OBJ_3134 /* JsImportDecl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_227 /* JsImportDecl.swift */; }; + OBJ_3135 /* JsImportDeclListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_228 /* JsImportDeclListener.swift */; }; + OBJ_3136 /* JsNodeCreationContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_229 /* JsNodeCreationContext.swift */; }; + OBJ_3137 /* JsParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_230 /* JsParser.swift */; }; + OBJ_3138 /* JsParserListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_231 /* JsParserListener.swift */; }; + OBJ_3139 /* JsParserState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_232 /* JsParserState.swift */; }; + OBJ_3141 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_3142 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3143 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_3144 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3145 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_3146 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3147 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3148 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3149 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3163 /* JavaScriptLexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_234 /* JavaScriptLexer.swift */; }; + OBJ_3164 /* JavaScriptLexerBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_235 /* JavaScriptLexerBase.swift */; }; + OBJ_3165 /* JavaScriptParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_236 /* JavaScriptParser.swift */; }; + OBJ_3166 /* JavaScriptParserBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_237 /* JavaScriptParserBase.swift */; }; + OBJ_3167 /* JavaScriptParserBaseListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_238 /* JavaScriptParserBaseListener.swift */; }; + OBJ_3168 /* JavaScriptParserBaseVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_239 /* JavaScriptParserBaseVisitor.swift */; }; + OBJ_3169 /* JavaScriptParserListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_240 /* JavaScriptParserListener.swift */; }; + OBJ_3170 /* JavaScriptParserVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_241 /* JavaScriptParserVisitor.swift */; }; + OBJ_3171 /* shim.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_242 /* shim.swift */; }; + OBJ_3173 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3174 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3175 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3176 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3186 /* JsParserListenerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_837 /* JsParserListenerTests.swift */; }; + OBJ_3187 /* JsParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_838 /* JsParserTests.swift */; }; + OBJ_3188 /* Resources.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_839 /* Resources.swift */; }; + OBJ_3190 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_3191 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_3192 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_3193 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_3194 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_3195 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_3196 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_3197 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_3198 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_3199 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_3200 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_3201 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_3202 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_3203 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_3204 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_3205 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_3206 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_3207 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_3208 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_3209 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_3210 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_3211 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_3212 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_3213 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3214 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_3215 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_3216 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_3217 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_3218 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_3219 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_3220 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_3221 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_3222 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_3223 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3224 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_3225 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3226 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_3227 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3228 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3229 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3230 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3276 /* AttributeTaggableObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_244 /* AttributeTaggableObject.swift */; }; + OBJ_3277 /* KnownAttribute.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_245 /* KnownAttribute.swift */; }; + OBJ_3278 /* KnownDeclaration.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_246 /* KnownDeclaration.swift */; }; + OBJ_3279 /* KnownFile+Equality.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_247 /* KnownFile+Equality.swift */; }; + OBJ_3280 /* KnownFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_248 /* KnownFile.swift */; }; + OBJ_3281 /* KnownFileBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_249 /* KnownFileBuilder.swift */; }; + OBJ_3282 /* KnownType+Equality.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_250 /* KnownType+Equality.swift */; }; + OBJ_3283 /* KnownType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_251 /* KnownType.swift */; }; + OBJ_3284 /* KnownTypeBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_252 /* KnownTypeBuilder.swift */; }; + OBJ_3285 /* KnownTypeSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_253 /* KnownTypeSerializer.swift */; }; + OBJ_3286 /* Semantic.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_254 /* Semantic.swift */; }; + OBJ_3287 /* SemanticalObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_255 /* SemanticalObject.swift */; }; + OBJ_3288 /* Semantics.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_256 /* Semantics.swift */; }; + OBJ_3289 /* TypeFormatter+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_257 /* TypeFormatter+Ext.swift */; }; + OBJ_3291 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_3292 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3293 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_3294 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_3295 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_3296 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3308 /* KnownFileBuilderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_841 /* KnownFileBuilderTests.swift */; }; + OBJ_3309 /* KnownTypeSerializerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_842 /* KnownTypeSerializerTests.swift */; }; + OBJ_3310 /* TypeFormatter+ExtTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_843 /* TypeFormatter+ExtTests.swift */; }; + OBJ_3312 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_3313 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_3314 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_3315 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_3316 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_3317 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_3318 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_3319 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_3320 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_3321 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_3322 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_3323 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_3324 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_3325 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_3326 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_3327 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_3328 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_3329 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_3330 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_3331 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_3332 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_3333 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_3334 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_3335 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_3336 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_3337 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_3338 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_3339 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3340 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3341 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_3342 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_3343 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3344 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3345 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3346 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_3347 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_3348 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3349 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_3350 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_3351 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_3352 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3398 /* GrammarRules+Operators.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1353 /* GrammarRules+Operators.swift */; }; + OBJ_3399 /* GrammarRules.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1354 /* GrammarRules.swift */; }; + OBJ_3400 /* Lexer+Advance.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1355 /* Lexer+Advance.swift */; }; + OBJ_3401 /* Lexer+AdvancedParsing.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1356 /* Lexer+AdvancedParsing.swift */; }; + OBJ_3402 /* Lexer+Consume.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1357 /* Lexer+Consume.swift */; }; + OBJ_3403 /* Lexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1358 /* Lexer.swift */; }; + OBJ_3404 /* TokenProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1359 /* TokenProtocol.swift */; }; + OBJ_3405 /* TokenizerLexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1360 /* TokenizerLexer.swift */; }; + OBJ_3412 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1364 /* Package.swift */; }; + OBJ_3417 /* ASTNodeSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_259 /* ASTNodeSerialization.swift */; }; + OBJ_3418 /* ObjcASTNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_260 /* ObjcASTNode.swift */; }; + OBJ_3419 /* ObjcClass+Method.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_261 /* ObjcClass+Method.swift */; }; + OBJ_3420 /* ObjcClass+Property.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_262 /* ObjcClass+Property.swift */; }; + OBJ_3421 /* ObjcClassCategoryInterfaceNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_263 /* ObjcClassCategoryInterfaceNode.swift */; }; + OBJ_3422 /* ObjcClassImplementationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_264 /* ObjcClassImplementationNode.swift */; }; + OBJ_3423 /* ObjcClassInterfaceNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_265 /* ObjcClassInterfaceNode.swift */; }; + OBJ_3424 /* ObjcEnumDeclarationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_266 /* ObjcEnumDeclarationNode.swift */; }; + OBJ_3425 /* ObjcExpressionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_267 /* ObjcExpressionNode.swift */; }; + OBJ_3426 /* ObjcFunctionDefinitionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_268 /* ObjcFunctionDefinitionNode.swift */; }; + OBJ_3427 /* ObjcGlobalContextNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_269 /* ObjcGlobalContextNode.swift */; }; + OBJ_3428 /* ObjcIdentifierNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_270 /* ObjcIdentifierNode.swift */; }; + OBJ_3429 /* ObjcInitializableNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_271 /* ObjcInitializableNode.swift */; }; + OBJ_3430 /* ObjcKeyword.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_272 /* ObjcKeyword.swift */; }; + OBJ_3431 /* ObjcKeywordNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_273 /* ObjcKeywordNode.swift */; }; + OBJ_3432 /* ObjcOperator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_274 /* ObjcOperator.swift */; }; + OBJ_3433 /* ObjcPreprocessorDirective.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_275 /* ObjcPreprocessorDirective.swift */; }; + OBJ_3434 /* ObjcPropertyImplementationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_276 /* ObjcPropertyImplementationNode.swift */; }; + OBJ_3435 /* ObjcPropertySynthesizeListNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_277 /* ObjcPropertySynthesizeListNode.swift */; }; + OBJ_3436 /* ObjcProtocolDeclarationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_278 /* ObjcProtocolDeclarationNode.swift */; }; + OBJ_3437 /* ObjcStructDeclarationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_279 /* ObjcStructDeclarationNode.swift */; }; + OBJ_3438 /* ObjcTokenType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_280 /* ObjcTokenType.swift */; }; + OBJ_3439 /* ObjcType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_281 /* ObjcType.swift */; }; + OBJ_3440 /* ObjcTypeNameNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_282 /* ObjcTypeNameNode.swift */; }; + OBJ_3441 /* ObjcTypedefNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_283 /* ObjcTypedefNode.swift */; }; + OBJ_3442 /* ObjcUnknownNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_284 /* ObjcUnknownNode.swift */; }; + OBJ_3443 /* ObjcVariableDeclarationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_285 /* ObjcVariableDeclarationNode.swift */; }; + OBJ_3445 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3446 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3447 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3448 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3449 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3450 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3462 /* ObjcGrammarModelsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_845 /* ObjcGrammarModelsTests.swift */; }; + OBJ_3464 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_3465 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3466 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3467 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3468 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3469 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3470 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3482 /* ConstantExtractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_287 /* ConstantExtractor.swift */; }; + OBJ_3483 /* AntlrDeclarationParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_289 /* AntlrDeclarationParser.swift */; }; + OBJ_3484 /* DeclarationExtractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_290 /* DeclarationExtractor.swift */; }; + OBJ_3485 /* DeclarationSyntaxElementType+ObjcType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_291 /* DeclarationSyntaxElementType+ObjcType.swift */; }; + OBJ_3486 /* DeclarationSyntaxElementType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_292 /* DeclarationSyntaxElementType.swift */; }; + OBJ_3487 /* ConstantExpressionSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_295 /* ConstantExpressionSyntax.swift */; }; + OBJ_3488 /* ExpressionSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_296 /* ExpressionSyntax.swift */; }; + OBJ_3489 /* IdentifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_297 /* IdentifierSyntax.swift */; }; + OBJ_3490 /* InitializerSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_298 /* InitializerSyntax.swift */; }; + OBJ_3491 /* ParameterDeclarationSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_299 /* ParameterDeclarationSyntax.swift */; }; + OBJ_3492 /* ParameterListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_300 /* ParameterListSyntax.swift */; }; + OBJ_3493 /* ParameterTypeListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_301 /* ParameterTypeListSyntax.swift */; }; + OBJ_3494 /* PointerSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_302 /* PointerSyntax.swift */; }; + OBJ_3495 /* ProtocolReferenceListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_303 /* ProtocolReferenceListSyntax.swift */; }; + OBJ_3496 /* SpecifierQualifierListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_304 /* SpecifierQualifierListSyntax.swift */; }; + OBJ_3497 /* TypeQualifierListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_305 /* TypeQualifierListSyntax.swift */; }; + OBJ_3498 /* DeclarationSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_306 /* DeclarationSpecifierSyntax.swift */; }; + OBJ_3499 /* AlignmentSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_308 /* AlignmentSpecifierSyntax.swift */; }; + OBJ_3500 /* ArcBehaviourSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_309 /* ArcBehaviourSpecifierSyntax.swift */; }; + OBJ_3501 /* BlockDeclarationSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_310 /* BlockDeclarationSpecifierSyntax.swift */; }; + OBJ_3502 /* FunctionSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_311 /* FunctionSpecifierSyntax.swift */; }; + OBJ_3503 /* IBOutletQualifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_312 /* IBOutletQualifierSyntax.swift */; }; + OBJ_3504 /* NullabilitySpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_313 /* NullabilitySpecifierSyntax.swift */; }; + OBJ_3505 /* ProtocolQualifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_314 /* ProtocolQualifierSyntax.swift */; }; + OBJ_3506 /* StorageClassSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_315 /* StorageClassSpecifierSyntax.swift */; }; + OBJ_3507 /* TypePrefixSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_316 /* TypePrefixSyntax.swift */; }; + OBJ_3508 /* TypeQualifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_317 /* TypeQualifierSyntax.swift */; }; + OBJ_3509 /* TypeSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_318 /* TypeSpecifierSyntax.swift */; }; + OBJ_3510 /* EnumSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_320 /* EnumSpecifierSyntax.swift */; }; + OBJ_3511 /* GenericTypeSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_321 /* GenericTypeSpecifierSyntax.swift */; }; + OBJ_3512 /* ScalarTypeSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_322 /* ScalarTypeSpecifierSyntax.swift */; }; + OBJ_3513 /* StructOrUnionSpecifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_323 /* StructOrUnionSpecifierSyntax.swift */; }; + OBJ_3514 /* TypeIdentifierSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_324 /* TypeIdentifierSyntax.swift */; }; + OBJ_3515 /* DeclarationSpecifiersSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_325 /* DeclarationSpecifiersSyntax.swift */; }; + OBJ_3516 /* DeclarationSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_326 /* DeclarationSyntax.swift */; }; + OBJ_3517 /* DeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_328 /* DeclaratorSyntax.swift */; }; + OBJ_3518 /* DirectDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_329 /* DirectDeclaratorSyntax.swift */; }; + OBJ_3519 /* ArrayDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_331 /* ArrayDeclaratorSyntax.swift */; }; + OBJ_3520 /* BlockDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_332 /* BlockDeclaratorSyntax.swift */; }; + OBJ_3521 /* FunctionDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_333 /* FunctionDeclaratorSyntax.swift */; }; + OBJ_3522 /* FieldDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_334 /* FieldDeclaratorSyntax.swift */; }; + OBJ_3523 /* FieldDeclarationSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_335 /* FieldDeclarationSyntax.swift */; }; + OBJ_3524 /* InitDeclarationListSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_336 /* InitDeclarationListSyntax.swift */; }; + OBJ_3525 /* InitDeclarationSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_337 /* InitDeclarationSyntax.swift */; }; + OBJ_3526 /* AbstractDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_339 /* AbstractDeclaratorSyntax.swift */; }; + OBJ_3527 /* DirectAbstractDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_340 /* DirectAbstractDeclaratorSyntax.swift */; }; + OBJ_3528 /* ArrayAbstractDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_342 /* ArrayAbstractDeclaratorSyntax.swift */; }; + OBJ_3529 /* BlockAbstractDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_343 /* BlockAbstractDeclaratorSyntax.swift */; }; + OBJ_3530 /* FunctionAbstractDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_344 /* FunctionAbstractDeclaratorSyntax.swift */; }; + OBJ_3531 /* TypeNameSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_345 /* TypeNameSyntax.swift */; }; + OBJ_3532 /* TypeVariableDeclaratorSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_346 /* TypeVariableDeclaratorSyntax.swift */; }; + OBJ_3533 /* DeclarationTranslator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_347 /* DeclarationTranslator.swift */; }; + OBJ_3534 /* DefinitionCollector.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_348 /* DefinitionCollector.swift */; }; + OBJ_3535 /* Lexer+ObjcLexing.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_349 /* Lexer+ObjcLexing.swift */; }; + OBJ_3536 /* NodeContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_350 /* NodeContext.swift */; }; + OBJ_3537 /* NonnullContextQuerier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_351 /* NonnullContextQuerier.swift */; }; + OBJ_3538 /* ObjcASTNodeFactory+DeclarationSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_352 /* ObjcASTNodeFactory+DeclarationSyntax.swift */; }; + OBJ_3539 /* ObjcASTNodeFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_353 /* ObjcASTNodeFactory.swift */; }; + OBJ_3540 /* ObjcImportDecl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_354 /* ObjcImportDecl.swift */; }; + OBJ_3541 /* ObjcParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_355 /* ObjcParser.swift */; }; + OBJ_3542 /* ObjcParserListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_356 /* ObjcParserListener.swift */; }; + OBJ_3543 /* ObjcParserState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_357 /* ObjcParserState.swift */; }; + OBJ_3544 /* ObjcPreprocessorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_358 /* ObjcPreprocessorListener.swift */; }; + OBJ_3545 /* ObjcTokenType+TokenProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_359 /* ObjcTokenType+TokenProtocol.swift */; }; + OBJ_3546 /* ObjcTypeParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_360 /* ObjcTypeParser.swift */; }; + OBJ_3547 /* ObjectiveCParser+ParserRuleContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_361 /* ObjectiveCParser+ParserRuleContext.swift */; }; + OBJ_3548 /* ObjectiveCParser+RuleExt.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_362 /* ObjectiveCParser+RuleExt.swift */; }; + OBJ_3549 /* ObjectiveCPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_363 /* ObjectiveCPreprocessor.swift */; }; + OBJ_3550 /* Source+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_364 /* Source+Ext.swift */; }; + OBJ_3551 /* VarDeclarationIdentifierNameExtractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_365 /* VarDeclarationIdentifierNameExtractor.swift */; }; + OBJ_3553 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_3554 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3555 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_3556 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3557 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3558 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3559 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3560 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3561 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3575 /* ObjectiveCLexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_367 /* ObjectiveCLexer.swift */; }; + OBJ_3576 /* ObjectiveCParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_368 /* ObjectiveCParser.swift */; }; + OBJ_3577 /* ObjectiveCParserBaseListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_369 /* ObjectiveCParserBaseListener.swift */; }; + OBJ_3578 /* ObjectiveCParserBaseVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_370 /* ObjectiveCParserBaseVisitor.swift */; }; + OBJ_3579 /* ObjectiveCParserListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_371 /* ObjectiveCParserListener.swift */; }; + OBJ_3580 /* ObjectiveCParserVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_372 /* ObjectiveCParserVisitor.swift */; }; + OBJ_3581 /* ObjectiveCPreprocessorLexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_373 /* ObjectiveCPreprocessorLexer.swift */; }; + OBJ_3582 /* ObjectiveCPreprocessorParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_374 /* ObjectiveCPreprocessorParser.swift */; }; + OBJ_3583 /* ObjectiveCPreprocessorParserBaseListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_375 /* ObjectiveCPreprocessorParserBaseListener.swift */; }; + OBJ_3584 /* ObjectiveCPreprocessorParserBaseVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_376 /* ObjectiveCPreprocessorParserBaseVisitor.swift */; }; + OBJ_3585 /* ObjectiveCPreprocessorParserListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_377 /* ObjectiveCPreprocessorParserListener.swift */; }; + OBJ_3586 /* ObjectiveCPreprocessorParserVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_378 /* ObjectiveCPreprocessorParserVisitor.swift */; }; + OBJ_3587 /* shim.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_379 /* shim.swift */; }; + OBJ_3589 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3590 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3591 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3592 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3602 /* AntlrDeclarationParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_848 /* AntlrDeclarationParserTests.swift */; }; + OBJ_3603 /* DeclarationExtractorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_849 /* DeclarationExtractorTests.swift */; }; + OBJ_3604 /* DeclarationTranslatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_850 /* DeclarationTranslatorTests.swift */; }; + OBJ_3605 /* DefinitionCollectorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_851 /* DefinitionCollectorTests.swift */; }; + OBJ_3606 /* ObjcParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_852 /* ObjcParserTests.swift */; }; + OBJ_3607 /* ObjcTypeParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_853 /* ObjcTypeParserTests.swift */; }; + OBJ_3608 /* AntlrErrorListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_855 /* AntlrErrorListener.swift */; }; + OBJ_3609 /* BaseParserTestFixture.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_856 /* BaseParserTestFixture.swift */; }; + OBJ_3610 /* DeclarationExtractor+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_857 /* DeclarationExtractor+Asserter.swift */; }; + OBJ_3611 /* DeclarationSyntaxElementType+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_858 /* DeclarationSyntaxElementType+Asserter.swift */; }; + OBJ_3612 /* DeclarationTranslator+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_859 /* DeclarationTranslator+Asserter.swift */; }; + OBJ_3614 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_3615 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_3616 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_3617 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_3618 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_3619 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_3620 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_3621 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_3622 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_3623 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_3624 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_3625 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_3626 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_3627 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_3628 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_3629 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_3630 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_3631 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_3632 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_3633 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_3634 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_3635 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_3636 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_3637 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_3638 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_3639 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_3640 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_3641 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_3642 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_3643 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_3644 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_3645 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_3646 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_3647 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3648 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_3649 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3650 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3651 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3652 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3653 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3654 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3700 /* CPreprocessorDirectiveConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_381 /* CPreprocessorDirectiveConverter.swift */; }; + OBJ_3701 /* ObjectiveCASTCorrectorExpressionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_383 /* ObjectiveCASTCorrectorExpressionPass.swift */; }; + OBJ_3702 /* Intention+Metadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_384 /* Intention+Metadata.swift */; }; + OBJ_3703 /* Intention+TypedSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_385 /* Intention+TypedSource.swift */; }; + OBJ_3704 /* ObjectiveCPropertyMergeIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_387 /* ObjectiveCPropertyMergeIntentionPass.swift */; }; + OBJ_3705 /* MandatoryIntentionPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_388 /* MandatoryIntentionPass.swift */; }; + OBJ_3706 /* MandatorySyntaxNodePass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_389 /* MandatorySyntaxNodePass.swift */; }; + OBJ_3707 /* ObjcParserStatePool.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_390 /* ObjcParserStatePool.swift */; }; + OBJ_3708 /* ObjectiveC2SwiftRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_391 /* ObjectiveC2SwiftRewriter.swift */; }; + OBJ_3709 /* ObjectiveC2SwiftRewriterJob.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_392 /* ObjectiveC2SwiftRewriterJob.swift */; }; + OBJ_3710 /* ObjectiveC2SwiftRewriterJobBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_393 /* ObjectiveC2SwiftRewriterJobBuilder.swift */; }; + OBJ_3711 /* ObjectiveCASTReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_394 /* ObjectiveCASTReader.swift */; }; + OBJ_3712 /* ObjectiveCASTReaderContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_395 /* ObjectiveCASTReaderContext.swift */; }; + OBJ_3713 /* ObjectiveCExprASTReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_396 /* ObjectiveCExprASTReader.swift */; }; + OBJ_3714 /* ObjectiveCFileCollectionStep.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_397 /* ObjectiveCFileCollectionStep.swift */; }; + OBJ_3715 /* ObjectiveCFileCollectionStepDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_398 /* ObjectiveCFileCollectionStepDelegate.swift */; }; + OBJ_3716 /* ObjectiveCFrontend.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_399 /* ObjectiveCFrontend.swift */; }; + OBJ_3717 /* ObjectiveCImportDirectiveFileCollectionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_400 /* ObjectiveCImportDirectiveFileCollectionDelegate.swift */; }; + OBJ_3718 /* ObjectiveCIntentionCollector.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_401 /* ObjectiveCIntentionCollector.swift */; }; + OBJ_3719 /* ObjectiveCMethodSignatureConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_402 /* ObjectiveCMethodSignatureConverter.swift */; }; + OBJ_3720 /* ObjectiveCParserCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_403 /* ObjectiveCParserCache.swift */; }; + OBJ_3721 /* ObjectiveCStatementASTReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_404 /* ObjectiveCStatementASTReader.swift */; }; + OBJ_3722 /* ObjectiveCSwiftRewriterService.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_405 /* ObjectiveCSwiftRewriterService.swift */; }; + OBJ_3724 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_3725 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_3726 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_3727 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_3728 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_3729 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_3730 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_3731 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_3732 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_3733 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_3734 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_3735 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_3736 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_3737 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_3738 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_3739 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_3740 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_3741 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_3742 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_3743 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_3744 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_3745 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_3746 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_3747 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_3748 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_3749 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_3750 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_3751 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3752 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3753 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3754 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3755 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3756 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_3757 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_3758 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3759 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_3760 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_3761 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_3762 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3807 /* ASTRewriterPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_861 /* ASTRewriterPassTests.swift */; }; + OBJ_3808 /* CPreprocessorDirectiveConverterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_862 /* CPreprocessorDirectiveConverterTests.swift */; }; + OBJ_3809 /* ObjectiveCASTCorrectorExpressionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_864 /* ObjectiveCASTCorrectorExpressionPassTests.swift */; }; + OBJ_3810 /* MultiFileTestBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_866 /* MultiFileTestBuilder.swift */; }; + OBJ_3811 /* SingleFileTestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_867 /* SingleFileTestUtils.swift */; }; + OBJ_3812 /* ObjectiveCPropertyMergeIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_869 /* ObjectiveCPropertyMergeIntentionPassTests.swift */; }; + OBJ_3813 /* ObjectiveC2SwiftRewriter+Crashers.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_870 /* ObjectiveC2SwiftRewriter+Crashers.swift */; }; + OBJ_3814 /* ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_871 /* ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift */; }; + OBJ_3815 /* ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_872 /* ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift */; }; + OBJ_3816 /* ObjectiveC2SwiftRewriter+IntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_873 /* ObjectiveC2SwiftRewriter+IntentionPassTests.swift */; }; + OBJ_3817 /* ObjectiveC2SwiftRewriter+MultiFilesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_874 /* ObjectiveC2SwiftRewriter+MultiFilesTests.swift */; }; + OBJ_3818 /* ObjectiveC2SwiftRewriter+NullabilityTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_875 /* ObjectiveC2SwiftRewriter+NullabilityTests.swift */; }; + OBJ_3819 /* ObjectiveC2SwiftRewriter+SourcePreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_876 /* ObjectiveC2SwiftRewriter+SourcePreprocessor.swift */; }; + OBJ_3820 /* ObjectiveC2SwiftRewriter+StmtTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_877 /* ObjectiveC2SwiftRewriter+StmtTests.swift */; }; + OBJ_3821 /* ObjectiveC2SwiftRewriter+ThreadingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_878 /* ObjectiveC2SwiftRewriter+ThreadingTests.swift */; }; + OBJ_3822 /* ObjectiveC2SwiftRewriter+TypingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_879 /* ObjectiveC2SwiftRewriter+TypingTests.swift */; }; + OBJ_3823 /* ObjectiveC2SwiftRewriterJobBuilderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_880 /* ObjectiveC2SwiftRewriterJobBuilderTests.swift */; }; + OBJ_3824 /* ObjectiveC2SwiftRewriterJobTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_881 /* ObjectiveC2SwiftRewriterJobTests.swift */; }; + OBJ_3825 /* ObjectiveC2SwiftRewriterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_882 /* ObjectiveC2SwiftRewriterTests.swift */; }; + OBJ_3826 /* ObjectiveCASTReaderContextTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_883 /* ObjectiveCASTReaderContextTests.swift */; }; + OBJ_3827 /* ObjectiveCExprASTReaderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_884 /* ObjectiveCExprASTReaderTests.swift */; }; + OBJ_3828 /* ObjectiveCFileCollectionStepTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_885 /* ObjectiveCFileCollectionStepTests.swift */; }; + OBJ_3829 /* ObjectiveCImportDirectiveFileCollectionDelegateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_886 /* ObjectiveCImportDirectiveFileCollectionDelegateTests.swift */; }; + OBJ_3830 /* ObjectiveCIntentionCollectorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_887 /* ObjectiveCIntentionCollectorTests.swift */; }; + OBJ_3831 /* ObjectiveCMethodSignatureConverterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_888 /* ObjectiveCMethodSignatureConverterTests.swift */; }; + OBJ_3832 /* ObjectiveCStatementASTReaderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_889 /* ObjectiveCStatementASTReaderTests.swift */; }; + OBJ_3833 /* PropertyMergeIntentionPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_890 /* PropertyMergeIntentionPassTests.swift */; }; + OBJ_3834 /* TestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_891 /* TestUtils.swift */; }; + OBJ_3836 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_3837 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_3838 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_3839 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_3840 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_3841 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_3842 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_3843 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_3844 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_3845 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_3846 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_3847 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_3848 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_3849 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_3850 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_3851 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_3852 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_3853 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_3854 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_3855 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_3856 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_3857 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_3858 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_3859 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_3860 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_3861 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_3862 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_3863 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_3864 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_3865 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3866 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3867 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3868 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3869 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; OBJ_3870 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; OBJ_3871 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_3872 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_3873 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3874 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3875 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_3876 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_3877 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_3878 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_3879 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_3880 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_3881 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_3882 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_3883 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_3884 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_3930 /* FilesExplorer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_462 /* FilesExplorer.swift */; }; - OBJ_3931 /* Menu.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_463 /* Menu.swift */; }; - OBJ_3932 /* Stopwatch.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_464 /* Stopwatch.swift */; }; - OBJ_3933 /* SwiftRewriterFrontend.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_465 /* SwiftRewriterFrontend.swift */; }; - OBJ_3935 /* ArgumentParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParser::Product /* ArgumentParser.framework */; }; - OBJ_3936 /* ArgumentParserToolInfo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParserToolInfo::Product /* ArgumentParserToolInfo.framework */; }; - OBJ_3937 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_3938 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_3939 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_3940 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_3941 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_3942 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_3943 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_3944 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_3945 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_3946 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_3947 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_3948 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_3949 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_3950 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_3951 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_3952 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_3953 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_3954 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_3955 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_3956 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_3957 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_3958 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_3959 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_3960 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_3961 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_3962 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_3963 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_3964 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_3965 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_3966 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_3967 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_3968 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_3969 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_3970 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_3971 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_3972 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4015 /* ColorizeSyntaxVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_467 /* ColorizeSyntaxVisitor.swift */; }; - OBJ_4016 /* DiskInputFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_468 /* DiskInputFile.swift */; }; - OBJ_4017 /* FileDiskProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_469 /* FileDiskProvider.swift */; }; - OBJ_4018 /* FileProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_470 /* FileProvider.swift */; }; - OBJ_4019 /* FileWriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_471 /* FileWriterOutput.swift */; }; - OBJ_4020 /* InputSourcesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_472 /* InputSourcesProvider.swift */; }; - OBJ_4021 /* NullWriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_473 /* NullWriterOutput.swift */; }; - OBJ_4022 /* PathFilter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_474 /* PathFilter.swift */; }; - OBJ_4023 /* SingleInputProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_475 /* SingleInputProvider.swift */; }; - OBJ_4024 /* StdoutWriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_476 /* StdoutWriterOutput.swift */; }; - OBJ_4025 /* SwiftASTCommentApplier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_477 /* SwiftASTCommentApplier.swift */; }; - OBJ_4026 /* SwiftRewriterService.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_478 /* SwiftRewriterService.swift */; }; - OBJ_4027 /* SwiftSyntaxOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_479 /* SwiftSyntaxOptions.swift */; }; - OBJ_4028 /* SwiftWriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_480 /* SwiftWriter.swift */; }; - OBJ_4029 /* WriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_481 /* WriterOutput.swift */; }; - OBJ_4031 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_4032 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_4033 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_4034 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_4035 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_4036 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_4037 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_4038 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_4039 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_4040 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_4041 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_4042 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_4043 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_4044 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_4045 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_4046 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_4047 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_4048 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_4049 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4050 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_4051 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4052 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4053 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4054 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4055 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4056 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_4057 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_4058 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4059 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_4060 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4061 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_4062 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_4063 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4064 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4065 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4106 /* ColorizeSyntaxVisitorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_832 /* ColorizeSyntaxVisitorTests.swift */; }; - OBJ_4107 /* SwiftWriterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_833 /* SwiftWriterTests.swift */; }; - OBJ_4109 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_4110 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_4111 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_4112 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_4113 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_4114 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_4115 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_4116 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_4117 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_4118 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_4119 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_4120 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_4121 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_4122 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_4123 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_4124 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_4125 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_4126 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_4127 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_4128 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_4129 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_4130 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4131 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_4132 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4133 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4134 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4135 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4136 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4137 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_4138 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_4139 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4140 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_4141 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4142 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_4143 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_4144 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4145 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4146 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4190 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_6 /* Package.swift */; }; - OBJ_4228 /* SwiftRewriterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_835 /* SwiftRewriterTests.swift */; }; - OBJ_4230 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_4231 /* SwiftRewriterCLI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterCLI::Product /* SwiftRewriterCLI.framework */; }; - OBJ_4232 /* ArgumentParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParser::Product /* ArgumentParser.framework */; }; - OBJ_4233 /* ArgumentParserToolInfo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParserToolInfo::Product /* ArgumentParserToolInfo.framework */; }; - OBJ_4234 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_4235 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_4236 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_4237 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_4238 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_4239 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_4240 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_4241 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_4242 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_4243 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_4244 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_4245 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_4246 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_4247 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_4248 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_4249 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_4250 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_4251 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_4252 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_4253 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4254 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_4255 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4256 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4257 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4258 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4259 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4260 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_4261 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_4262 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4263 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_4264 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4265 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_4266 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_4267 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4268 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4269 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4315 /* AbsolutePosition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_977 /* AbsolutePosition.swift */; }; - OBJ_4316 /* AtomicCounter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_978 /* AtomicCounter.swift */; }; - OBJ_4317 /* CNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_979 /* CNodes.swift */; }; - OBJ_4318 /* IncrementalParseTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_980 /* IncrementalParseTransition.swift */; }; - OBJ_4319 /* RawSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_981 /* RawSyntax.swift */; }; - OBJ_4320 /* SourceLength.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_982 /* SourceLength.swift */; }; - OBJ_4321 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_983 /* SourceLocation.swift */; }; - OBJ_4322 /* SourcePresence.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_984 /* SourcePresence.swift */; }; - OBJ_4323 /* Syntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_985 /* Syntax.swift */; }; - OBJ_4324 /* SyntaxChildren.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_986 /* SyntaxChildren.swift */; }; - OBJ_4325 /* SyntaxClassifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_987 /* SyntaxClassifier.swift */; }; - OBJ_4326 /* SyntaxData.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_988 /* SyntaxData.swift */; }; - OBJ_4327 /* SyntaxOtherNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_989 /* SyntaxOtherNodes.swift */; }; - OBJ_4328 /* SyntaxVerifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_990 /* SyntaxVerifier.swift */; }; - OBJ_4329 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_991 /* Utils.swift */; }; - OBJ_4330 /* _SyntaxParserInterop.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_992 /* _SyntaxParserInterop.swift */; }; - OBJ_4331 /* Misc.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_994 /* Misc.swift */; }; - OBJ_4332 /* SyntaxAnyVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_995 /* SyntaxAnyVisitor.swift */; }; - OBJ_4333 /* SyntaxBaseNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_996 /* SyntaxBaseNodes.swift */; }; - OBJ_4334 /* SyntaxBuilders.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_997 /* SyntaxBuilders.swift */; }; - OBJ_4335 /* SyntaxClassification.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_998 /* SyntaxClassification.swift */; }; - OBJ_4336 /* SyntaxCollections.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_999 /* SyntaxCollections.swift */; }; - OBJ_4337 /* SyntaxEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1000 /* SyntaxEnum.swift */; }; - OBJ_4338 /* SyntaxFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1001 /* SyntaxFactory.swift */; }; - OBJ_4339 /* SyntaxKind.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1002 /* SyntaxKind.swift */; }; - OBJ_4340 /* SyntaxRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1003 /* SyntaxRewriter.swift */; }; - OBJ_4341 /* SyntaxTraits.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1004 /* SyntaxTraits.swift */; }; - OBJ_4342 /* SyntaxVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1005 /* SyntaxVisitor.swift */; }; - OBJ_4343 /* TokenKind.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1006 /* TokenKind.swift */; }; - OBJ_4344 /* Trivia.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1007 /* Trivia.swift */; }; - OBJ_4345 /* SyntaxDeclNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1009 /* SyntaxDeclNodes.swift */; }; - OBJ_4346 /* SyntaxExprNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1010 /* SyntaxExprNodes.swift */; }; - OBJ_4347 /* SyntaxNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1011 /* SyntaxNodes.swift */; }; - OBJ_4348 /* SyntaxPatternNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1012 /* SyntaxPatternNodes.swift */; }; - OBJ_4349 /* SyntaxStmtNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1013 /* SyntaxStmtNodes.swift */; }; - OBJ_4350 /* SyntaxTypeNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1014 /* SyntaxTypeNodes.swift */; }; - OBJ_4352 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4359 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1029 /* Package.swift */; }; - OBJ_4364 /* CNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1017 /* CNodes.swift */; }; - OBJ_4365 /* Diagnostic.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1018 /* Diagnostic.swift */; }; - OBJ_4366 /* SyntaxParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1019 /* SyntaxParser.swift */; }; - OBJ_4367 /* NodeDeclarationHash.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1021 /* NodeDeclarationHash.swift */; }; - OBJ_4369 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4370 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4377 /* DefaultSyntaxPassProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_483 /* DefaultSyntaxPassProvider.swift */; }; - OBJ_4378 /* StatementSpacingSyntaxPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_484 /* StatementSpacingSyntaxPass.swift */; }; - OBJ_4380 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_4381 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4382 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4383 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4384 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4385 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4386 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4387 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4388 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4389 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4390 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4391 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4408 /* BaseSyntaxRewriterPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_837 /* BaseSyntaxRewriterPassTest.swift */; }; - OBJ_4409 /* DefaultSyntaxPassProviderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_838 /* DefaultSyntaxPassProviderTests.swift */; }; - OBJ_4410 /* StatementSpacingSyntaxPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_839 /* StatementSpacingSyntaxPassTests.swift */; }; - OBJ_4412 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_4413 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_4414 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_4415 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_4416 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_4417 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_4418 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_4419 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_4420 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_4421 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_4422 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_4423 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_4424 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_4425 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_4426 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_4427 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_4428 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_4429 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_4430 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_4431 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_4432 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_4433 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_4434 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_4435 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_4436 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_4437 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_4438 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_4439 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4440 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4441 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4442 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4443 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4444 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4445 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4446 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4447 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4448 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4449 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4492 /* BaseSwiftSyntaxProducer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_486 /* BaseSwiftSyntaxProducer.swift */; }; - OBJ_4493 /* DecoratableElement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_487 /* DecoratableElement.swift */; }; - OBJ_4494 /* ModifiersSyntaxDecorators.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_488 /* ModifiersSyntaxDecorators.swift */; }; - OBJ_4495 /* StartTokenHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_489 /* StartTokenHandler.swift */; }; - OBJ_4496 /* SwiftSyntax+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_490 /* SwiftSyntax+Ext.swift */; }; - OBJ_4497 /* SwiftSyntaxProducer+Exp.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_491 /* SwiftSyntaxProducer+Exp.swift */; }; - OBJ_4498 /* SwiftSyntaxProducer+Stmt.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_492 /* SwiftSyntaxProducer+Stmt.swift */; }; - OBJ_4499 /* SwiftSyntaxProducer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_493 /* SwiftSyntaxProducer.swift */; }; - OBJ_4500 /* SwiftSyntaxProducerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_494 /* SwiftSyntaxProducerDelegate.swift */; }; - OBJ_4501 /* SwiftSyntaxRewriterPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_495 /* SwiftSyntaxRewriterPass.swift */; }; - OBJ_4502 /* SwiftSyntaxRewriterPassApplier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_496 /* SwiftSyntaxRewriterPassApplier.swift */; }; - OBJ_4503 /* SwiftTypeConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_497 /* SwiftTypeConverter.swift */; }; - OBJ_4504 /* VariableDeclSyntaxGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_498 /* VariableDeclSyntaxGenerator.swift */; }; - OBJ_4505 /* VariableDeclarationGrouping.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_499 /* VariableDeclarationGrouping.swift */; }; - OBJ_4507 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4508 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4509 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4510 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4511 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4512 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4513 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4514 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4515 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4516 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4517 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4533 /* BaseSwiftSyntaxProducerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_841 /* BaseSwiftSyntaxProducerTests.swift */; }; - OBJ_4534 /* ModifiersSyntaxDecoratorsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_842 /* ModifiersSyntaxDecoratorsTests.swift */; }; - OBJ_4535 /* SwiftSyntaxProducer+ExpTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_843 /* SwiftSyntaxProducer+ExpTests.swift */; }; - OBJ_4536 /* SwiftSyntaxProducer+StmtTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_844 /* SwiftSyntaxProducer+StmtTests.swift */; }; - OBJ_4537 /* SwiftSyntaxProducerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_845 /* SwiftSyntaxProducerTests.swift */; }; - OBJ_4538 /* SwiftTypeConversionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_846 /* SwiftTypeConversionTests.swift */; }; - OBJ_4540 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_4541 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_4542 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_4543 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_4544 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_4545 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_4546 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_4547 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_4548 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_4549 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_4550 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_4551 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_4552 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_4553 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_4554 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_4555 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_4556 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_4557 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_4558 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_4559 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_4560 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_4561 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_4562 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_4563 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_4564 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_4565 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_4566 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_4567 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4568 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4569 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4570 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4571 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4572 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4573 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4574 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4575 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4576 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4577 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4620 /* Array+Testing.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_501 /* Array+Testing.swift */; }; - OBJ_4621 /* Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_502 /* Asserter.swift */; }; - OBJ_4622 /* Antlr+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_504 /* Antlr+Asserter.swift */; }; - OBJ_4623 /* Asserter+KeyPath.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_505 /* Asserter+KeyPath.swift */; }; - OBJ_4624 /* ASTNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_507 /* ASTNode+Asserter.swift */; }; - OBJ_4625 /* RawCodeComment+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_508 /* RawCodeComment+Asserter.swift */; }; - OBJ_4626 /* ClassExtensionGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_510 /* ClassExtensionGenerationIntention+Asserter.swift */; }; - OBJ_4627 /* FileGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_511 /* FileGenerationIntention+Asserter.swift */; }; - OBJ_4628 /* FromSourceIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_512 /* FromSourceIntention+Asserter.swift */; }; - OBJ_4629 /* FunctionBodyIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_513 /* FunctionBodyIntention+Asserter.swift */; }; - OBJ_4630 /* FunctionIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_514 /* FunctionIntention+Asserter.swift */; }; - OBJ_4631 /* Historic+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_515 /* Historic+Asserter.swift */; }; - OBJ_4632 /* IntentionCollection+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_516 /* IntentionCollection+Asserter.swift */; }; - OBJ_4633 /* MethodGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_517 /* MethodGenerationIntention+Asserter.swift */; }; - OBJ_4634 /* PropertyGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_518 /* PropertyGenerationIntention+Asserter.swift */; }; - OBJ_4635 /* SubscriptGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_519 /* SubscriptGenerationIntention+Asserter.swift */; }; - OBJ_4636 /* TypeGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_520 /* TypeGenerationIntention+Asserter.swift */; }; - OBJ_4637 /* ValueStorageIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_521 /* ValueStorageIntention+Asserter.swift */; }; - OBJ_4638 /* ObjcASTNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_523 /* ObjcASTNode+Asserter.swift */; }; - OBJ_4639 /* ObjcClassCategoryInterfaceNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_524 /* ObjcClassCategoryInterfaceNode+Asserter.swift */; }; - OBJ_4640 /* ObjcClassInterfaceNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_525 /* ObjcClassInterfaceNode+Asserter.swift */; }; - OBJ_4641 /* ObjcConstantExpressionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_526 /* ObjcConstantExpressionNode+Asserter.swift */; }; - OBJ_4642 /* ObjcEnumCaseNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_527 /* ObjcEnumCaseNode+Asserter.swift */; }; - OBJ_4643 /* ObjcEnumDeclarationNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_528 /* ObjcEnumDeclarationNode+Asserter.swift */; }; - OBJ_4644 /* ObjcExpressionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_529 /* ObjcExpressionNode+Asserter.swift */; }; - OBJ_4645 /* ObjcFunctionDefinitionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_530 /* ObjcFunctionDefinitionNode+Asserter.swift */; }; - OBJ_4646 /* ObjcFunctionParameterNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_531 /* ObjcFunctionParameterNode+Asserter.swift */; }; - OBJ_4647 /* ObjcIdentifierNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_532 /* ObjcIdentifierNode+Asserter.swift */; }; - OBJ_4648 /* ObjcInitialExpressionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_533 /* ObjcInitialExpressionNode+Asserter.swift */; }; - OBJ_4649 /* ObjcMethodBodyNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_534 /* ObjcMethodBodyNode+Asserter.swift */; }; - OBJ_4650 /* ObjcMethodDefinitionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_535 /* ObjcMethodDefinitionNode+Asserter.swift */; }; - OBJ_4651 /* ObjcPropertyAttributesListNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_536 /* ObjcPropertyAttributesListNode+Asserter.swift */; }; - OBJ_4652 /* ObjcPropertyDefinitionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_537 /* ObjcPropertyDefinitionNode+Asserter.swift */; }; - OBJ_4653 /* ObjcPropertyImplementationNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_538 /* ObjcPropertyImplementationNode+Asserter.swift */; }; - OBJ_4654 /* ObjcPropertySynthesizeListNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_539 /* ObjcPropertySynthesizeListNode+Asserter.swift */; }; - OBJ_4655 /* ObjcProtocolDeclaration+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_540 /* ObjcProtocolDeclaration+Asserter.swift */; }; - OBJ_4656 /* ObjcStructDeclarationNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_541 /* ObjcStructDeclarationNode+Asserter.swift */; }; - OBJ_4657 /* ObjcStructFieldNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_542 /* ObjcStructFieldNode+Asserter.swift */; }; - OBJ_4658 /* ObjcTypeNameNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_543 /* ObjcTypeNameNode+Asserter.swift */; }; - OBJ_4659 /* ObjcTypedefNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_544 /* ObjcTypedefNode+Asserter.swift */; }; - OBJ_4660 /* ObjcVariableDeclarationNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_545 /* ObjcVariableDeclarationNode+Asserter.swift */; }; - OBJ_4661 /* ObjcImportDecl+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_547 /* ObjcImportDecl+Asserter.swift */; }; - OBJ_4662 /* AnyObject+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_549 /* AnyObject+Asserter.swift */; }; - OBJ_4663 /* Bool+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_550 /* Bool+Asserter.swift */; }; - OBJ_4664 /* Collection+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_551 /* Collection+Asserter.swift */; }; - OBJ_4665 /* Equatable+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_552 /* Equatable+Asserter.swift */; }; - OBJ_4666 /* IteratorProtocol+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_553 /* IteratorProtocol+Asserter.swift */; }; - OBJ_4667 /* Sequence+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_554 /* Sequence+Asserter.swift */; }; - OBJ_4668 /* Expression+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_556 /* Expression+Asserter.swift */; }; - OBJ_4669 /* FunctionSignature+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_557 /* FunctionSignature+Asserter.swift */; }; - OBJ_4670 /* ParameterSignature+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_558 /* ParameterSignature+Asserter.swift */; }; - OBJ_4671 /* Statement+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_559 /* Statement+Asserter.swift */; }; - OBJ_4672 /* SourceRange+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_561 /* SourceRange+Asserter.swift */; }; - OBJ_4673 /* DeclarationBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_563 /* DeclarationBuilder.swift */; }; - OBJ_4674 /* IntentionCollectionBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_564 /* IntentionCollectionBuilder.swift */; }; - OBJ_4675 /* MemberBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_565 /* MemberBuilder.swift */; }; - OBJ_4676 /* TypeBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_566 /* TypeBuilder.swift */; }; - OBJ_4677 /* _FunctionBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_567 /* _FunctionBuilder.swift */; }; - OBJ_4678 /* ExpressionPassTestCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_568 /* ExpressionPassTestCase.swift */; }; - OBJ_4679 /* ExpressionPrinter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_569 /* ExpressionPrinter.swift */; }; - OBJ_4680 /* MersenneTwister.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_570 /* MersenneTwister.swift */; }; - OBJ_4681 /* StatementPrinter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_571 /* StatementPrinter.swift */; }; - OBJ_4682 /* StringDiffTesting.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_572 /* StringDiffTesting.swift */; }; - OBJ_4683 /* SyntaxNode+TestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_573 /* SyntaxNode+TestUtils.swift */; }; - OBJ_4684 /* TestWriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_574 /* TestWriterOutput.swift */; }; - OBJ_4685 /* VirtualFileDisk.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_575 /* VirtualFileDisk.swift */; }; - OBJ_4687 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_4688 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_4689 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_4690 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_4691 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_4692 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_4693 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_4694 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_4695 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_4696 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_4697 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_4698 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_4699 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_4700 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_4701 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_4702 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_4703 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_4704 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_4705 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_4706 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_4707 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_4708 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_4709 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_4710 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_4711 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_4712 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_4713 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4714 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4715 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4716 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4717 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4718 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4719 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4720 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4721 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4722 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4723 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4765 /* StringDiffTestingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_848 /* StringDiffTestingTests.swift */; }; - OBJ_4766 /* VirtualFileDiskTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_849 /* VirtualFileDiskTests.swift */; }; - OBJ_4768 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_4769 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_4770 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_4771 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_4772 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_4773 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_4774 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_4775 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_4776 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_4777 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_4778 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_4779 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_4780 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_4781 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_4782 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_4783 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_4784 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_4785 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_4786 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_4787 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_4788 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_4789 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_4790 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_4791 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_4792 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_4793 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_4794 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_4795 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4796 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4797 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4798 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4799 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4800 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4801 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4802 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4803 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4804 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4805 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4848 /* TypeDefinitions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_579 /* TypeDefinitions.swift */; }; - OBJ_4854 /* TypeLexers.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1275 /* TypeLexers.swift */; }; - OBJ_4856 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4862 /* CodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_582 /* CodeDefinition.swift */; }; - OBJ_4863 /* GlobalCodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_583 /* GlobalCodeDefinition.swift */; }; - OBJ_4864 /* GlobalIntentionCodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_584 /* GlobalIntentionCodeDefinition.swift */; }; - OBJ_4865 /* KnownMemberCodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_585 /* KnownMemberCodeDefinition.swift */; }; - OBJ_4866 /* LocalCodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_586 /* LocalCodeDefinition.swift */; }; - OBJ_4867 /* TypeCodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_587 /* TypeCodeDefinition.swift */; }; - OBJ_4868 /* ArrayDefinitionsSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_589 /* ArrayDefinitionsSource.swift */; }; - OBJ_4869 /* CodeScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_590 /* CodeScope.swift */; }; - OBJ_4870 /* CompoundDefinitionsSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_591 /* CompoundDefinitionsSource.swift */; }; - OBJ_4871 /* DefaultCodeScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_592 /* DefaultCodeScope.swift */; }; - OBJ_4872 /* DefinitionsSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_593 /* DefinitionsSource.swift */; }; - OBJ_4873 /* SyntaxNode+CodeScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_594 /* SyntaxNode+CodeScope.swift */; }; - OBJ_4874 /* CompoundKnownType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_595 /* CompoundKnownType.swift */; }; - OBJ_4875 /* GlobalsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_596 /* GlobalsProvider.swift */; }; - OBJ_4876 /* IntentionCollectionTypeSystem.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_597 /* IntentionCollectionTypeSystem.swift */; }; - OBJ_4877 /* DynamicMemberLookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_599 /* DynamicMemberLookup.swift */; }; - OBJ_4878 /* KnownTypeMemberLookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_600 /* KnownTypeMemberLookup.swift */; }; - OBJ_4879 /* MemberLookupType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_601 /* MemberLookupType.swift */; }; - OBJ_4880 /* MemberSearchCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_602 /* MemberSearchCache.swift */; }; - OBJ_4881 /* SwiftTypeMemberLookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_603 /* SwiftTypeMemberLookup.swift */; }; - OBJ_4882 /* TypeMemberLookupContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_604 /* TypeMemberLookupContext.swift */; }; - OBJ_4883 /* OverloadResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_605 /* OverloadResolver.swift */; }; - OBJ_4884 /* KnownTypeProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_607 /* KnownTypeProvider.swift */; }; - OBJ_4885 /* TypealiasProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_608 /* TypealiasProvider.swift */; }; - OBJ_4886 /* TypeCategory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_609 /* TypeCategory.swift */; }; - OBJ_4887 /* TypeMapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_610 /* TypeMapper.swift */; }; - OBJ_4888 /* TypeMemberLookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_611 /* TypeMemberLookup.swift */; }; - OBJ_4889 /* CallableTypeResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_613 /* CallableTypeResolver.swift */; }; - OBJ_4890 /* CoercionVerifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_614 /* CoercionVerifier.swift */; }; - OBJ_4891 /* DefaultLocalTypeResolverInvoker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_615 /* DefaultLocalTypeResolverInvoker.swift */; }; - OBJ_4892 /* DefaultTypeResolverInvoker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_616 /* DefaultTypeResolverInvoker.swift */; }; - OBJ_4893 /* ExpressionTypeResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_617 /* ExpressionTypeResolver.swift */; }; - OBJ_4894 /* IteratorTypeResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_618 /* IteratorTypeResolver.swift */; }; - OBJ_4895 /* LocalTypeResolverInvoker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_619 /* LocalTypeResolverInvoker.swift */; }; - OBJ_4896 /* PatternMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_620 /* PatternMatcher.swift */; }; - OBJ_4897 /* TypeResolverIntrinsicsBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_621 /* TypeResolverIntrinsicsBuilder.swift */; }; - OBJ_4898 /* TypeResolverInvoker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_622 /* TypeResolverInvoker.swift */; }; - OBJ_4899 /* TypeSystem.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_623 /* TypeSystem.swift */; }; - OBJ_4901 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4902 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4903 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_4904 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_4905 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_4906 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_4907 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4908 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_4909 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_4910 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4911 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4912 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4913 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4914 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4915 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4916 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4917 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_4939 /* CodeDefinitionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_852 /* CodeDefinitionTests.swift */; }; - OBJ_4940 /* DefaultCodeScopeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_854 /* DefaultCodeScopeTests.swift */; }; - OBJ_4941 /* DefaultTypeMapperTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_855 /* DefaultTypeMapperTests.swift */; }; - OBJ_4942 /* DefaultTypeResolverInvokerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_856 /* DefaultTypeResolverInvokerTests.swift */; }; - OBJ_4943 /* ExpressionTypeResolverTests+Fixtures.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_858 /* ExpressionTypeResolverTests+Fixtures.swift */; }; - OBJ_4944 /* IntentionCollectionTypeSystemTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_859 /* IntentionCollectionTypeSystemTests.swift */; }; - OBJ_4945 /* KnownTypeMemberLookupTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_861 /* KnownTypeMemberLookupTests.swift */; }; - OBJ_4946 /* OverloadResolverTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_862 /* OverloadResolverTests.swift */; }; - OBJ_4947 /* CallableTypeResolverTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_864 /* CallableTypeResolverTests.swift */; }; - OBJ_4948 /* CoercionVerifierTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_865 /* CoercionVerifierTests.swift */; }; - OBJ_4949 /* ExpressionTypeResolverTests+DynamicMemberLookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_866 /* ExpressionTypeResolverTests+DynamicMemberLookup.swift */; }; - OBJ_4950 /* ExpressionTypeResolverTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_867 /* ExpressionTypeResolverTests.swift */; }; - OBJ_4951 /* IteratorTypeResolverTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_868 /* IteratorTypeResolverTests.swift */; }; - OBJ_4952 /* PatternMatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_869 /* PatternMatcherTests.swift */; }; - OBJ_4953 /* TypeSystemTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_870 /* TypeSystemTests.swift */; }; - OBJ_4955 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_4956 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_4957 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_4958 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_4959 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_4960 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_4961 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_4962 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_4963 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_4964 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_4965 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_4966 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_4967 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_4968 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_4969 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_4970 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_4971 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_4972 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_4973 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_4974 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_4975 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_4976 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_4977 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_4978 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_4979 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_4980 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_4981 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_4982 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_4983 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_4984 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_4985 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_4986 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_4987 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_4988 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_4989 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_4990 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_4991 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_4992 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_5035 /* CodeSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_625 /* CodeSource.swift */; }; - OBJ_5036 /* ConcurrentOperationQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_626 /* ConcurrentOperationQueue.swift */; }; - OBJ_5037 /* ConcurrentValue.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_627 /* ConcurrentValue.swift */; }; - OBJ_5038 /* Diagnostics.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_628 /* Diagnostics.swift */; }; - OBJ_5039 /* InvalidSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_629 /* InvalidSource.swift */; }; - OBJ_5040 /* LinuxSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_630 /* LinuxSupport.swift */; }; - OBJ_5041 /* Mutex.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_631 /* Mutex.swift */; }; - OBJ_5042 /* Source.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_632 /* Source.swift */; }; - OBJ_5043 /* SourceLength.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_633 /* SourceLength.swift */; }; - OBJ_5044 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_634 /* SourceLocation.swift */; }; - OBJ_5045 /* SourceRange.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_635 /* SourceRange.swift */; }; - OBJ_5046 /* String.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_636 /* String.swift */; }; - OBJ_5047 /* StringCodeSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_637 /* StringCodeSource.swift */; }; - OBJ_5048 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_638 /* Utils.swift */; }; - OBJ_5054 /* ConcurrentOperationQueueTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_872 /* ConcurrentOperationQueueTests.swift */; }; - OBJ_5055 /* ConcurrentValueTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_873 /* ConcurrentValueTests.swift */; }; - OBJ_5056 /* InvalidSourceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_874 /* InvalidSourceTests.swift */; }; - OBJ_5057 /* MutexTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_875 /* MutexTests.swift */; }; - OBJ_5058 /* SourceRangeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_876 /* SourceRangeTests.swift */; }; - OBJ_5059 /* StringCodeSourceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_877 /* StringCodeSourceTests.swift */; }; - OBJ_5060 /* StringTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_878 /* StringTests.swift */; }; - OBJ_5062 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_5068 /* NullRewriterOutputTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_640 /* NullRewriterOutputTarget.swift */; }; - OBJ_5069 /* RewriterOutputTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_641 /* RewriterOutputTarget.swift */; }; - OBJ_5070 /* StringRewriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_642 /* StringRewriterOutput.swift */; }; - OBJ_5072 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_5073 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_5074 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_5082 /* RewriterOutputTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_880 /* RewriterOutputTarget.swift */; }; - OBJ_5083 /* StringRewriterOutputTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_881 /* StringRewriterOutputTests.swift */; }; - OBJ_5085 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; - OBJ_5086 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; - OBJ_5087 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; - OBJ_5088 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; - OBJ_5089 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; - OBJ_5090 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; - OBJ_5091 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; - OBJ_5092 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; - OBJ_5093 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; - OBJ_5094 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; - OBJ_5095 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; - OBJ_5096 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; - OBJ_5097 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; - OBJ_5098 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; - OBJ_5099 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; - OBJ_5100 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; - OBJ_5101 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; - OBJ_5102 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; - OBJ_5103 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; - OBJ_5104 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; - OBJ_5105 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; - OBJ_5106 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; - OBJ_5107 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; - OBJ_5108 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; - OBJ_5109 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; - OBJ_5110 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; - OBJ_5111 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; - OBJ_5112 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; - OBJ_5113 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; - OBJ_5114 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; - OBJ_5115 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; - OBJ_5116 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; - OBJ_5117 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; - OBJ_5118 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; - OBJ_5119 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; - OBJ_5120 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; - OBJ_5121 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; - OBJ_5122 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; - OBJ_5165 /* atomic-counter.c in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1024 /* atomic-counter.c */; }; - OBJ_5172 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1262 /* Package.swift */; }; - OBJ_5178 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_974 /* Package.swift */; }; + OBJ_3872 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3873 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_3874 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_3875 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_3876 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3922 /* QuickSpecPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_407 /* QuickSpecPreprocessor.swift */; }; + OBJ_3923 /* SourcePreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_408 /* SourcePreprocessor.swift */; }; + OBJ_3925 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3926 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_3934 /* QuickSpecPreprocessorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_893 /* QuickSpecPreprocessorTests.swift */; }; + OBJ_3936 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_3937 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_3938 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_3939 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_3940 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_3941 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_3942 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_3943 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_3944 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_3945 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_3946 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_3947 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_3948 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_3949 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_3950 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_3951 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_3952 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_3953 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_3954 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_3955 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_3956 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_3957 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_3958 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_3959 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_3960 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_3961 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_3962 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_3963 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_3964 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_3965 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_3966 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_3967 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_3968 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_3969 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_3970 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_3971 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_3972 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_3973 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_3974 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_4018 /* AccessLevel.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_410 /* AccessLevel.swift */; }; + OBJ_4019 /* SwiftComment.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_412 /* SwiftComment.swift */; }; + OBJ_4020 /* Expression+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_413 /* Expression+Ext.swift */; }; + OBJ_4021 /* Expression+Matcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_414 /* Expression+Matcher.swift */; }; + OBJ_4022 /* Expression+Transformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_415 /* Expression+Transformer.swift */; }; + OBJ_4023 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_416 /* Expression.swift */; }; + OBJ_4024 /* ArrayLiteralExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_418 /* ArrayLiteralExpression.swift */; }; + OBJ_4025 /* AssignmentExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_419 /* AssignmentExpression.swift */; }; + OBJ_4026 /* BinaryExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_420 /* BinaryExpression.swift */; }; + OBJ_4027 /* BlockLiteralExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_421 /* BlockLiteralExpression.swift */; }; + OBJ_4028 /* CastExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_422 /* CastExpression.swift */; }; + OBJ_4029 /* ConstantExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_423 /* ConstantExpression.swift */; }; + OBJ_4030 /* DictionaryLiteralExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_424 /* DictionaryLiteralExpression.swift */; }; + OBJ_4031 /* ExpressionPostfixBuildable.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_425 /* ExpressionPostfixBuildable.swift */; }; + OBJ_4032 /* IdentifierExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_426 /* IdentifierExpression.swift */; }; + OBJ_4033 /* OptionalAccessPostfixBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_427 /* OptionalAccessPostfixBuilder.swift */; }; + OBJ_4034 /* ParensExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_428 /* ParensExpression.swift */; }; + OBJ_4035 /* FunctionCallPostfix.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_430 /* FunctionCallPostfix.swift */; }; + OBJ_4036 /* MemberPostfix.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_431 /* MemberPostfix.swift */; }; + OBJ_4037 /* Postfix.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_432 /* Postfix.swift */; }; + OBJ_4038 /* SubscriptPostfix.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_433 /* SubscriptPostfix.swift */; }; + OBJ_4039 /* PostfixExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_434 /* PostfixExpression.swift */; }; + OBJ_4040 /* PrefixExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_435 /* PrefixExpression.swift */; }; + OBJ_4041 /* SelectorExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_436 /* SelectorExpression.swift */; }; + OBJ_4042 /* SizeOfExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_437 /* SizeOfExpression.swift */; }; + OBJ_4043 /* TernaryExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_438 /* TernaryExpression.swift */; }; + OBJ_4044 /* TryExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_439 /* TryExpression.swift */; }; + OBJ_4045 /* TupleExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_440 /* TupleExpression.swift */; }; + OBJ_4046 /* TypeCheckExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_441 /* TypeCheckExpression.swift */; }; + OBJ_4047 /* UnaryExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_442 /* UnaryExpression.swift */; }; + OBJ_4048 /* UnknownExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_443 /* UnknownExpression.swift */; }; + OBJ_4049 /* ExpressionKind.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_444 /* ExpressionKind.swift */; }; + OBJ_4050 /* FunctionSignatureParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_445 /* FunctionSignatureParser.swift */; }; + OBJ_4051 /* Matchable.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_446 /* Matchable.swift */; }; + OBJ_4052 /* Ownership.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_447 /* Ownership.swift */; }; + OBJ_4053 /* Pattern.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_448 /* Pattern.swift */; }; + OBJ_4054 /* PostfixChainInverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_449 /* PostfixChainInverter.swift */; }; + OBJ_4055 /* KeyedDecodingContainerProtocol+SwiftAST.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_451 /* KeyedDecodingContainerProtocol+SwiftAST.swift */; }; + OBJ_4056 /* KeyedEncodingContainerProtocol+SwiftAST.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_452 /* KeyedEncodingContainerProtocol+SwiftAST.swift */; }; + OBJ_4057 /* SerializationOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_453 /* SerializationOptions.swift */; }; + OBJ_4058 /* SwiftASTSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_454 /* SwiftASTSerializer.swift */; }; + OBJ_4059 /* UnkeyedDecodingContainer+SwiftAST.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_455 /* UnkeyedDecodingContainer+SwiftAST.swift */; }; + OBJ_4060 /* UnkeyedEncodingContainer+SwiftAST.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_456 /* UnkeyedEncodingContainer+SwiftAST.swift */; }; + OBJ_4061 /* Statement+Matcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_457 /* Statement+Matcher.swift */; }; + OBJ_4062 /* Statement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_458 /* Statement.swift */; }; + OBJ_4063 /* BreakStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_460 /* BreakStatement.swift */; }; + OBJ_4064 /* CompoundStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_461 /* CompoundStatement.swift */; }; + OBJ_4065 /* ContinueStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_462 /* ContinueStatement.swift */; }; + OBJ_4066 /* DeferStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_463 /* DeferStatement.swift */; }; + OBJ_4067 /* DoStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_464 /* DoStatement.swift */; }; + OBJ_4068 /* ExpressionsStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_465 /* ExpressionsStatement.swift */; }; + OBJ_4069 /* FallthroughStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_466 /* FallthroughStatement.swift */; }; + OBJ_4070 /* ForStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_467 /* ForStatement.swift */; }; + OBJ_4071 /* IfStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_468 /* IfStatement.swift */; }; + OBJ_4072 /* LocalFunctionStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_469 /* LocalFunctionStatement.swift */; }; + OBJ_4073 /* RepeatWhileStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_470 /* RepeatWhileStatement.swift */; }; + OBJ_4074 /* ReturnStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_471 /* ReturnStatement.swift */; }; + OBJ_4075 /* SwitchStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_472 /* SwitchStatement.swift */; }; + OBJ_4076 /* ThrowStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_473 /* ThrowStatement.swift */; }; + OBJ_4077 /* UnknownStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_474 /* UnknownStatement.swift */; }; + OBJ_4078 /* VariableDeclarationsStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_475 /* VariableDeclarationsStatement.swift */; }; + OBJ_4079 /* WhiteStatement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_476 /* WhiteStatement.swift */; }; + OBJ_4080 /* StatementKind.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_477 /* StatementKind.swift */; }; + OBJ_4081 /* FunctionIdentifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_479 /* FunctionIdentifier.swift */; }; + OBJ_4082 /* FunctionSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_480 /* FunctionSignature.swift */; }; + OBJ_4083 /* LocalFunction.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_481 /* LocalFunction.swift */; }; + OBJ_4084 /* ObjcPropertyAttribute.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_482 /* ObjcPropertyAttribute.swift */; }; + OBJ_4085 /* ParameterSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_483 /* ParameterSignature.swift */; }; + OBJ_4086 /* SelectorSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_484 /* SelectorSignature.swift */; }; + OBJ_4087 /* SubscriptIdentifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_485 /* SubscriptIdentifier.swift */; }; + OBJ_4088 /* SubscriptSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_486 /* SubscriptSignature.swift */; }; + OBJ_4089 /* SwiftOperator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_487 /* SwiftOperator.swift */; }; + OBJ_4090 /* SwiftRewriterAttribute.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_488 /* SwiftRewriterAttribute.swift */; }; + OBJ_4091 /* SwiftType+Stdlib.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_489 /* SwiftType+Stdlib.swift */; }; + OBJ_4092 /* SwiftType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_490 /* SwiftType.swift */; }; + OBJ_4093 /* SwiftTypeParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_491 /* SwiftTypeParser.swift */; }; + OBJ_4094 /* SyntaxNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_492 /* SyntaxNode.swift */; }; + OBJ_4095 /* SyntaxNodeIterator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_493 /* SyntaxNodeIterator.swift */; }; + OBJ_4096 /* SyntaxNodeRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_494 /* SyntaxNodeRewriter.swift */; }; + OBJ_4097 /* TypeFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_495 /* TypeFormatter.swift */; }; + OBJ_4098 /* UnknownASTContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_496 /* UnknownASTContext.swift */; }; + OBJ_4099 /* ValueMatcher+Matchers.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_497 /* ValueMatcher+Matchers.swift */; }; + OBJ_4100 /* ValueMatcher+PartialValueMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_498 /* ValueMatcher+PartialValueMatcher.swift */; }; + OBJ_4101 /* ValueMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_499 /* ValueMatcher.swift */; }; + OBJ_4102 /* ValueMatcherConvertible.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_500 /* ValueMatcherConvertible.swift */; }; + OBJ_4103 /* ValueStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_501 /* ValueStorage.swift */; }; + OBJ_4104 /* ValueTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_502 /* ValueTransformer.swift */; }; + OBJ_4105 /* AnonymousSyntaxNodeStatefulVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_504 /* AnonymousSyntaxNodeStatefulVisitor.swift */; }; + OBJ_4106 /* AnonymousSyntaxNodeVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_505 /* AnonymousSyntaxNodeVisitor.swift */; }; + OBJ_4107 /* BaseSyntaxNodeVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_506 /* BaseSyntaxNodeVisitor.swift */; }; + OBJ_4108 /* ExpressionVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_507 /* ExpressionVisitor.swift */; }; + OBJ_4109 /* StatementStatefulVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_508 /* StatementStatefulVisitor.swift */; }; + OBJ_4110 /* StatementVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_509 /* StatementVisitor.swift */; }; + OBJ_4112 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_4113 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_4114 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4115 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4116 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_4127 /* AccessLevelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_895 /* AccessLevelTests.swift */; }; + OBJ_4128 /* Expression+MatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_896 /* Expression+MatcherTests.swift */; }; + OBJ_4129 /* PostfixExpressionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_898 /* PostfixExpressionTests.swift */; }; + OBJ_4130 /* SelectorExpressionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_899 /* SelectorExpressionTests.swift */; }; + OBJ_4131 /* ExpressionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_900 /* ExpressionTests.swift */; }; + OBJ_4132 /* FunctionIdentifierTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_901 /* FunctionIdentifierTests.swift */; }; + OBJ_4133 /* FunctionSignatureParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_902 /* FunctionSignatureParserTests.swift */; }; + OBJ_4134 /* PatternTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_903 /* PatternTests.swift */; }; + OBJ_4135 /* SwiftASTSerializerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_905 /* SwiftASTSerializerTests.swift */; }; + OBJ_4136 /* StatementTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_906 /* StatementTests.swift */; }; + OBJ_4137 /* FunctionSignatureTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_908 /* FunctionSignatureTests.swift */; }; + OBJ_4138 /* SwiftOperatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_909 /* SwiftOperatorTests.swift */; }; + OBJ_4139 /* SwiftTypeParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_910 /* SwiftTypeParserTests.swift */; }; + OBJ_4140 /* SwiftTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_911 /* SwiftTypeTests.swift */; }; + OBJ_4141 /* SyntaxNodeIteratorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_912 /* SyntaxNodeIteratorTests.swift */; }; + OBJ_4142 /* SyntaxNodeRewriterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_913 /* SyntaxNodeRewriterTests.swift */; }; + OBJ_4143 /* SyntaxNodeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_914 /* SyntaxNodeTests.swift */; }; + OBJ_4144 /* TypeFormatterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_915 /* TypeFormatterTests.swift */; }; + OBJ_4145 /* ValueMatcher+MatchersTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_916 /* ValueMatcher+MatchersTests.swift */; }; + OBJ_4146 /* ValueMatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_917 /* ValueMatcherTests.swift */; }; + OBJ_4147 /* ValueTransformerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_918 /* ValueTransformerTests.swift */; }; + OBJ_4149 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_4150 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_4151 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_4152 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_4153 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_4154 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_4155 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_4156 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_4157 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_4158 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4159 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_4160 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_4161 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_4162 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_4163 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_4164 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_4165 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_4166 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_4167 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_4168 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_4169 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_4170 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_4171 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_4172 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_4173 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_4174 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_4175 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_4176 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_4177 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_4178 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_4179 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_4180 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_4181 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_4182 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_4183 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_4184 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_4185 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_4186 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_4187 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4188 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4189 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_4235 /* DebugOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_973 /* DebugOptions.swift */; }; + OBJ_4236 /* Exports.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_974 /* Exports.swift */; }; + OBJ_4237 /* FormatPipeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_975 /* FormatPipeline.swift */; }; + OBJ_4238 /* LintPipeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_976 /* LintPipeline.swift */; }; + OBJ_4239 /* Pipelines+Generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_977 /* Pipelines+Generated.swift */; }; + OBJ_4240 /* SwiftFormatError.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_978 /* SwiftFormatError.swift */; }; + OBJ_4241 /* SwiftFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_979 /* SwiftFormatter.swift */; }; + OBJ_4242 /* SwiftLinter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_980 /* SwiftLinter.swift */; }; + OBJ_4243 /* SyntaxValidatingVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_981 /* SyntaxValidatingVisitor.swift */; }; + OBJ_4245 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_4246 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_4247 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_4248 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_4249 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_4250 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4251 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4252 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4265 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_983 /* Configuration.swift */; }; + OBJ_4266 /* Indent.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_984 /* Indent.swift */; }; + OBJ_4267 /* RuleRegistry+Generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_985 /* RuleRegistry+Generated.swift */; }; + OBJ_4273 /* Context.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_987 /* Context.swift */; }; + OBJ_4274 /* Finding+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_988 /* Finding+Convenience.swift */; }; + OBJ_4275 /* Finding.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_989 /* Finding.swift */; }; + OBJ_4276 /* FindingCategorizing.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_990 /* FindingCategorizing.swift */; }; + OBJ_4277 /* FindingEmitter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_991 /* FindingEmitter.swift */; }; + OBJ_4278 /* Rule.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_992 /* Rule.swift */; }; + OBJ_4279 /* RuleBasedFindingCategory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_993 /* RuleBasedFindingCategory.swift */; }; + OBJ_4280 /* RuleMask.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_994 /* RuleMask.swift */; }; + OBJ_4281 /* RuleState.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_995 /* RuleState.swift */; }; + OBJ_4282 /* SyntaxFormatRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_996 /* SyntaxFormatRule.swift */; }; + OBJ_4283 /* SyntaxLintRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_997 /* SyntaxLintRule.swift */; }; + OBJ_4284 /* SyntaxProtocol+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_998 /* SyntaxProtocol+Convenience.swift */; }; + OBJ_4285 /* Trivia+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_999 /* Trivia+Convenience.swift */; }; + OBJ_4287 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4288 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4289 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4297 /* Comment.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1001 /* Comment.swift */; }; + OBJ_4298 /* Indent+Length.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1002 /* Indent+Length.swift */; }; + OBJ_4299 /* OperatorContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1003 /* OperatorContext.swift */; }; + OBJ_4300 /* PrettyPrint.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1004 /* PrettyPrint.swift */; }; + OBJ_4301 /* PrettyPrintFindingCategory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1005 /* PrettyPrintFindingCategory.swift */; }; + OBJ_4302 /* SequenceExprFolding.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1006 /* SequenceExprFolding.swift */; }; + OBJ_4303 /* Token.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1007 /* Token.swift */; }; + OBJ_4304 /* TokenStreamCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1008 /* TokenStreamCreator.swift */; }; + OBJ_4305 /* Verbatim.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1009 /* Verbatim.swift */; }; + OBJ_4307 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_4308 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4309 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4310 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4319 /* AddModifierRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1011 /* AddModifierRewriter.swift */; }; + OBJ_4320 /* AllPublicDeclarationsHaveDocumentation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1012 /* AllPublicDeclarationsHaveDocumentation.swift */; }; + OBJ_4321 /* AlwaysUseLowerCamelCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1013 /* AlwaysUseLowerCamelCase.swift */; }; + OBJ_4322 /* AmbiguousTrailingClosureOverload.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1014 /* AmbiguousTrailingClosureOverload.swift */; }; + OBJ_4323 /* BeginDocumentationCommentWithOneLineSummary.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1015 /* BeginDocumentationCommentWithOneLineSummary.swift */; }; + OBJ_4324 /* DeclSyntaxProtocol+Comments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1016 /* DeclSyntaxProtocol+Comments.swift */; }; + OBJ_4325 /* DoNotUseSemicolons.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1017 /* DoNotUseSemicolons.swift */; }; + OBJ_4326 /* DontRepeatTypeInStaticProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1018 /* DontRepeatTypeInStaticProperties.swift */; }; + OBJ_4327 /* FileScopedDeclarationPrivacy.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1019 /* FileScopedDeclarationPrivacy.swift */; }; + OBJ_4328 /* FullyIndirectEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1020 /* FullyIndirectEnum.swift */; }; + OBJ_4329 /* FunctionDeclSyntax+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1021 /* FunctionDeclSyntax+Convenience.swift */; }; + OBJ_4330 /* GroupNumericLiterals.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1022 /* GroupNumericLiterals.swift */; }; + OBJ_4331 /* IdentifiersMustBeASCII.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1023 /* IdentifiersMustBeASCII.swift */; }; + OBJ_4332 /* ImportsXCTestVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1024 /* ImportsXCTestVisitor.swift */; }; + OBJ_4333 /* ModifierListSyntax+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1025 /* ModifierListSyntax+Convenience.swift */; }; + OBJ_4334 /* NeverForceUnwrap.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1026 /* NeverForceUnwrap.swift */; }; + OBJ_4335 /* NeverUseForceTry.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1027 /* NeverUseForceTry.swift */; }; + OBJ_4336 /* NeverUseImplicitlyUnwrappedOptionals.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1028 /* NeverUseImplicitlyUnwrappedOptionals.swift */; }; + OBJ_4337 /* NoAccessLevelOnExtensionDeclaration.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1029 /* NoAccessLevelOnExtensionDeclaration.swift */; }; + OBJ_4338 /* NoBlockComments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1030 /* NoBlockComments.swift */; }; + OBJ_4339 /* NoCasesWithOnlyFallthrough.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1031 /* NoCasesWithOnlyFallthrough.swift */; }; + OBJ_4340 /* NoEmptyTrailingClosureParentheses.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1032 /* NoEmptyTrailingClosureParentheses.swift */; }; + OBJ_4341 /* NoLabelsInCasePatterns.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1033 /* NoLabelsInCasePatterns.swift */; }; + OBJ_4342 /* NoLeadingUnderscores.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1034 /* NoLeadingUnderscores.swift */; }; + OBJ_4343 /* NoParensAroundConditions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1035 /* NoParensAroundConditions.swift */; }; + OBJ_4344 /* NoPlaygroundLiterals.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1036 /* NoPlaygroundLiterals.swift */; }; + OBJ_4345 /* NoVoidReturnOnFunctionSignature.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1037 /* NoVoidReturnOnFunctionSignature.swift */; }; + OBJ_4346 /* OneCasePerLine.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1038 /* OneCasePerLine.swift */; }; + OBJ_4347 /* OneVariableDeclarationPerLine.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1039 /* OneVariableDeclarationPerLine.swift */; }; + OBJ_4348 /* OnlyOneTrailingClosureArgument.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1040 /* OnlyOneTrailingClosureArgument.swift */; }; + OBJ_4349 /* OrderedImports.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1041 /* OrderedImports.swift */; }; + OBJ_4350 /* ReplaceTrivia.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1042 /* ReplaceTrivia.swift */; }; + OBJ_4351 /* ReturnVoidInsteadOfEmptyTuple.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1043 /* ReturnVoidInsteadOfEmptyTuple.swift */; }; + OBJ_4352 /* RuleNameCache+Generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1044 /* RuleNameCache+Generated.swift */; }; + OBJ_4353 /* SemicolonSyntaxProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1045 /* SemicolonSyntaxProtocol.swift */; }; + OBJ_4354 /* TokenSyntax+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1046 /* TokenSyntax+Convenience.swift */; }; + OBJ_4355 /* UseEarlyExits.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1047 /* UseEarlyExits.swift */; }; + OBJ_4356 /* UseLetInEveryBoundCaseVariable.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1048 /* UseLetInEveryBoundCaseVariable.swift */; }; + OBJ_4357 /* UseShorthandTypeNames.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1049 /* UseShorthandTypeNames.swift */; }; + OBJ_4358 /* UseSingleLinePropertyGetter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1050 /* UseSingleLinePropertyGetter.swift */; }; + OBJ_4359 /* UseSynthesizedInitializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1051 /* UseSynthesizedInitializer.swift */; }; + OBJ_4360 /* UseTripleSlashForDocumentationComments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1052 /* UseTripleSlashForDocumentationComments.swift */; }; + OBJ_4361 /* UseWhereClausesInForLoops.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1053 /* UseWhereClausesInForLoops.swift */; }; + OBJ_4362 /* ValidateDocumentationComments.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1054 /* ValidateDocumentationComments.swift */; }; + OBJ_4363 /* VarDeclSyntax+Convenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1055 /* VarDeclSyntax+Convenience.swift */; }; + OBJ_4365 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_4366 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4367 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4368 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4377 /* LazySplitSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1057 /* LazySplitSequence.swift */; }; + OBJ_4378 /* RememberingIterator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1058 /* RememberingIterator.swift */; }; + OBJ_4379 /* WhitespaceFindingCategory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1059 /* WhitespaceFindingCategory.swift */; }; + OBJ_4380 /* WhitespaceLinter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1060 /* WhitespaceLinter.swift */; }; + OBJ_4382 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_4383 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4384 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4385 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4395 /* GlobalOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_511 /* GlobalOptions.swift */; }; + OBJ_4396 /* JavaScriptCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_512 /* JavaScriptCommand.swift */; }; + OBJ_4397 /* JavaScriptFrontendImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_513 /* JavaScriptFrontendImpl.swift */; }; + OBJ_4398 /* JavaScriptSwiftRewriterServiceImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_514 /* JavaScriptSwiftRewriterServiceImpl.swift */; }; + OBJ_4399 /* ObjectiveCCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_515 /* ObjectiveCCommand.swift */; }; + OBJ_4400 /* ObjectiveCFrontendImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_516 /* ObjectiveCFrontendImpl.swift */; }; + OBJ_4401 /* ObjectiveCSwiftRewriterServiceImpl.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_517 /* ObjectiveCSwiftRewriterServiceImpl.swift */; }; + OBJ_4402 /* StdoutFileCollectionStepListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_518 /* StdoutFileCollectionStepListener.swift */; }; + OBJ_4403 /* SwiftRewriterCommand.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_519 /* SwiftRewriterCommand.swift */; }; + OBJ_4404 /* Target.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_520 /* Target.swift */; }; + OBJ_4405 /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_521 /* main.swift */; }; + OBJ_4407 /* JavaScriptFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JavaScriptFrontend::Product /* JavaScriptFrontend.framework */; }; + OBJ_4408 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_4409 /* SwiftRewriterCLI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterCLI::Product /* SwiftRewriterCLI.framework */; }; + OBJ_4410 /* ArgumentParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParser::Product /* ArgumentParser.framework */; }; + OBJ_4411 /* ArgumentParserToolInfo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParserToolInfo::Product /* ArgumentParserToolInfo.framework */; }; + OBJ_4412 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_4413 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_4414 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_4415 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_4416 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_4417 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_4418 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_4419 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4420 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_4421 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_4422 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_4423 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_4424 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_4425 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_4426 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_4427 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_4428 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_4429 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_4430 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_4431 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_4432 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_4433 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_4434 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_4435 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_4436 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_4437 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_4438 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_4439 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_4440 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_4441 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_4442 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_4443 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_4444 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_4445 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_4446 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_4447 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_4448 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4449 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4450 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_4500 /* FilesExplorer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_523 /* FilesExplorer.swift */; }; + OBJ_4501 /* Menu.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_524 /* Menu.swift */; }; + OBJ_4502 /* Stopwatch.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_525 /* Stopwatch.swift */; }; + OBJ_4503 /* SwiftRewriterFrontend.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_526 /* SwiftRewriterFrontend.swift */; }; + OBJ_4505 /* ArgumentParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParser::Product /* ArgumentParser.framework */; }; + OBJ_4506 /* ArgumentParserToolInfo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParserToolInfo::Product /* ArgumentParserToolInfo.framework */; }; + OBJ_4507 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_4508 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_4509 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_4510 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_4511 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_4512 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_4513 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_4514 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4515 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_4516 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_4517 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_4518 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_4519 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_4520 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_4521 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_4522 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_4523 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_4524 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_4525 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_4526 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_4527 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_4528 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_4529 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_4530 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_4531 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_4532 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_4533 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_4534 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_4535 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_4536 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_4537 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_4538 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_4539 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_4540 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_4541 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_4542 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_4543 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4544 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4545 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_4591 /* ColorizeSyntaxVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_528 /* ColorizeSyntaxVisitor.swift */; }; + OBJ_4592 /* DiskInputFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_529 /* DiskInputFile.swift */; }; + OBJ_4593 /* FileDiskProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_530 /* FileDiskProvider.swift */; }; + OBJ_4594 /* FileProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_531 /* FileProvider.swift */; }; + OBJ_4595 /* FileWriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_532 /* FileWriterOutput.swift */; }; + OBJ_4596 /* InputSourcesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_533 /* InputSourcesProvider.swift */; }; + OBJ_4597 /* NullWriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_534 /* NullWriterOutput.swift */; }; + OBJ_4598 /* PathFilter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_535 /* PathFilter.swift */; }; + OBJ_4599 /* SingleInputProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_536 /* SingleInputProvider.swift */; }; + OBJ_4600 /* StdoutWriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_537 /* StdoutWriterOutput.swift */; }; + OBJ_4601 /* SwiftASTCommentApplier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_538 /* SwiftASTCommentApplier.swift */; }; + OBJ_4602 /* SwiftRewriterService.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_539 /* SwiftRewriterService.swift */; }; + OBJ_4603 /* SwiftSyntaxOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_540 /* SwiftSyntaxOptions.swift */; }; + OBJ_4604 /* SwiftWriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_541 /* SwiftWriter.swift */; }; + OBJ_4605 /* WriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_542 /* WriterOutput.swift */; }; + OBJ_4607 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_4608 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_4609 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_4610 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_4611 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_4612 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_4613 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4614 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_4615 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_4616 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_4617 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_4618 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_4619 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_4620 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_4621 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_4622 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_4623 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_4624 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_4625 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_4626 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_4627 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_4628 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_4629 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_4630 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_4631 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_4632 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_4633 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_4634 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_4635 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_4636 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_4637 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_4638 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_4639 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_4640 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_4641 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_4642 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4643 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4644 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_4688 /* ColorizeSyntaxVisitorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_920 /* ColorizeSyntaxVisitorTests.swift */; }; + OBJ_4689 /* SwiftWriterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_921 /* SwiftWriterTests.swift */; }; + OBJ_4691 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_4692 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_4693 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_4694 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_4695 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_4696 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_4697 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_4698 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_4699 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_4700 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4701 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_4702 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_4703 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_4704 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_4705 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_4706 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_4707 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_4708 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_4709 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_4710 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_4711 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_4712 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_4713 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_4714 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_4715 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_4716 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_4717 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_4718 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_4719 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_4720 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_4721 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_4722 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_4723 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_4724 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_4725 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_4726 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_4727 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_4728 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_4729 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4730 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4731 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_4778 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_6 /* Package.swift */; }; + OBJ_4818 /* SwiftRewriterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_923 /* SwiftRewriterTests.swift */; }; + OBJ_4820 /* JavaScriptFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JavaScriptFrontend::Product /* JavaScriptFrontend.framework */; }; + OBJ_4821 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_4822 /* SwiftRewriterCLI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterCLI::Product /* SwiftRewriterCLI.framework */; }; + OBJ_4823 /* ArgumentParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParser::Product /* ArgumentParser.framework */; }; + OBJ_4824 /* ArgumentParserToolInfo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-argument-parser::ArgumentParserToolInfo::Product /* ArgumentParserToolInfo.framework */; }; + OBJ_4825 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_4826 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_4827 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_4828 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_4829 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_4830 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_4831 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_4832 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_4833 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_4834 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_4835 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_4836 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_4837 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_4838 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_4839 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_4840 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_4841 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_4842 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_4843 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_4844 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_4845 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_4846 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_4847 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_4848 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_4849 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_4850 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_4851 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_4852 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_4853 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_4854 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_4855 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_4856 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_4857 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_4858 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_4859 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_4860 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_4861 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4862 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4863 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_4913 /* AbsolutePosition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1065 /* AbsolutePosition.swift */; }; + OBJ_4914 /* AtomicCounter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1066 /* AtomicCounter.swift */; }; + OBJ_4915 /* CNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1067 /* CNodes.swift */; }; + OBJ_4916 /* IncrementalParseTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1068 /* IncrementalParseTransition.swift */; }; + OBJ_4917 /* RawSyntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1069 /* RawSyntax.swift */; }; + OBJ_4918 /* SourceLength.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1070 /* SourceLength.swift */; }; + OBJ_4919 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1071 /* SourceLocation.swift */; }; + OBJ_4920 /* SourcePresence.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1072 /* SourcePresence.swift */; }; + OBJ_4921 /* Syntax.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1073 /* Syntax.swift */; }; + OBJ_4922 /* SyntaxChildren.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1074 /* SyntaxChildren.swift */; }; + OBJ_4923 /* SyntaxClassifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1075 /* SyntaxClassifier.swift */; }; + OBJ_4924 /* SyntaxData.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1076 /* SyntaxData.swift */; }; + OBJ_4925 /* SyntaxOtherNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1077 /* SyntaxOtherNodes.swift */; }; + OBJ_4926 /* SyntaxVerifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1078 /* SyntaxVerifier.swift */; }; + OBJ_4927 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1079 /* Utils.swift */; }; + OBJ_4928 /* _SyntaxParserInterop.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1080 /* _SyntaxParserInterop.swift */; }; + OBJ_4929 /* Misc.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1082 /* Misc.swift */; }; + OBJ_4930 /* SyntaxAnyVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1083 /* SyntaxAnyVisitor.swift */; }; + OBJ_4931 /* SyntaxBaseNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1084 /* SyntaxBaseNodes.swift */; }; + OBJ_4932 /* SyntaxBuilders.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1085 /* SyntaxBuilders.swift */; }; + OBJ_4933 /* SyntaxClassification.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1086 /* SyntaxClassification.swift */; }; + OBJ_4934 /* SyntaxCollections.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1087 /* SyntaxCollections.swift */; }; + OBJ_4935 /* SyntaxEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1088 /* SyntaxEnum.swift */; }; + OBJ_4936 /* SyntaxFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1089 /* SyntaxFactory.swift */; }; + OBJ_4937 /* SyntaxKind.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1090 /* SyntaxKind.swift */; }; + OBJ_4938 /* SyntaxRewriter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1091 /* SyntaxRewriter.swift */; }; + OBJ_4939 /* SyntaxTraits.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1092 /* SyntaxTraits.swift */; }; + OBJ_4940 /* SyntaxVisitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1093 /* SyntaxVisitor.swift */; }; + OBJ_4941 /* TokenKind.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1094 /* TokenKind.swift */; }; + OBJ_4942 /* Trivia.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1095 /* Trivia.swift */; }; + OBJ_4943 /* SyntaxDeclNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1097 /* SyntaxDeclNodes.swift */; }; + OBJ_4944 /* SyntaxExprNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1098 /* SyntaxExprNodes.swift */; }; + OBJ_4945 /* SyntaxNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1099 /* SyntaxNodes.swift */; }; + OBJ_4946 /* SyntaxPatternNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1100 /* SyntaxPatternNodes.swift */; }; + OBJ_4947 /* SyntaxStmtNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1101 /* SyntaxStmtNodes.swift */; }; + OBJ_4948 /* SyntaxTypeNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1102 /* SyntaxTypeNodes.swift */; }; + OBJ_4950 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4957 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1117 /* Package.swift */; }; + OBJ_4962 /* CNodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1105 /* CNodes.swift */; }; + OBJ_4963 /* Diagnostic.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1106 /* Diagnostic.swift */; }; + OBJ_4964 /* SyntaxParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1107 /* SyntaxParser.swift */; }; + OBJ_4965 /* NodeDeclarationHash.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1109 /* NodeDeclarationHash.swift */; }; + OBJ_4967 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4968 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4975 /* DefaultSyntaxPassProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_544 /* DefaultSyntaxPassProvider.swift */; }; + OBJ_4976 /* StatementSpacingSyntaxPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_545 /* StatementSpacingSyntaxPass.swift */; }; + OBJ_4978 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_4979 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_4980 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_4981 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_4982 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_4983 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_4984 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_4985 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_4986 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_4987 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_4988 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_4989 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5006 /* BaseSyntaxRewriterPassTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_925 /* BaseSyntaxRewriterPassTest.swift */; }; + OBJ_5007 /* DefaultSyntaxPassProviderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_926 /* DefaultSyntaxPassProviderTests.swift */; }; + OBJ_5008 /* StatementSpacingSyntaxPassTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_927 /* StatementSpacingSyntaxPassTests.swift */; }; + OBJ_5010 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_5011 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_5012 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_5013 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_5014 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_5015 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_5016 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_5017 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_5018 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_5019 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_5020 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_5021 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_5022 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_5023 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_5024 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_5025 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_5026 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_5027 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_5028 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_5029 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_5030 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_5031 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_5032 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_5033 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_5034 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_5035 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_5036 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_5037 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_5038 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_5039 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_5040 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_5041 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_5042 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_5043 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_5044 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_5045 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_5046 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_5047 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_5048 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_5049 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_5050 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5096 /* BaseSwiftSyntaxProducer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_547 /* BaseSwiftSyntaxProducer.swift */; }; + OBJ_5097 /* DecoratableElement.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_548 /* DecoratableElement.swift */; }; + OBJ_5098 /* ModifiersSyntaxDecorators.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_549 /* ModifiersSyntaxDecorators.swift */; }; + OBJ_5099 /* StartTokenHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_550 /* StartTokenHandler.swift */; }; + OBJ_5100 /* SwiftSyntax+Ext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_551 /* SwiftSyntax+Ext.swift */; }; + OBJ_5101 /* SwiftSyntaxProducer+Exp.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_552 /* SwiftSyntaxProducer+Exp.swift */; }; + OBJ_5102 /* SwiftSyntaxProducer+Stmt.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_553 /* SwiftSyntaxProducer+Stmt.swift */; }; + OBJ_5103 /* SwiftSyntaxProducer.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_554 /* SwiftSyntaxProducer.swift */; }; + OBJ_5104 /* SwiftSyntaxProducerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_555 /* SwiftSyntaxProducerDelegate.swift */; }; + OBJ_5105 /* SwiftSyntaxRewriterPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_556 /* SwiftSyntaxRewriterPass.swift */; }; + OBJ_5106 /* SwiftSyntaxRewriterPassApplier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_557 /* SwiftSyntaxRewriterPassApplier.swift */; }; + OBJ_5107 /* SwiftTypeConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_558 /* SwiftTypeConverter.swift */; }; + OBJ_5108 /* VariableDeclSyntaxGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_559 /* VariableDeclSyntaxGenerator.swift */; }; + OBJ_5109 /* VariableDeclarationGrouping.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_560 /* VariableDeclarationGrouping.swift */; }; + OBJ_5111 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_5112 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_5113 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_5114 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_5115 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_5116 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_5117 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_5118 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_5119 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_5120 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_5121 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5137 /* BaseSwiftSyntaxProducerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_929 /* BaseSwiftSyntaxProducerTests.swift */; }; + OBJ_5138 /* ModifiersSyntaxDecoratorsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_930 /* ModifiersSyntaxDecoratorsTests.swift */; }; + OBJ_5139 /* SwiftSyntaxProducer+ExpTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_931 /* SwiftSyntaxProducer+ExpTests.swift */; }; + OBJ_5140 /* SwiftSyntaxProducer+StmtTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_932 /* SwiftSyntaxProducer+StmtTests.swift */; }; + OBJ_5141 /* SwiftSyntaxProducerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_933 /* SwiftSyntaxProducerTests.swift */; }; + OBJ_5142 /* SwiftTypeConversionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_934 /* SwiftTypeConversionTests.swift */; }; + OBJ_5144 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_5145 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_5146 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_5147 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_5148 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_5149 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_5150 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_5151 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_5152 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_5153 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_5154 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_5155 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_5156 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_5157 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_5158 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_5159 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_5160 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_5161 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_5162 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_5163 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_5164 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_5165 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_5166 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_5167 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_5168 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_5169 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_5170 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_5171 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_5172 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_5173 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_5174 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_5175 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_5176 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_5177 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_5178 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_5179 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_5180 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_5181 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_5182 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_5183 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_5184 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5230 /* Array+Testing.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_562 /* Array+Testing.swift */; }; + OBJ_5231 /* Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_563 /* Asserter.swift */; }; + OBJ_5232 /* Antlr+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_565 /* Antlr+Asserter.swift */; }; + OBJ_5233 /* Asserter+KeyPath.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_566 /* Asserter+KeyPath.swift */; }; + OBJ_5234 /* ASTNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_568 /* ASTNode+Asserter.swift */; }; + OBJ_5235 /* RawCodeComment+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_569 /* RawCodeComment+Asserter.swift */; }; + OBJ_5236 /* ClassExtensionGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_571 /* ClassExtensionGenerationIntention+Asserter.swift */; }; + OBJ_5237 /* FileGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_572 /* FileGenerationIntention+Asserter.swift */; }; + OBJ_5238 /* FromSourceIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_573 /* FromSourceIntention+Asserter.swift */; }; + OBJ_5239 /* FunctionBodyIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_574 /* FunctionBodyIntention+Asserter.swift */; }; + OBJ_5240 /* FunctionIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_575 /* FunctionIntention+Asserter.swift */; }; + OBJ_5241 /* Historic+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_576 /* Historic+Asserter.swift */; }; + OBJ_5242 /* IntentionCollection+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_577 /* IntentionCollection+Asserter.swift */; }; + OBJ_5243 /* MethodGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_578 /* MethodGenerationIntention+Asserter.swift */; }; + OBJ_5244 /* PropertyGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_579 /* PropertyGenerationIntention+Asserter.swift */; }; + OBJ_5245 /* SubscriptGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_580 /* SubscriptGenerationIntention+Asserter.swift */; }; + OBJ_5246 /* TypeGenerationIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_581 /* TypeGenerationIntention+Asserter.swift */; }; + OBJ_5247 /* ValueStorageIntention+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_582 /* ValueStorageIntention+Asserter.swift */; }; + OBJ_5248 /* JsFunctionBodyNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_584 /* JsFunctionBodyNode+Asserter.swift */; }; + OBJ_5249 /* JsFunctionDefinitionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_585 /* JsFunctionDefinitionNode+Asserter.swift */; }; + OBJ_5250 /* JsIdentifierNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_586 /* JsIdentifierNode+Asserter.swift */; }; + OBJ_5251 /* ObjcASTNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_588 /* ObjcASTNode+Asserter.swift */; }; + OBJ_5252 /* ObjcClassCategoryInterfaceNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_589 /* ObjcClassCategoryInterfaceNode+Asserter.swift */; }; + OBJ_5253 /* ObjcClassInterfaceNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_590 /* ObjcClassInterfaceNode+Asserter.swift */; }; + OBJ_5254 /* ObjcConstantExpressionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_591 /* ObjcConstantExpressionNode+Asserter.swift */; }; + OBJ_5255 /* ObjcEnumCaseNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_592 /* ObjcEnumCaseNode+Asserter.swift */; }; + OBJ_5256 /* ObjcEnumDeclarationNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_593 /* ObjcEnumDeclarationNode+Asserter.swift */; }; + OBJ_5257 /* ObjcExpressionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_594 /* ObjcExpressionNode+Asserter.swift */; }; + OBJ_5258 /* ObjcFunctionDefinitionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_595 /* ObjcFunctionDefinitionNode+Asserter.swift */; }; + OBJ_5259 /* ObjcFunctionParameterNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_596 /* ObjcFunctionParameterNode+Asserter.swift */; }; + OBJ_5260 /* ObjcIdentifierNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_597 /* ObjcIdentifierNode+Asserter.swift */; }; + OBJ_5261 /* ObjcInitialExpressionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_598 /* ObjcInitialExpressionNode+Asserter.swift */; }; + OBJ_5262 /* ObjcMethodBodyNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_599 /* ObjcMethodBodyNode+Asserter.swift */; }; + OBJ_5263 /* ObjcMethodDefinitionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_600 /* ObjcMethodDefinitionNode+Asserter.swift */; }; + OBJ_5264 /* ObjcPropertyAttributesListNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_601 /* ObjcPropertyAttributesListNode+Asserter.swift */; }; + OBJ_5265 /* ObjcPropertyDefinitionNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_602 /* ObjcPropertyDefinitionNode+Asserter.swift */; }; + OBJ_5266 /* ObjcPropertyImplementationNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_603 /* ObjcPropertyImplementationNode+Asserter.swift */; }; + OBJ_5267 /* ObjcPropertySynthesizeListNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_604 /* ObjcPropertySynthesizeListNode+Asserter.swift */; }; + OBJ_5268 /* ObjcProtocolDeclaration+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_605 /* ObjcProtocolDeclaration+Asserter.swift */; }; + OBJ_5269 /* ObjcStructDeclarationNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_606 /* ObjcStructDeclarationNode+Asserter.swift */; }; + OBJ_5270 /* ObjcStructFieldNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_607 /* ObjcStructFieldNode+Asserter.swift */; }; + OBJ_5271 /* ObjcTypeNameNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_608 /* ObjcTypeNameNode+Asserter.swift */; }; + OBJ_5272 /* ObjcTypedefNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_609 /* ObjcTypedefNode+Asserter.swift */; }; + OBJ_5273 /* ObjcVariableDeclarationNode+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_610 /* ObjcVariableDeclarationNode+Asserter.swift */; }; + OBJ_5274 /* ObjcImportDecl+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_612 /* ObjcImportDecl+Asserter.swift */; }; + OBJ_5275 /* AnyObject+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_614 /* AnyObject+Asserter.swift */; }; + OBJ_5276 /* Bool+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_615 /* Bool+Asserter.swift */; }; + OBJ_5277 /* Collection+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_616 /* Collection+Asserter.swift */; }; + OBJ_5278 /* Equatable+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_617 /* Equatable+Asserter.swift */; }; + OBJ_5279 /* IteratorProtocol+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_618 /* IteratorProtocol+Asserter.swift */; }; + OBJ_5280 /* Sequence+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_619 /* Sequence+Asserter.swift */; }; + OBJ_5281 /* Expression+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_621 /* Expression+Asserter.swift */; }; + OBJ_5282 /* FunctionSignature+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_622 /* FunctionSignature+Asserter.swift */; }; + OBJ_5283 /* ParameterSignature+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_623 /* ParameterSignature+Asserter.swift */; }; + OBJ_5284 /* Statement+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_624 /* Statement+Asserter.swift */; }; + OBJ_5285 /* SourceRange+Asserter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_626 /* SourceRange+Asserter.swift */; }; + OBJ_5286 /* DeclarationBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_628 /* DeclarationBuilder.swift */; }; + OBJ_5287 /* IntentionCollectionBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_629 /* IntentionCollectionBuilder.swift */; }; + OBJ_5288 /* MemberBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_630 /* MemberBuilder.swift */; }; + OBJ_5289 /* TypeBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_631 /* TypeBuilder.swift */; }; + OBJ_5290 /* _FunctionBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_632 /* _FunctionBuilder.swift */; }; + OBJ_5291 /* ExpressionPassTestCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_633 /* ExpressionPassTestCase.swift */; }; + OBJ_5292 /* ExpressionPrinter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_634 /* ExpressionPrinter.swift */; }; + OBJ_5293 /* MersenneTwister.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_635 /* MersenneTwister.swift */; }; + OBJ_5294 /* StatementPrinter.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_636 /* StatementPrinter.swift */; }; + OBJ_5295 /* StringDiffTesting.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_637 /* StringDiffTesting.swift */; }; + OBJ_5296 /* SyntaxNode+TestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_638 /* SyntaxNode+TestUtils.swift */; }; + OBJ_5297 /* TestWriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_639 /* TestWriterOutput.swift */; }; + OBJ_5298 /* VirtualFileDisk.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_640 /* VirtualFileDisk.swift */; }; + OBJ_5300 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_5301 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_5302 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_5303 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_5304 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_5305 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_5306 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_5307 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_5308 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_5309 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_5310 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_5311 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_5312 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_5313 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_5314 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_5315 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_5316 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_5317 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_5318 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_5319 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_5320 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_5321 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_5322 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_5323 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_5324 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_5325 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_5326 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_5327 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_5328 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_5329 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_5330 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_5331 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_5332 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_5333 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_5334 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_5335 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_5336 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_5337 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_5338 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_5339 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5384 /* StringDiffTestingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_936 /* StringDiffTestingTests.swift */; }; + OBJ_5385 /* VirtualFileDiskTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_937 /* VirtualFileDiskTests.swift */; }; + OBJ_5387 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_5388 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_5389 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_5390 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_5391 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_5392 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_5393 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_5394 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_5395 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_5396 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_5397 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_5398 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_5399 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_5400 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_5401 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_5402 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_5403 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_5404 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_5405 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_5406 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_5407 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_5408 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_5409 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_5410 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_5411 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_5412 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_5413 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_5414 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_5415 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_5416 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_5417 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_5418 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_5419 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_5420 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_5421 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_5422 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_5423 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_5424 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_5425 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_5426 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_5427 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5473 /* TypeDefinitions.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_644 /* TypeDefinitions.swift */; }; + OBJ_5479 /* TypeLexers.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1363 /* TypeLexers.swift */; }; + OBJ_5481 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_5487 /* CodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_647 /* CodeDefinition.swift */; }; + OBJ_5488 /* GlobalCodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_648 /* GlobalCodeDefinition.swift */; }; + OBJ_5489 /* GlobalIntentionCodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_649 /* GlobalIntentionCodeDefinition.swift */; }; + OBJ_5490 /* KnownMemberCodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_650 /* KnownMemberCodeDefinition.swift */; }; + OBJ_5491 /* LocalCodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_651 /* LocalCodeDefinition.swift */; }; + OBJ_5492 /* TypeCodeDefinition.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_652 /* TypeCodeDefinition.swift */; }; + OBJ_5493 /* ArrayDefinitionsSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_654 /* ArrayDefinitionsSource.swift */; }; + OBJ_5494 /* CodeScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_655 /* CodeScope.swift */; }; + OBJ_5495 /* CompoundDefinitionsSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_656 /* CompoundDefinitionsSource.swift */; }; + OBJ_5496 /* DefaultCodeScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_657 /* DefaultCodeScope.swift */; }; + OBJ_5497 /* DefinitionsSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_658 /* DefinitionsSource.swift */; }; + OBJ_5498 /* SyntaxNode+CodeScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_659 /* SyntaxNode+CodeScope.swift */; }; + OBJ_5499 /* CompoundKnownType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_660 /* CompoundKnownType.swift */; }; + OBJ_5500 /* GlobalsProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_661 /* GlobalsProvider.swift */; }; + OBJ_5501 /* IntentionCollectionTypeSystem.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_662 /* IntentionCollectionTypeSystem.swift */; }; + OBJ_5502 /* DynamicMemberLookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_664 /* DynamicMemberLookup.swift */; }; + OBJ_5503 /* KnownTypeMemberLookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_665 /* KnownTypeMemberLookup.swift */; }; + OBJ_5504 /* MemberLookupType.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_666 /* MemberLookupType.swift */; }; + OBJ_5505 /* MemberSearchCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_667 /* MemberSearchCache.swift */; }; + OBJ_5506 /* SwiftTypeMemberLookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_668 /* SwiftTypeMemberLookup.swift */; }; + OBJ_5507 /* TypeMemberLookupContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_669 /* TypeMemberLookupContext.swift */; }; + OBJ_5508 /* OverloadResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_670 /* OverloadResolver.swift */; }; + OBJ_5509 /* KnownTypeProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_672 /* KnownTypeProvider.swift */; }; + OBJ_5510 /* TypealiasProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_673 /* TypealiasProvider.swift */; }; + OBJ_5511 /* TypeCategory.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_674 /* TypeCategory.swift */; }; + OBJ_5512 /* TypeMapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_675 /* TypeMapper.swift */; }; + OBJ_5513 /* TypeMemberLookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_676 /* TypeMemberLookup.swift */; }; + OBJ_5514 /* CallableTypeResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_678 /* CallableTypeResolver.swift */; }; + OBJ_5515 /* CoercionVerifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_679 /* CoercionVerifier.swift */; }; + OBJ_5516 /* DefaultLocalTypeResolverInvoker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_680 /* DefaultLocalTypeResolverInvoker.swift */; }; + OBJ_5517 /* DefaultTypeResolverInvoker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_681 /* DefaultTypeResolverInvoker.swift */; }; + OBJ_5518 /* ExpressionTypeResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_682 /* ExpressionTypeResolver.swift */; }; + OBJ_5519 /* IteratorTypeResolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_683 /* IteratorTypeResolver.swift */; }; + OBJ_5520 /* LocalTypeResolverInvoker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_684 /* LocalTypeResolverInvoker.swift */; }; + OBJ_5521 /* PatternMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_685 /* PatternMatcher.swift */; }; + OBJ_5522 /* TypeResolverIntrinsicsBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_686 /* TypeResolverIntrinsicsBuilder.swift */; }; + OBJ_5523 /* TypeResolverInvoker.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_687 /* TypeResolverInvoker.swift */; }; + OBJ_5524 /* TypeSystem.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_688 /* TypeSystem.swift */; }; + OBJ_5526 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_5527 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_5528 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_5529 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_5530 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_5531 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_5532 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_5533 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_5534 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_5535 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_5536 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_5537 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_5538 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_5539 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_5540 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_5541 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_5542 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5564 /* CodeDefinitionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_940 /* CodeDefinitionTests.swift */; }; + OBJ_5565 /* DefaultCodeScopeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_942 /* DefaultCodeScopeTests.swift */; }; + OBJ_5566 /* DefaultTypeMapperTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_943 /* DefaultTypeMapperTests.swift */; }; + OBJ_5567 /* DefaultTypeResolverInvokerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_944 /* DefaultTypeResolverInvokerTests.swift */; }; + OBJ_5568 /* ExpressionTypeResolverTests+Fixtures.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_946 /* ExpressionTypeResolverTests+Fixtures.swift */; }; + OBJ_5569 /* IntentionCollectionTypeSystemTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_947 /* IntentionCollectionTypeSystemTests.swift */; }; + OBJ_5570 /* KnownTypeMemberLookupTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_949 /* KnownTypeMemberLookupTests.swift */; }; + OBJ_5571 /* OverloadResolverTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_950 /* OverloadResolverTests.swift */; }; + OBJ_5572 /* CallableTypeResolverTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_952 /* CallableTypeResolverTests.swift */; }; + OBJ_5573 /* CoercionVerifierTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_953 /* CoercionVerifierTests.swift */; }; + OBJ_5574 /* ExpressionTypeResolverTests+DynamicMemberLookup.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_954 /* ExpressionTypeResolverTests+DynamicMemberLookup.swift */; }; + OBJ_5575 /* ExpressionTypeResolverTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_955 /* ExpressionTypeResolverTests.swift */; }; + OBJ_5576 /* IteratorTypeResolverTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_956 /* IteratorTypeResolverTests.swift */; }; + OBJ_5577 /* PatternMatcherTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_957 /* PatternMatcherTests.swift */; }; + OBJ_5578 /* TypeSystemTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_958 /* TypeSystemTests.swift */; }; + OBJ_5580 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_5581 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_5582 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_5583 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_5584 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_5585 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_5586 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_5587 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_5588 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_5589 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_5590 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_5591 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_5592 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_5593 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_5594 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_5595 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_5596 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_5597 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_5598 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_5599 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_5600 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_5601 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_5602 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_5603 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_5604 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_5605 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_5606 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_5607 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_5608 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_5609 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_5610 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_5611 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_5612 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_5613 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_5614 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_5615 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_5616 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_5617 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_5618 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_5619 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_5620 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5666 /* CodeSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_690 /* CodeSource.swift */; }; + OBJ_5667 /* ConcurrentOperationQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_691 /* ConcurrentOperationQueue.swift */; }; + OBJ_5668 /* ConcurrentValue.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_692 /* ConcurrentValue.swift */; }; + OBJ_5669 /* Diagnostics.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_693 /* Diagnostics.swift */; }; + OBJ_5670 /* InvalidSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_694 /* InvalidSource.swift */; }; + OBJ_5671 /* LinuxSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_695 /* LinuxSupport.swift */; }; + OBJ_5672 /* Mutex.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_696 /* Mutex.swift */; }; + OBJ_5673 /* Source.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_697 /* Source.swift */; }; + OBJ_5674 /* SourceLength.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_698 /* SourceLength.swift */; }; + OBJ_5675 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_699 /* SourceLocation.swift */; }; + OBJ_5676 /* SourceRange.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_700 /* SourceRange.swift */; }; + OBJ_5677 /* String.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_701 /* String.swift */; }; + OBJ_5678 /* StringCodeSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_702 /* StringCodeSource.swift */; }; + OBJ_5679 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_703 /* Utils.swift */; }; + OBJ_5685 /* ConcurrentOperationQueueTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_960 /* ConcurrentOperationQueueTests.swift */; }; + OBJ_5686 /* ConcurrentValueTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_961 /* ConcurrentValueTests.swift */; }; + OBJ_5687 /* InvalidSourceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_962 /* InvalidSourceTests.swift */; }; + OBJ_5688 /* MutexTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_963 /* MutexTests.swift */; }; + OBJ_5689 /* SourceRangeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_964 /* SourceRangeTests.swift */; }; + OBJ_5690 /* StringCodeSourceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_965 /* StringCodeSourceTests.swift */; }; + OBJ_5691 /* StringTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_966 /* StringTests.swift */; }; + OBJ_5693 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5699 /* NullRewriterOutputTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_705 /* NullRewriterOutputTarget.swift */; }; + OBJ_5700 /* RewriterOutputTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_706 /* RewriterOutputTarget.swift */; }; + OBJ_5701 /* StringRewriterOutput.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_707 /* StringRewriterOutput.swift */; }; + OBJ_5703 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_5704 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_5705 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5713 /* RewriterOutputTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_968 /* RewriterOutputTarget.swift */; }; + OBJ_5714 /* StringRewriterOutputTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_969 /* StringRewriterOutputTests.swift */; }; + OBJ_5716 /* TestCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TestCommons::Product /* TestCommons.framework */; }; + OBJ_5717 /* ObjectiveCFrontend.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; }; + OBJ_5718 /* SwiftRewriterLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; }; + OBJ_5719 /* SwiftFormat.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormat::Product /* SwiftFormat.framework */; }; + OBJ_5720 /* SwiftSyntaxParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntaxParser::Product /* SwiftSyntaxParser.framework */; }; + OBJ_5721 /* SwiftFormatWhitespaceLinter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatWhitespaceLinter::Product /* SwiftFormatWhitespaceLinter.framework */; }; + OBJ_5722 /* SwiftFormatRules.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatRules::Product /* SwiftFormatRules.framework */; }; + OBJ_5723 /* SwiftFormatPrettyPrint.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatPrettyPrint::Product /* SwiftFormatPrettyPrint.framework */; }; + OBJ_5724 /* SwiftFormatCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatCore::Product /* SwiftFormatCore.framework */; }; + OBJ_5725 /* SwiftFormatConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-format::SwiftFormatConfiguration::Product /* SwiftFormatConfiguration.framework */; }; + OBJ_5726 /* Console.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = console::Console::Product /* Console.framework */; }; + OBJ_5727 /* JsParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParser::Product /* JsParser.framework */; }; + OBJ_5728 /* JsGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; }; + OBJ_5729 /* JsParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; }; + OBJ_5730 /* SwiftSyntaxRewriterPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; }; + OBJ_5731 /* SourcePreprocessors.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; }; + OBJ_5732 /* ExpressionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; }; + OBJ_5733 /* GlobalsProviders.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; }; + OBJ_5734 /* IntentionPasses.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; }; + OBJ_5735 /* Analysis.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Analysis::Product /* Analysis.framework */; }; + OBJ_5736 /* GraphvizLib.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; }; + OBJ_5737 /* Commons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Commons::Product /* Commons.framework */; }; + OBJ_5738 /* TypeSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeSystem::Product /* TypeSystem.framework */; }; + OBJ_5739 /* TypeDefinitions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::TypeDefinitions::Product /* TypeDefinitions.framework */; }; + OBJ_5740 /* ObjcParser.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; }; + OBJ_5741 /* TypeLexing.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::TypeLexing::Product /* TypeLexing.framework */; }; + OBJ_5742 /* ObjcGrammarModels.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; }; + OBJ_5743 /* ObjcParserAntlr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; }; + OBJ_5744 /* AntlrCommons.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::AntlrCommons::Product /* AntlrCommons.framework */; }; + OBJ_5745 /* SwiftSyntaxSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; }; + OBJ_5746 /* Intentions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Intentions::Product /* Intentions.framework */; }; + OBJ_5747 /* GrammarModelBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; }; + OBJ_5748 /* Antlr4.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::Antlr4::Product /* Antlr4.framework */; }; + OBJ_5749 /* CAntlrShims.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */; }; + OBJ_5750 /* KnownType.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::KnownType::Product /* KnownType.framework */; }; + OBJ_5751 /* SwiftAST.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; }; + OBJ_5752 /* MiniLexer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = minilexer::MiniLexer::Product /* MiniLexer.framework */; }; + OBJ_5753 /* WriterTargetOutput.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::WriterTargetOutput::Product /* WriterTargetOutput.framework */; }; + OBJ_5754 /* SwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::SwiftSyntax::Product /* SwiftSyntax.framework */; }; + OBJ_5755 /* _CSwiftSyntax.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swift-syntax::_CSwiftSyntax::Product /* _CSwiftSyntax.framework */; }; + OBJ_5756 /* Utils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = swiftrewriter::Utils::Product /* Utils.framework */; }; + OBJ_5802 /* atomic-counter.c in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1112 /* atomic-counter.c */; }; + OBJ_5809 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1350 /* Package.swift */; }; + OBJ_5815 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_1062 /* Package.swift */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ OBJ_10 /* CallGraph+Creation.swift */ = {isa = PBXFileReference; path = "CallGraph+Creation.swift"; sourceTree = ""; }; - OBJ_1000 /* SyntaxEnum.swift */ = {isa = PBXFileReference; path = SyntaxEnum.swift; sourceTree = ""; }; - OBJ_1001 /* SyntaxFactory.swift */ = {isa = PBXFileReference; path = SyntaxFactory.swift; sourceTree = ""; }; - OBJ_1002 /* SyntaxKind.swift */ = {isa = PBXFileReference; path = SyntaxKind.swift; sourceTree = ""; }; - OBJ_1003 /* SyntaxRewriter.swift */ = {isa = PBXFileReference; path = SyntaxRewriter.swift; sourceTree = ""; }; - OBJ_1004 /* SyntaxTraits.swift */ = {isa = PBXFileReference; path = SyntaxTraits.swift; sourceTree = ""; }; - OBJ_1005 /* SyntaxVisitor.swift */ = {isa = PBXFileReference; path = SyntaxVisitor.swift; sourceTree = ""; }; - OBJ_1006 /* TokenKind.swift */ = {isa = PBXFileReference; path = TokenKind.swift; sourceTree = ""; }; - OBJ_1007 /* Trivia.swift */ = {isa = PBXFileReference; path = Trivia.swift; sourceTree = ""; }; - OBJ_1009 /* SyntaxDeclNodes.swift */ = {isa = PBXFileReference; path = SyntaxDeclNodes.swift; sourceTree = ""; }; + OBJ_1001 /* Comment.swift */ = {isa = PBXFileReference; path = Comment.swift; sourceTree = ""; }; + OBJ_1002 /* Indent+Length.swift */ = {isa = PBXFileReference; path = "Indent+Length.swift"; sourceTree = ""; }; + OBJ_1003 /* OperatorContext.swift */ = {isa = PBXFileReference; path = OperatorContext.swift; sourceTree = ""; }; + OBJ_1004 /* PrettyPrint.swift */ = {isa = PBXFileReference; path = PrettyPrint.swift; sourceTree = ""; }; + OBJ_1005 /* PrettyPrintFindingCategory.swift */ = {isa = PBXFileReference; path = PrettyPrintFindingCategory.swift; sourceTree = ""; }; + OBJ_1006 /* SequenceExprFolding.swift */ = {isa = PBXFileReference; path = SequenceExprFolding.swift; sourceTree = ""; }; + OBJ_1007 /* Token.swift */ = {isa = PBXFileReference; path = Token.swift; sourceTree = ""; }; + OBJ_1008 /* TokenStreamCreator.swift */ = {isa = PBXFileReference; path = TokenStreamCreator.swift; sourceTree = ""; }; + OBJ_1009 /* Verbatim.swift */ = {isa = PBXFileReference; path = Verbatim.swift; sourceTree = ""; }; OBJ_101 /* AnonymousIntentionVisitor.swift */ = {isa = PBXFileReference; path = AnonymousIntentionVisitor.swift; sourceTree = ""; }; - OBJ_1010 /* SyntaxExprNodes.swift */ = {isa = PBXFileReference; path = SyntaxExprNodes.swift; sourceTree = ""; }; - OBJ_1011 /* SyntaxNodes.swift */ = {isa = PBXFileReference; path = SyntaxNodes.swift; sourceTree = ""; }; - OBJ_1012 /* SyntaxPatternNodes.swift */ = {isa = PBXFileReference; path = SyntaxPatternNodes.swift; sourceTree = ""; }; - OBJ_1013 /* SyntaxStmtNodes.swift */ = {isa = PBXFileReference; path = SyntaxStmtNodes.swift; sourceTree = ""; }; - OBJ_1014 /* SyntaxTypeNodes.swift */ = {isa = PBXFileReference; path = SyntaxTypeNodes.swift; sourceTree = ""; }; - OBJ_1017 /* CNodes.swift */ = {isa = PBXFileReference; path = CNodes.swift; sourceTree = ""; }; - OBJ_1018 /* Diagnostic.swift */ = {isa = PBXFileReference; path = Diagnostic.swift; sourceTree = ""; }; - OBJ_1019 /* SyntaxParser.swift */ = {isa = PBXFileReference; path = SyntaxParser.swift; sourceTree = ""; }; + OBJ_1011 /* AddModifierRewriter.swift */ = {isa = PBXFileReference; path = AddModifierRewriter.swift; sourceTree = ""; }; + OBJ_1012 /* AllPublicDeclarationsHaveDocumentation.swift */ = {isa = PBXFileReference; path = AllPublicDeclarationsHaveDocumentation.swift; sourceTree = ""; }; + OBJ_1013 /* AlwaysUseLowerCamelCase.swift */ = {isa = PBXFileReference; path = AlwaysUseLowerCamelCase.swift; sourceTree = ""; }; + OBJ_1014 /* AmbiguousTrailingClosureOverload.swift */ = {isa = PBXFileReference; path = AmbiguousTrailingClosureOverload.swift; sourceTree = ""; }; + OBJ_1015 /* BeginDocumentationCommentWithOneLineSummary.swift */ = {isa = PBXFileReference; path = BeginDocumentationCommentWithOneLineSummary.swift; sourceTree = ""; }; + OBJ_1016 /* DeclSyntaxProtocol+Comments.swift */ = {isa = PBXFileReference; path = "DeclSyntaxProtocol+Comments.swift"; sourceTree = ""; }; + OBJ_1017 /* DoNotUseSemicolons.swift */ = {isa = PBXFileReference; path = DoNotUseSemicolons.swift; sourceTree = ""; }; + OBJ_1018 /* DontRepeatTypeInStaticProperties.swift */ = {isa = PBXFileReference; path = DontRepeatTypeInStaticProperties.swift; sourceTree = ""; }; + OBJ_1019 /* FileScopedDeclarationPrivacy.swift */ = {isa = PBXFileReference; path = FileScopedDeclarationPrivacy.swift; sourceTree = ""; }; OBJ_102 /* DetectNoReturnsIntentionPass.swift */ = {isa = PBXFileReference; path = DetectNoReturnsIntentionPass.swift; sourceTree = ""; }; - OBJ_1021 /* NodeDeclarationHash.swift */ = {isa = PBXFileReference; path = NodeDeclarationHash.swift; sourceTree = ""; }; - OBJ_1024 /* atomic-counter.c */ = {isa = PBXFileReference; path = "atomic-counter.c"; sourceTree = ""; }; - OBJ_1026 /* c-syntax-nodes.h */ = {isa = PBXFileReference; path = "c-syntax-nodes.h"; sourceTree = ""; }; - OBJ_1027 /* atomic-counter.h */ = {isa = PBXFileReference; path = "atomic-counter.h"; sourceTree = ""; }; - OBJ_1028 /* module.modulemap */ = {isa = PBXFileReference; name = module.modulemap; path = /home/luiz/dev/SwiftRewriter/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap; sourceTree = ""; }; - OBJ_1029 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = "/home/luiz/dev/SwiftRewriter/.build/checkouts/swift-syntax/Package.swift"; sourceTree = ""; }; + OBJ_1020 /* FullyIndirectEnum.swift */ = {isa = PBXFileReference; path = FullyIndirectEnum.swift; sourceTree = ""; }; + OBJ_1021 /* FunctionDeclSyntax+Convenience.swift */ = {isa = PBXFileReference; path = "FunctionDeclSyntax+Convenience.swift"; sourceTree = ""; }; + OBJ_1022 /* GroupNumericLiterals.swift */ = {isa = PBXFileReference; path = GroupNumericLiterals.swift; sourceTree = ""; }; + OBJ_1023 /* IdentifiersMustBeASCII.swift */ = {isa = PBXFileReference; path = IdentifiersMustBeASCII.swift; sourceTree = ""; }; + OBJ_1024 /* ImportsXCTestVisitor.swift */ = {isa = PBXFileReference; path = ImportsXCTestVisitor.swift; sourceTree = ""; }; + OBJ_1025 /* ModifierListSyntax+Convenience.swift */ = {isa = PBXFileReference; path = "ModifierListSyntax+Convenience.swift"; sourceTree = ""; }; + OBJ_1026 /* NeverForceUnwrap.swift */ = {isa = PBXFileReference; path = NeverForceUnwrap.swift; sourceTree = ""; }; + OBJ_1027 /* NeverUseForceTry.swift */ = {isa = PBXFileReference; path = NeverUseForceTry.swift; sourceTree = ""; }; + OBJ_1028 /* NeverUseImplicitlyUnwrappedOptionals.swift */ = {isa = PBXFileReference; path = NeverUseImplicitlyUnwrappedOptionals.swift; sourceTree = ""; }; + OBJ_1029 /* NoAccessLevelOnExtensionDeclaration.swift */ = {isa = PBXFileReference; path = NoAccessLevelOnExtensionDeclaration.swift; sourceTree = ""; }; OBJ_103 /* DetectNonnullReturnsIntentionPass.swift */ = {isa = PBXFileReference; path = DetectNonnullReturnsIntentionPass.swift; sourceTree = ""; }; - OBJ_1032 /* Console+Command.swift */ = {isa = PBXFileReference; path = "Console+Command.swift"; sourceTree = ""; }; - OBJ_1033 /* Console+Paging.swift */ = {isa = PBXFileReference; path = "Console+Paging.swift"; sourceTree = ""; }; - OBJ_1034 /* Console.swift */ = {isa = PBXFileReference; path = Console.swift; sourceTree = ""; }; - OBJ_1035 /* ConsoleColor+Terminal.swift */ = {isa = PBXFileReference; path = "ConsoleColor+Terminal.swift"; sourceTree = ""; }; - OBJ_1036 /* ConsoleDataProvider.swift */ = {isa = PBXFileReference; path = ConsoleDataProvider.swift; sourceTree = ""; }; - OBJ_1037 /* ConsoleMenuController.swift */ = {isa = PBXFileReference; path = ConsoleMenuController.swift; sourceTree = ""; }; - OBJ_1038 /* LinuxSupport.swift */ = {isa = PBXFileReference; path = LinuxSupport.swift; sourceTree = ""; }; - OBJ_1039 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = /home/luiz/dev/SwiftRewriter/.build/checkouts/console/Package.swift; sourceTree = ""; }; + OBJ_1030 /* NoBlockComments.swift */ = {isa = PBXFileReference; path = NoBlockComments.swift; sourceTree = ""; }; + OBJ_1031 /* NoCasesWithOnlyFallthrough.swift */ = {isa = PBXFileReference; path = NoCasesWithOnlyFallthrough.swift; sourceTree = ""; }; + OBJ_1032 /* NoEmptyTrailingClosureParentheses.swift */ = {isa = PBXFileReference; path = NoEmptyTrailingClosureParentheses.swift; sourceTree = ""; }; + OBJ_1033 /* NoLabelsInCasePatterns.swift */ = {isa = PBXFileReference; path = NoLabelsInCasePatterns.swift; sourceTree = ""; }; + OBJ_1034 /* NoLeadingUnderscores.swift */ = {isa = PBXFileReference; path = NoLeadingUnderscores.swift; sourceTree = ""; }; + OBJ_1035 /* NoParensAroundConditions.swift */ = {isa = PBXFileReference; path = NoParensAroundConditions.swift; sourceTree = ""; }; + OBJ_1036 /* NoPlaygroundLiterals.swift */ = {isa = PBXFileReference; path = NoPlaygroundLiterals.swift; sourceTree = ""; }; + OBJ_1037 /* NoVoidReturnOnFunctionSignature.swift */ = {isa = PBXFileReference; path = NoVoidReturnOnFunctionSignature.swift; sourceTree = ""; }; + OBJ_1038 /* OneCasePerLine.swift */ = {isa = PBXFileReference; path = OneCasePerLine.swift; sourceTree = ""; }; + OBJ_1039 /* OneVariableDeclarationPerLine.swift */ = {isa = PBXFileReference; path = OneVariableDeclarationPerLine.swift; sourceTree = ""; }; OBJ_104 /* DetectTypePropertiesBySelfAssignmentIntentionPass.swift */ = {isa = PBXFileReference; path = DetectTypePropertiesBySelfAssignmentIntentionPass.swift; sourceTree = ""; }; - OBJ_1042 /* ANTLRErrorListener.swift */ = {isa = PBXFileReference; path = ANTLRErrorListener.swift; sourceTree = ""; }; - OBJ_1043 /* ANTLRErrorStrategy.swift */ = {isa = PBXFileReference; path = ANTLRErrorStrategy.swift; sourceTree = ""; }; - OBJ_1044 /* ANTLRFileStream.swift */ = {isa = PBXFileReference; path = ANTLRFileStream.swift; sourceTree = ""; }; - OBJ_1045 /* ANTLRInputStream.swift */ = {isa = PBXFileReference; path = ANTLRInputStream.swift; sourceTree = ""; }; - OBJ_1046 /* BailErrorStrategy.swift */ = {isa = PBXFileReference; path = BailErrorStrategy.swift; sourceTree = ""; }; - OBJ_1047 /* BaseErrorListener.swift */ = {isa = PBXFileReference; path = BaseErrorListener.swift; sourceTree = ""; }; - OBJ_1048 /* BufferedTokenStream.swift */ = {isa = PBXFileReference; path = BufferedTokenStream.swift; sourceTree = ""; }; - OBJ_1049 /* CharStream.swift */ = {isa = PBXFileReference; path = CharStream.swift; sourceTree = ""; }; + OBJ_1040 /* OnlyOneTrailingClosureArgument.swift */ = {isa = PBXFileReference; path = OnlyOneTrailingClosureArgument.swift; sourceTree = ""; }; + OBJ_1041 /* OrderedImports.swift */ = {isa = PBXFileReference; path = OrderedImports.swift; sourceTree = ""; }; + OBJ_1042 /* ReplaceTrivia.swift */ = {isa = PBXFileReference; path = ReplaceTrivia.swift; sourceTree = ""; }; + OBJ_1043 /* ReturnVoidInsteadOfEmptyTuple.swift */ = {isa = PBXFileReference; path = ReturnVoidInsteadOfEmptyTuple.swift; sourceTree = ""; }; + OBJ_1044 /* RuleNameCache+Generated.swift */ = {isa = PBXFileReference; path = "RuleNameCache+Generated.swift"; sourceTree = ""; }; + OBJ_1045 /* SemicolonSyntaxProtocol.swift */ = {isa = PBXFileReference; path = SemicolonSyntaxProtocol.swift; sourceTree = ""; }; + OBJ_1046 /* TokenSyntax+Convenience.swift */ = {isa = PBXFileReference; path = "TokenSyntax+Convenience.swift"; sourceTree = ""; }; + OBJ_1047 /* UseEarlyExits.swift */ = {isa = PBXFileReference; path = UseEarlyExits.swift; sourceTree = ""; }; + OBJ_1048 /* UseLetInEveryBoundCaseVariable.swift */ = {isa = PBXFileReference; path = UseLetInEveryBoundCaseVariable.swift; sourceTree = ""; }; + OBJ_1049 /* UseShorthandTypeNames.swift */ = {isa = PBXFileReference; path = UseShorthandTypeNames.swift; sourceTree = ""; }; OBJ_105 /* FileTypeMergingIntentionPass.swift */ = {isa = PBXFileReference; path = FileTypeMergingIntentionPass.swift; sourceTree = ""; }; - OBJ_1050 /* CommonToken.swift */ = {isa = PBXFileReference; path = CommonToken.swift; sourceTree = ""; }; - OBJ_1051 /* CommonTokenFactory.swift */ = {isa = PBXFileReference; path = CommonTokenFactory.swift; sourceTree = ""; }; - OBJ_1052 /* CommonTokenStream.swift */ = {isa = PBXFileReference; path = CommonTokenStream.swift; sourceTree = ""; }; - OBJ_1053 /* ConsoleErrorListener.swift */ = {isa = PBXFileReference; path = ConsoleErrorListener.swift; sourceTree = ""; }; - OBJ_1054 /* DefaultErrorStrategy.swift */ = {isa = PBXFileReference; path = DefaultErrorStrategy.swift; sourceTree = ""; }; - OBJ_1055 /* DiagnosticErrorListener.swift */ = {isa = PBXFileReference; path = DiagnosticErrorListener.swift; sourceTree = ""; }; - OBJ_1056 /* FailedPredicateException.swift */ = {isa = PBXFileReference; path = FailedPredicateException.swift; sourceTree = ""; }; - OBJ_1057 /* InputMismatchException.swift */ = {isa = PBXFileReference; path = InputMismatchException.swift; sourceTree = ""; }; - OBJ_1058 /* IntStream.swift */ = {isa = PBXFileReference; path = IntStream.swift; sourceTree = ""; }; - OBJ_1059 /* InterpreterRuleContext.swift */ = {isa = PBXFileReference; path = InterpreterRuleContext.swift; sourceTree = ""; }; + OBJ_1050 /* UseSingleLinePropertyGetter.swift */ = {isa = PBXFileReference; path = UseSingleLinePropertyGetter.swift; sourceTree = ""; }; + OBJ_1051 /* UseSynthesizedInitializer.swift */ = {isa = PBXFileReference; path = UseSynthesizedInitializer.swift; sourceTree = ""; }; + OBJ_1052 /* UseTripleSlashForDocumentationComments.swift */ = {isa = PBXFileReference; path = UseTripleSlashForDocumentationComments.swift; sourceTree = ""; }; + OBJ_1053 /* UseWhereClausesInForLoops.swift */ = {isa = PBXFileReference; path = UseWhereClausesInForLoops.swift; sourceTree = ""; }; + OBJ_1054 /* ValidateDocumentationComments.swift */ = {isa = PBXFileReference; path = ValidateDocumentationComments.swift; sourceTree = ""; }; + OBJ_1055 /* VarDeclSyntax+Convenience.swift */ = {isa = PBXFileReference; path = "VarDeclSyntax+Convenience.swift"; sourceTree = ""; }; + OBJ_1057 /* LazySplitSequence.swift */ = {isa = PBXFileReference; path = LazySplitSequence.swift; sourceTree = ""; }; + OBJ_1058 /* RememberingIterator.swift */ = {isa = PBXFileReference; path = RememberingIterator.swift; sourceTree = ""; }; + OBJ_1059 /* WhitespaceFindingCategory.swift */ = {isa = PBXFileReference; path = WhitespaceFindingCategory.swift; sourceTree = ""; }; OBJ_106 /* FunctionIntentionVisitor.swift */ = {isa = PBXFileReference; path = FunctionIntentionVisitor.swift; sourceTree = ""; }; - OBJ_1060 /* Lexer.swift */ = {isa = PBXFileReference; path = Lexer.swift; sourceTree = ""; }; - OBJ_1061 /* LexerInterpreter.swift */ = {isa = PBXFileReference; path = LexerInterpreter.swift; sourceTree = ""; }; - OBJ_1062 /* LexerNoViableAltException.swift */ = {isa = PBXFileReference; path = LexerNoViableAltException.swift; sourceTree = ""; }; - OBJ_1063 /* ListTokenSource.swift */ = {isa = PBXFileReference; path = ListTokenSource.swift; sourceTree = ""; }; - OBJ_1064 /* NoViableAltException.swift */ = {isa = PBXFileReference; path = NoViableAltException.swift; sourceTree = ""; }; - OBJ_1065 /* Parser.swift */ = {isa = PBXFileReference; path = Parser.swift; sourceTree = ""; }; - OBJ_1066 /* ParserInterpreter.swift */ = {isa = PBXFileReference; path = ParserInterpreter.swift; sourceTree = ""; }; - OBJ_1067 /* ParserRuleContext.swift */ = {isa = PBXFileReference; path = ParserRuleContext.swift; sourceTree = ""; }; - OBJ_1068 /* ProxyErrorListener.swift */ = {isa = PBXFileReference; path = ProxyErrorListener.swift; sourceTree = ""; }; - OBJ_1069 /* RecognitionException.swift */ = {isa = PBXFileReference; path = RecognitionException.swift; sourceTree = ""; }; + OBJ_1060 /* WhitespaceLinter.swift */ = {isa = PBXFileReference; path = WhitespaceLinter.swift; sourceTree = ""; }; + OBJ_1062 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = "/home/luiz/dev/SwiftRewriter/.build/checkouts/swift-format/Package.swift"; sourceTree = ""; }; + OBJ_1065 /* AbsolutePosition.swift */ = {isa = PBXFileReference; path = AbsolutePosition.swift; sourceTree = ""; }; + OBJ_1066 /* AtomicCounter.swift */ = {isa = PBXFileReference; path = AtomicCounter.swift; sourceTree = ""; }; + OBJ_1067 /* CNodes.swift */ = {isa = PBXFileReference; path = CNodes.swift; sourceTree = ""; }; + OBJ_1068 /* IncrementalParseTransition.swift */ = {isa = PBXFileReference; path = IncrementalParseTransition.swift; sourceTree = ""; }; + OBJ_1069 /* RawSyntax.swift */ = {isa = PBXFileReference; path = RawSyntax.swift; sourceTree = ""; }; OBJ_107 /* ImportDirectiveIntentionPass.swift */ = {isa = PBXFileReference; path = ImportDirectiveIntentionPass.swift; sourceTree = ""; }; - OBJ_1070 /* Recognizer.swift */ = {isa = PBXFileReference; path = Recognizer.swift; sourceTree = ""; }; - OBJ_1071 /* RuleContext.swift */ = {isa = PBXFileReference; path = RuleContext.swift; sourceTree = ""; }; - OBJ_1072 /* RuntimeMetaData.swift */ = {isa = PBXFileReference; path = RuntimeMetaData.swift; sourceTree = ""; }; - OBJ_1073 /* Token.swift */ = {isa = PBXFileReference; path = Token.swift; sourceTree = ""; }; - OBJ_1074 /* TokenFactory.swift */ = {isa = PBXFileReference; path = TokenFactory.swift; sourceTree = ""; }; - OBJ_1075 /* TokenSource.swift */ = {isa = PBXFileReference; path = TokenSource.swift; sourceTree = ""; }; - OBJ_1076 /* TokenStream.swift */ = {isa = PBXFileReference; path = TokenStream.swift; sourceTree = ""; }; - OBJ_1077 /* TokenStreamRewriter.swift */ = {isa = PBXFileReference; path = TokenStreamRewriter.swift; sourceTree = ""; }; - OBJ_1078 /* UnbufferedCharStream.swift */ = {isa = PBXFileReference; path = UnbufferedCharStream.swift; sourceTree = ""; }; - OBJ_1079 /* UnbufferedTokenStream.swift */ = {isa = PBXFileReference; path = UnbufferedTokenStream.swift; sourceTree = ""; }; + OBJ_1070 /* SourceLength.swift */ = {isa = PBXFileReference; path = SourceLength.swift; sourceTree = ""; }; + OBJ_1071 /* SourceLocation.swift */ = {isa = PBXFileReference; path = SourceLocation.swift; sourceTree = ""; }; + OBJ_1072 /* SourcePresence.swift */ = {isa = PBXFileReference; path = SourcePresence.swift; sourceTree = ""; }; + OBJ_1073 /* Syntax.swift */ = {isa = PBXFileReference; path = Syntax.swift; sourceTree = ""; }; + OBJ_1074 /* SyntaxChildren.swift */ = {isa = PBXFileReference; path = SyntaxChildren.swift; sourceTree = ""; }; + OBJ_1075 /* SyntaxClassifier.swift */ = {isa = PBXFileReference; path = SyntaxClassifier.swift; sourceTree = ""; }; + OBJ_1076 /* SyntaxData.swift */ = {isa = PBXFileReference; path = SyntaxData.swift; sourceTree = ""; }; + OBJ_1077 /* SyntaxOtherNodes.swift */ = {isa = PBXFileReference; path = SyntaxOtherNodes.swift; sourceTree = ""; }; + OBJ_1078 /* SyntaxVerifier.swift */ = {isa = PBXFileReference; path = SyntaxVerifier.swift; sourceTree = ""; }; + OBJ_1079 /* Utils.swift */ = {isa = PBXFileReference; path = Utils.swift; sourceTree = ""; }; OBJ_108 /* InitAnalysisIntentionPass.swift */ = {isa = PBXFileReference; path = InitAnalysisIntentionPass.swift; sourceTree = ""; }; - OBJ_1080 /* VocabularySingle.swift */ = {isa = PBXFileReference; path = VocabularySingle.swift; sourceTree = ""; }; - OBJ_1081 /* WritableToken.swift */ = {isa = PBXFileReference; path = WritableToken.swift; sourceTree = ""; }; - OBJ_1083 /* ATN.swift */ = {isa = PBXFileReference; path = ATN.swift; sourceTree = ""; }; - OBJ_1084 /* ATNConfig.swift */ = {isa = PBXFileReference; path = ATNConfig.swift; sourceTree = ""; }; - OBJ_1085 /* ATNConfigSet.swift */ = {isa = PBXFileReference; path = ATNConfigSet.swift; sourceTree = ""; }; - OBJ_1086 /* ATNDeserializationOptions.swift */ = {isa = PBXFileReference; path = ATNDeserializationOptions.swift; sourceTree = ""; }; - OBJ_1087 /* ATNDeserializer.swift */ = {isa = PBXFileReference; path = ATNDeserializer.swift; sourceTree = ""; }; - OBJ_1088 /* ATNSimulator.swift */ = {isa = PBXFileReference; path = ATNSimulator.swift; sourceTree = ""; }; - OBJ_1089 /* ATNState.swift */ = {isa = PBXFileReference; path = ATNState.swift; sourceTree = ""; }; + OBJ_1080 /* _SyntaxParserInterop.swift */ = {isa = PBXFileReference; path = _SyntaxParserInterop.swift; sourceTree = ""; }; + OBJ_1082 /* Misc.swift */ = {isa = PBXFileReference; path = Misc.swift; sourceTree = ""; }; + OBJ_1083 /* SyntaxAnyVisitor.swift */ = {isa = PBXFileReference; path = SyntaxAnyVisitor.swift; sourceTree = ""; }; + OBJ_1084 /* SyntaxBaseNodes.swift */ = {isa = PBXFileReference; path = SyntaxBaseNodes.swift; sourceTree = ""; }; + OBJ_1085 /* SyntaxBuilders.swift */ = {isa = PBXFileReference; path = SyntaxBuilders.swift; sourceTree = ""; }; + OBJ_1086 /* SyntaxClassification.swift */ = {isa = PBXFileReference; path = SyntaxClassification.swift; sourceTree = ""; }; + OBJ_1087 /* SyntaxCollections.swift */ = {isa = PBXFileReference; path = SyntaxCollections.swift; sourceTree = ""; }; + OBJ_1088 /* SyntaxEnum.swift */ = {isa = PBXFileReference; path = SyntaxEnum.swift; sourceTree = ""; }; + OBJ_1089 /* SyntaxFactory.swift */ = {isa = PBXFileReference; path = SyntaxFactory.swift; sourceTree = ""; }; OBJ_109 /* IntentionPass.swift */ = {isa = PBXFileReference; path = IntentionPass.swift; sourceTree = ""; }; - OBJ_1090 /* ATNType.swift */ = {isa = PBXFileReference; path = ATNType.swift; sourceTree = ""; }; - OBJ_1091 /* AbstractPredicateTransition.swift */ = {isa = PBXFileReference; path = AbstractPredicateTransition.swift; sourceTree = ""; }; - OBJ_1092 /* ActionTransition.swift */ = {isa = PBXFileReference; path = ActionTransition.swift; sourceTree = ""; }; - OBJ_1093 /* AmbiguityInfo.swift */ = {isa = PBXFileReference; path = AmbiguityInfo.swift; sourceTree = ""; }; - OBJ_1094 /* ArrayPredictionContext.swift */ = {isa = PBXFileReference; path = ArrayPredictionContext.swift; sourceTree = ""; }; - OBJ_1095 /* AtomTransition.swift */ = {isa = PBXFileReference; path = AtomTransition.swift; sourceTree = ""; }; - OBJ_1096 /* BasicBlockStartState.swift */ = {isa = PBXFileReference; path = BasicBlockStartState.swift; sourceTree = ""; }; - OBJ_1097 /* BasicState.swift */ = {isa = PBXFileReference; path = BasicState.swift; sourceTree = ""; }; - OBJ_1098 /* BlockEndState.swift */ = {isa = PBXFileReference; path = BlockEndState.swift; sourceTree = ""; }; - OBJ_1099 /* BlockStartState.swift */ = {isa = PBXFileReference; path = BlockStartState.swift; sourceTree = ""; }; + OBJ_1090 /* SyntaxKind.swift */ = {isa = PBXFileReference; path = SyntaxKind.swift; sourceTree = ""; }; + OBJ_1091 /* SyntaxRewriter.swift */ = {isa = PBXFileReference; path = SyntaxRewriter.swift; sourceTree = ""; }; + OBJ_1092 /* SyntaxTraits.swift */ = {isa = PBXFileReference; path = SyntaxTraits.swift; sourceTree = ""; }; + OBJ_1093 /* SyntaxVisitor.swift */ = {isa = PBXFileReference; path = SyntaxVisitor.swift; sourceTree = ""; }; + OBJ_1094 /* TokenKind.swift */ = {isa = PBXFileReference; path = TokenKind.swift; sourceTree = ""; }; + OBJ_1095 /* Trivia.swift */ = {isa = PBXFileReference; path = Trivia.swift; sourceTree = ""; }; + OBJ_1097 /* SyntaxDeclNodes.swift */ = {isa = PBXFileReference; path = SyntaxDeclNodes.swift; sourceTree = ""; }; + OBJ_1098 /* SyntaxExprNodes.swift */ = {isa = PBXFileReference; path = SyntaxExprNodes.swift; sourceTree = ""; }; + OBJ_1099 /* SyntaxNodes.swift */ = {isa = PBXFileReference; path = SyntaxNodes.swift; sourceTree = ""; }; OBJ_11 /* CallGraph+Graphviz.swift */ = {isa = PBXFileReference; path = "CallGraph+Graphviz.swift"; sourceTree = ""; }; OBJ_110 /* IntentionPassSource.swift */ = {isa = PBXFileReference; path = IntentionPassSource.swift; sourceTree = ""; }; - OBJ_1100 /* ContextSensitivityInfo.swift */ = {isa = PBXFileReference; path = ContextSensitivityInfo.swift; sourceTree = ""; }; - OBJ_1101 /* DecisionEventInfo.swift */ = {isa = PBXFileReference; path = DecisionEventInfo.swift; sourceTree = ""; }; - OBJ_1102 /* DecisionInfo.swift */ = {isa = PBXFileReference; path = DecisionInfo.swift; sourceTree = ""; }; - OBJ_1103 /* DecisionState.swift */ = {isa = PBXFileReference; path = DecisionState.swift; sourceTree = ""; }; - OBJ_1104 /* DefaultATNConfig.swift */ = {isa = PBXFileReference; path = DefaultATNConfig.swift; sourceTree = ""; }; - OBJ_1105 /* EmptyPredictionContext.swift */ = {isa = PBXFileReference; path = EmptyPredictionContext.swift; sourceTree = ""; }; - OBJ_1106 /* EpsilonTransition.swift */ = {isa = PBXFileReference; path = EpsilonTransition.swift; sourceTree = ""; }; - OBJ_1107 /* ErrorInfo.swift */ = {isa = PBXFileReference; path = ErrorInfo.swift; sourceTree = ""; }; - OBJ_1108 /* LL1Analyzer.swift */ = {isa = PBXFileReference; path = LL1Analyzer.swift; sourceTree = ""; }; - OBJ_1109 /* LexerATNConfig.swift */ = {isa = PBXFileReference; path = LexerATNConfig.swift; sourceTree = ""; }; + OBJ_1100 /* SyntaxPatternNodes.swift */ = {isa = PBXFileReference; path = SyntaxPatternNodes.swift; sourceTree = ""; }; + OBJ_1101 /* SyntaxStmtNodes.swift */ = {isa = PBXFileReference; path = SyntaxStmtNodes.swift; sourceTree = ""; }; + OBJ_1102 /* SyntaxTypeNodes.swift */ = {isa = PBXFileReference; path = SyntaxTypeNodes.swift; sourceTree = ""; }; + OBJ_1105 /* CNodes.swift */ = {isa = PBXFileReference; path = CNodes.swift; sourceTree = ""; }; + OBJ_1106 /* Diagnostic.swift */ = {isa = PBXFileReference; path = Diagnostic.swift; sourceTree = ""; }; + OBJ_1107 /* SyntaxParser.swift */ = {isa = PBXFileReference; path = SyntaxParser.swift; sourceTree = ""; }; + OBJ_1109 /* NodeDeclarationHash.swift */ = {isa = PBXFileReference; path = NodeDeclarationHash.swift; sourceTree = ""; }; OBJ_111 /* PromoteProtocolPropertyConformanceIntentionPass.swift */ = {isa = PBXFileReference; path = PromoteProtocolPropertyConformanceIntentionPass.swift; sourceTree = ""; }; - OBJ_1110 /* LexerATNSimulator.swift */ = {isa = PBXFileReference; path = LexerATNSimulator.swift; sourceTree = ""; }; - OBJ_1111 /* LexerAction.swift */ = {isa = PBXFileReference; path = LexerAction.swift; sourceTree = ""; }; - OBJ_1112 /* LexerActionExecutor.swift */ = {isa = PBXFileReference; path = LexerActionExecutor.swift; sourceTree = ""; }; - OBJ_1113 /* LexerActionType.swift */ = {isa = PBXFileReference; path = LexerActionType.swift; sourceTree = ""; }; - OBJ_1114 /* LexerChannelAction.swift */ = {isa = PBXFileReference; path = LexerChannelAction.swift; sourceTree = ""; }; - OBJ_1115 /* LexerCustomAction.swift */ = {isa = PBXFileReference; path = LexerCustomAction.swift; sourceTree = ""; }; - OBJ_1116 /* LexerIndexedCustomAction.swift */ = {isa = PBXFileReference; path = LexerIndexedCustomAction.swift; sourceTree = ""; }; - OBJ_1117 /* LexerModeAction.swift */ = {isa = PBXFileReference; path = LexerModeAction.swift; sourceTree = ""; }; - OBJ_1118 /* LexerMoreAction.swift */ = {isa = PBXFileReference; path = LexerMoreAction.swift; sourceTree = ""; }; - OBJ_1119 /* LexerPopModeAction.swift */ = {isa = PBXFileReference; path = LexerPopModeAction.swift; sourceTree = ""; }; + OBJ_1112 /* atomic-counter.c */ = {isa = PBXFileReference; path = "atomic-counter.c"; sourceTree = ""; }; + OBJ_1114 /* c-syntax-nodes.h */ = {isa = PBXFileReference; path = "c-syntax-nodes.h"; sourceTree = ""; }; + OBJ_1115 /* atomic-counter.h */ = {isa = PBXFileReference; path = "atomic-counter.h"; sourceTree = ""; }; + OBJ_1116 /* module.modulemap */ = {isa = PBXFileReference; name = module.modulemap; path = /home/luiz/dev/SwiftRewriter/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap; sourceTree = ""; }; + OBJ_1117 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = "/home/luiz/dev/SwiftRewriter/.build/checkouts/swift-syntax/Package.swift"; sourceTree = ""; }; OBJ_112 /* ProtocolNullabilityPropagationToConformersIntentionPass.swift */ = {isa = PBXFileReference; path = ProtocolNullabilityPropagationToConformersIntentionPass.swift; sourceTree = ""; }; - OBJ_1120 /* LexerPushModeAction.swift */ = {isa = PBXFileReference; path = LexerPushModeAction.swift; sourceTree = ""; }; - OBJ_1121 /* LexerSkipAction.swift */ = {isa = PBXFileReference; path = LexerSkipAction.swift; sourceTree = ""; }; - OBJ_1122 /* LexerTypeAction.swift */ = {isa = PBXFileReference; path = LexerTypeAction.swift; sourceTree = ""; }; - OBJ_1123 /* LookaheadEventInfo.swift */ = {isa = PBXFileReference; path = LookaheadEventInfo.swift; sourceTree = ""; }; - OBJ_1124 /* LookupATNConfig.swift */ = {isa = PBXFileReference; path = LookupATNConfig.swift; sourceTree = ""; }; - OBJ_1125 /* LookupDictionary.swift */ = {isa = PBXFileReference; path = LookupDictionary.swift; sourceTree = ""; }; - OBJ_1126 /* LoopEndState.swift */ = {isa = PBXFileReference; path = LoopEndState.swift; sourceTree = ""; }; - OBJ_1127 /* NotSetTransition.swift */ = {isa = PBXFileReference; path = NotSetTransition.swift; sourceTree = ""; }; - OBJ_1128 /* ParseInfo.swift */ = {isa = PBXFileReference; path = ParseInfo.swift; sourceTree = ""; }; - OBJ_1129 /* ParserATNSimulator.swift */ = {isa = PBXFileReference; path = ParserATNSimulator.swift; sourceTree = ""; }; + OBJ_1120 /* Console+Command.swift */ = {isa = PBXFileReference; path = "Console+Command.swift"; sourceTree = ""; }; + OBJ_1121 /* Console+Paging.swift */ = {isa = PBXFileReference; path = "Console+Paging.swift"; sourceTree = ""; }; + OBJ_1122 /* Console.swift */ = {isa = PBXFileReference; path = Console.swift; sourceTree = ""; }; + OBJ_1123 /* ConsoleColor+Terminal.swift */ = {isa = PBXFileReference; path = "ConsoleColor+Terminal.swift"; sourceTree = ""; }; + OBJ_1124 /* ConsoleDataProvider.swift */ = {isa = PBXFileReference; path = ConsoleDataProvider.swift; sourceTree = ""; }; + OBJ_1125 /* ConsoleMenuController.swift */ = {isa = PBXFileReference; path = ConsoleMenuController.swift; sourceTree = ""; }; + OBJ_1126 /* LinuxSupport.swift */ = {isa = PBXFileReference; path = LinuxSupport.swift; sourceTree = ""; }; + OBJ_1127 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = /home/luiz/dev/SwiftRewriter/.build/checkouts/console/Package.swift; sourceTree = ""; }; OBJ_113 /* RemoveEmptyExtensionsIntentionPass.swift */ = {isa = PBXFileReference; path = RemoveEmptyExtensionsIntentionPass.swift; sourceTree = ""; }; - OBJ_1130 /* PlusBlockStartState.swift */ = {isa = PBXFileReference; path = PlusBlockStartState.swift; sourceTree = ""; }; - OBJ_1131 /* PlusLoopbackState.swift */ = {isa = PBXFileReference; path = PlusLoopbackState.swift; sourceTree = ""; }; - OBJ_1132 /* PrecedencePredicateTransition.swift */ = {isa = PBXFileReference; path = PrecedencePredicateTransition.swift; sourceTree = ""; }; - OBJ_1133 /* PredicateEvalInfo.swift */ = {isa = PBXFileReference; path = PredicateEvalInfo.swift; sourceTree = ""; }; - OBJ_1134 /* PredicateTransition.swift */ = {isa = PBXFileReference; path = PredicateTransition.swift; sourceTree = ""; }; - OBJ_1135 /* PredictionContext.swift */ = {isa = PBXFileReference; path = PredictionContext.swift; sourceTree = ""; }; - OBJ_1136 /* PredictionContextCache.swift */ = {isa = PBXFileReference; path = PredictionContextCache.swift; sourceTree = ""; }; - OBJ_1137 /* PredictionMode.swift */ = {isa = PBXFileReference; path = PredictionMode.swift; sourceTree = ""; }; - OBJ_1138 /* ProfilingATNSimulator.swift */ = {isa = PBXFileReference; path = ProfilingATNSimulator.swift; sourceTree = ""; }; - OBJ_1139 /* RangeTransition.swift */ = {isa = PBXFileReference; path = RangeTransition.swift; sourceTree = ""; }; - OBJ_1140 /* RuleStartState.swift */ = {isa = PBXFileReference; path = RuleStartState.swift; sourceTree = ""; }; - OBJ_1141 /* RuleStopState.swift */ = {isa = PBXFileReference; path = RuleStopState.swift; sourceTree = ""; }; - OBJ_1142 /* RuleTransition.swift */ = {isa = PBXFileReference; path = RuleTransition.swift; sourceTree = ""; }; - OBJ_1143 /* SemanticContext.swift */ = {isa = PBXFileReference; path = SemanticContext.swift; sourceTree = ""; }; - OBJ_1144 /* SetTransition.swift */ = {isa = PBXFileReference; path = SetTransition.swift; sourceTree = ""; }; - OBJ_1145 /* SingletonPredictionContext.swift */ = {isa = PBXFileReference; path = SingletonPredictionContext.swift; sourceTree = ""; }; - OBJ_1146 /* StarBlockStartState.swift */ = {isa = PBXFileReference; path = StarBlockStartState.swift; sourceTree = ""; }; - OBJ_1147 /* StarLoopEntryState.swift */ = {isa = PBXFileReference; path = StarLoopEntryState.swift; sourceTree = ""; }; - OBJ_1148 /* StarLoopbackState.swift */ = {isa = PBXFileReference; path = StarLoopbackState.swift; sourceTree = ""; }; - OBJ_1149 /* TokensStartState.swift */ = {isa = PBXFileReference; path = TokensStartState.swift; sourceTree = ""; }; + OBJ_1130 /* ANTLRErrorListener.swift */ = {isa = PBXFileReference; path = ANTLRErrorListener.swift; sourceTree = ""; }; + OBJ_1131 /* ANTLRErrorStrategy.swift */ = {isa = PBXFileReference; path = ANTLRErrorStrategy.swift; sourceTree = ""; }; + OBJ_1132 /* ANTLRFileStream.swift */ = {isa = PBXFileReference; path = ANTLRFileStream.swift; sourceTree = ""; }; + OBJ_1133 /* ANTLRInputStream.swift */ = {isa = PBXFileReference; path = ANTLRInputStream.swift; sourceTree = ""; }; + OBJ_1134 /* BailErrorStrategy.swift */ = {isa = PBXFileReference; path = BailErrorStrategy.swift; sourceTree = ""; }; + OBJ_1135 /* BaseErrorListener.swift */ = {isa = PBXFileReference; path = BaseErrorListener.swift; sourceTree = ""; }; + OBJ_1136 /* BufferedTokenStream.swift */ = {isa = PBXFileReference; path = BufferedTokenStream.swift; sourceTree = ""; }; + OBJ_1137 /* CharStream.swift */ = {isa = PBXFileReference; path = CharStream.swift; sourceTree = ""; }; + OBJ_1138 /* CommonToken.swift */ = {isa = PBXFileReference; path = CommonToken.swift; sourceTree = ""; }; + OBJ_1139 /* CommonTokenFactory.swift */ = {isa = PBXFileReference; path = CommonTokenFactory.swift; sourceTree = ""; }; + OBJ_1140 /* CommonTokenStream.swift */ = {isa = PBXFileReference; path = CommonTokenStream.swift; sourceTree = ""; }; + OBJ_1141 /* ConsoleErrorListener.swift */ = {isa = PBXFileReference; path = ConsoleErrorListener.swift; sourceTree = ""; }; + OBJ_1142 /* DefaultErrorStrategy.swift */ = {isa = PBXFileReference; path = DefaultErrorStrategy.swift; sourceTree = ""; }; + OBJ_1143 /* DiagnosticErrorListener.swift */ = {isa = PBXFileReference; path = DiagnosticErrorListener.swift; sourceTree = ""; }; + OBJ_1144 /* FailedPredicateException.swift */ = {isa = PBXFileReference; path = FailedPredicateException.swift; sourceTree = ""; }; + OBJ_1145 /* InputMismatchException.swift */ = {isa = PBXFileReference; path = InputMismatchException.swift; sourceTree = ""; }; + OBJ_1146 /* IntStream.swift */ = {isa = PBXFileReference; path = IntStream.swift; sourceTree = ""; }; + OBJ_1147 /* InterpreterRuleContext.swift */ = {isa = PBXFileReference; path = InterpreterRuleContext.swift; sourceTree = ""; }; + OBJ_1148 /* Lexer.swift */ = {isa = PBXFileReference; path = Lexer.swift; sourceTree = ""; }; + OBJ_1149 /* LexerInterpreter.swift */ = {isa = PBXFileReference; path = LexerInterpreter.swift; sourceTree = ""; }; OBJ_115 /* ReturnStatementVisitor.swift */ = {isa = PBXFileReference; path = ReturnStatementVisitor.swift; sourceTree = ""; }; - OBJ_1150 /* Transition.swift */ = {isa = PBXFileReference; path = Transition.swift; sourceTree = ""; }; - OBJ_1151 /* WildcardTransition.swift */ = {isa = PBXFileReference; path = WildcardTransition.swift; sourceTree = ""; }; - OBJ_1153 /* DFA.swift */ = {isa = PBXFileReference; path = DFA.swift; sourceTree = ""; }; - OBJ_1154 /* DFASerializer.swift */ = {isa = PBXFileReference; path = DFASerializer.swift; sourceTree = ""; }; - OBJ_1155 /* DFAState.swift */ = {isa = PBXFileReference; path = DFAState.swift; sourceTree = ""; }; - OBJ_1156 /* LexerDFASerializer.swift */ = {isa = PBXFileReference; path = LexerDFASerializer.swift; sourceTree = ""; }; - OBJ_1158 /* BitSet.swift */ = {isa = PBXFileReference; path = BitSet.swift; sourceTree = ""; }; - OBJ_1159 /* DoubleKeyMap.swift */ = {isa = PBXFileReference; path = DoubleKeyMap.swift; sourceTree = ""; }; - OBJ_1160 /* IntSet.swift */ = {isa = PBXFileReference; path = IntSet.swift; sourceTree = ""; }; - OBJ_1161 /* InterpreterDataReader.swift */ = {isa = PBXFileReference; path = InterpreterDataReader.swift; sourceTree = ""; }; - OBJ_1162 /* Interval.swift */ = {isa = PBXFileReference; path = Interval.swift; sourceTree = ""; }; - OBJ_1163 /* IntervalSet.swift */ = {isa = PBXFileReference; path = IntervalSet.swift; sourceTree = ""; }; - OBJ_1164 /* MultiMap.swift */ = {isa = PBXFileReference; path = MultiMap.swift; sourceTree = ""; }; - OBJ_1165 /* MurmurHash.swift */ = {isa = PBXFileReference; path = MurmurHash.swift; sourceTree = ""; }; - OBJ_1166 /* Utils.swift */ = {isa = PBXFileReference; path = Utils.swift; sourceTree = ""; }; - OBJ_1168 /* ANTLRError.swift */ = {isa = PBXFileReference; path = ANTLRError.swift; sourceTree = ""; }; - OBJ_1169 /* ANTLRException.swift */ = {isa = PBXFileReference; path = ANTLRException.swift; sourceTree = ""; }; + OBJ_1150 /* LexerNoViableAltException.swift */ = {isa = PBXFileReference; path = LexerNoViableAltException.swift; sourceTree = ""; }; + OBJ_1151 /* ListTokenSource.swift */ = {isa = PBXFileReference; path = ListTokenSource.swift; sourceTree = ""; }; + OBJ_1152 /* NoViableAltException.swift */ = {isa = PBXFileReference; path = NoViableAltException.swift; sourceTree = ""; }; + OBJ_1153 /* Parser.swift */ = {isa = PBXFileReference; path = Parser.swift; sourceTree = ""; }; + OBJ_1154 /* ParserInterpreter.swift */ = {isa = PBXFileReference; path = ParserInterpreter.swift; sourceTree = ""; }; + OBJ_1155 /* ParserRuleContext.swift */ = {isa = PBXFileReference; path = ParserRuleContext.swift; sourceTree = ""; }; + OBJ_1156 /* ProxyErrorListener.swift */ = {isa = PBXFileReference; path = ProxyErrorListener.swift; sourceTree = ""; }; + OBJ_1157 /* RecognitionException.swift */ = {isa = PBXFileReference; path = RecognitionException.swift; sourceTree = ""; }; + OBJ_1158 /* Recognizer.swift */ = {isa = PBXFileReference; path = Recognizer.swift; sourceTree = ""; }; + OBJ_1159 /* RuleContext.swift */ = {isa = PBXFileReference; path = RuleContext.swift; sourceTree = ""; }; + OBJ_1160 /* RuntimeMetaData.swift */ = {isa = PBXFileReference; path = RuntimeMetaData.swift; sourceTree = ""; }; + OBJ_1161 /* Token.swift */ = {isa = PBXFileReference; path = Token.swift; sourceTree = ""; }; + OBJ_1162 /* TokenFactory.swift */ = {isa = PBXFileReference; path = TokenFactory.swift; sourceTree = ""; }; + OBJ_1163 /* TokenSource.swift */ = {isa = PBXFileReference; path = TokenSource.swift; sourceTree = ""; }; + OBJ_1164 /* TokenStream.swift */ = {isa = PBXFileReference; path = TokenStream.swift; sourceTree = ""; }; + OBJ_1165 /* TokenStreamRewriter.swift */ = {isa = PBXFileReference; path = TokenStreamRewriter.swift; sourceTree = ""; }; + OBJ_1166 /* UnbufferedCharStream.swift */ = {isa = PBXFileReference; path = UnbufferedCharStream.swift; sourceTree = ""; }; + OBJ_1167 /* UnbufferedTokenStream.swift */ = {isa = PBXFileReference; path = UnbufferedTokenStream.swift; sourceTree = ""; }; + OBJ_1168 /* VocabularySingle.swift */ = {isa = PBXFileReference; path = VocabularySingle.swift; sourceTree = ""; }; + OBJ_1169 /* WritableToken.swift */ = {isa = PBXFileReference; path = WritableToken.swift; sourceTree = ""; }; OBJ_117 /* ArrayIntentionPassSource.swift */ = {isa = PBXFileReference; path = ArrayIntentionPassSource.swift; sourceTree = ""; }; - OBJ_1171 /* ArrayExtension.swift */ = {isa = PBXFileReference; path = ArrayExtension.swift; sourceTree = ""; }; - OBJ_1172 /* CharacterExtension.swift */ = {isa = PBXFileReference; path = CharacterExtension.swift; sourceTree = ""; }; - OBJ_1173 /* IntStreamExtension.swift */ = {isa = PBXFileReference; path = IntStreamExtension.swift; sourceTree = ""; }; - OBJ_1174 /* StringExtension.swift */ = {isa = PBXFileReference; path = StringExtension.swift; sourceTree = ""; }; - OBJ_1175 /* TokenExtension.swift */ = {isa = PBXFileReference; path = TokenExtension.swift; sourceTree = ""; }; - OBJ_1176 /* UUIDExtension.swift */ = {isa = PBXFileReference; path = UUIDExtension.swift; sourceTree = ""; }; - OBJ_1178 /* AtomicInt.swift */ = {isa = PBXFileReference; path = AtomicInt.swift; sourceTree = ""; }; - OBJ_1179 /* CommonUtil.swift */ = {isa = PBXFileReference; path = CommonUtil.swift; sourceTree = ""; }; + OBJ_1171 /* ATN.swift */ = {isa = PBXFileReference; path = ATN.swift; sourceTree = ""; }; + OBJ_1172 /* ATNConfig.swift */ = {isa = PBXFileReference; path = ATNConfig.swift; sourceTree = ""; }; + OBJ_1173 /* ATNConfigSet.swift */ = {isa = PBXFileReference; path = ATNConfigSet.swift; sourceTree = ""; }; + OBJ_1174 /* ATNDeserializationOptions.swift */ = {isa = PBXFileReference; path = ATNDeserializationOptions.swift; sourceTree = ""; }; + OBJ_1175 /* ATNDeserializer.swift */ = {isa = PBXFileReference; path = ATNDeserializer.swift; sourceTree = ""; }; + OBJ_1176 /* ATNSimulator.swift */ = {isa = PBXFileReference; path = ATNSimulator.swift; sourceTree = ""; }; + OBJ_1177 /* ATNState.swift */ = {isa = PBXFileReference; path = ATNState.swift; sourceTree = ""; }; + OBJ_1178 /* ATNType.swift */ = {isa = PBXFileReference; path = ATNType.swift; sourceTree = ""; }; + OBJ_1179 /* AbstractPredicateTransition.swift */ = {isa = PBXFileReference; path = AbstractPredicateTransition.swift; sourceTree = ""; }; OBJ_118 /* StoredPropertyToNominalTypesIntentionPass.swift */ = {isa = PBXFileReference; path = StoredPropertyToNominalTypesIntentionPass.swift; sourceTree = ""; }; - OBJ_1180 /* Mutex.swift */ = {isa = PBXFileReference; path = Mutex.swift; sourceTree = ""; }; - OBJ_1181 /* Stack.swift */ = {isa = PBXFileReference; path = Stack.swift; sourceTree = ""; }; - OBJ_1183 /* AbstractParseTreeVisitor.swift */ = {isa = PBXFileReference; path = AbstractParseTreeVisitor.swift; sourceTree = ""; }; - OBJ_1184 /* ErrorNode.swift */ = {isa = PBXFileReference; path = ErrorNode.swift; sourceTree = ""; }; - OBJ_1185 /* ParseTree.swift */ = {isa = PBXFileReference; path = ParseTree.swift; sourceTree = ""; }; - OBJ_1186 /* ParseTreeListener.swift */ = {isa = PBXFileReference; path = ParseTreeListener.swift; sourceTree = ""; }; - OBJ_1187 /* ParseTreeProperty.swift */ = {isa = PBXFileReference; path = ParseTreeProperty.swift; sourceTree = ""; }; - OBJ_1188 /* ParseTreeVisitor.swift */ = {isa = PBXFileReference; path = ParseTreeVisitor.swift; sourceTree = ""; }; - OBJ_1189 /* ParseTreeWalker.swift */ = {isa = PBXFileReference; path = ParseTreeWalker.swift; sourceTree = ""; }; + OBJ_1180 /* ActionTransition.swift */ = {isa = PBXFileReference; path = ActionTransition.swift; sourceTree = ""; }; + OBJ_1181 /* AmbiguityInfo.swift */ = {isa = PBXFileReference; path = AmbiguityInfo.swift; sourceTree = ""; }; + OBJ_1182 /* ArrayPredictionContext.swift */ = {isa = PBXFileReference; path = ArrayPredictionContext.swift; sourceTree = ""; }; + OBJ_1183 /* AtomTransition.swift */ = {isa = PBXFileReference; path = AtomTransition.swift; sourceTree = ""; }; + OBJ_1184 /* BasicBlockStartState.swift */ = {isa = PBXFileReference; path = BasicBlockStartState.swift; sourceTree = ""; }; + OBJ_1185 /* BasicState.swift */ = {isa = PBXFileReference; path = BasicState.swift; sourceTree = ""; }; + OBJ_1186 /* BlockEndState.swift */ = {isa = PBXFileReference; path = BlockEndState.swift; sourceTree = ""; }; + OBJ_1187 /* BlockStartState.swift */ = {isa = PBXFileReference; path = BlockStartState.swift; sourceTree = ""; }; + OBJ_1188 /* ContextSensitivityInfo.swift */ = {isa = PBXFileReference; path = ContextSensitivityInfo.swift; sourceTree = ""; }; + OBJ_1189 /* DecisionEventInfo.swift */ = {isa = PBXFileReference; path = DecisionEventInfo.swift; sourceTree = ""; }; OBJ_119 /* SubscriptDeclarationIntentionPass.swift */ = {isa = PBXFileReference; path = SubscriptDeclarationIntentionPass.swift; sourceTree = ""; }; - OBJ_1190 /* RuleNode.swift */ = {isa = PBXFileReference; path = RuleNode.swift; sourceTree = ""; }; - OBJ_1191 /* SyntaxTree.swift */ = {isa = PBXFileReference; path = SyntaxTree.swift; sourceTree = ""; }; - OBJ_1192 /* TerminalNode.swift */ = {isa = PBXFileReference; path = TerminalNode.swift; sourceTree = ""; }; - OBJ_1193 /* TerminalNodeImpl.swift */ = {isa = PBXFileReference; path = TerminalNodeImpl.swift; sourceTree = ""; }; - OBJ_1194 /* Tree.swift */ = {isa = PBXFileReference; path = Tree.swift; sourceTree = ""; }; - OBJ_1195 /* Trees.swift */ = {isa = PBXFileReference; path = Trees.swift; sourceTree = ""; }; - OBJ_1197 /* Chunk.swift */ = {isa = PBXFileReference; path = Chunk.swift; sourceTree = ""; }; - OBJ_1198 /* ParseTreeMatch.swift */ = {isa = PBXFileReference; path = ParseTreeMatch.swift; sourceTree = ""; }; - OBJ_1199 /* ParseTreePattern.swift */ = {isa = PBXFileReference; path = ParseTreePattern.swift; sourceTree = ""; }; + OBJ_1190 /* DecisionInfo.swift */ = {isa = PBXFileReference; path = DecisionInfo.swift; sourceTree = ""; }; + OBJ_1191 /* DecisionState.swift */ = {isa = PBXFileReference; path = DecisionState.swift; sourceTree = ""; }; + OBJ_1192 /* DefaultATNConfig.swift */ = {isa = PBXFileReference; path = DefaultATNConfig.swift; sourceTree = ""; }; + OBJ_1193 /* EmptyPredictionContext.swift */ = {isa = PBXFileReference; path = EmptyPredictionContext.swift; sourceTree = ""; }; + OBJ_1194 /* EpsilonTransition.swift */ = {isa = PBXFileReference; path = EpsilonTransition.swift; sourceTree = ""; }; + OBJ_1195 /* ErrorInfo.swift */ = {isa = PBXFileReference; path = ErrorInfo.swift; sourceTree = ""; }; + OBJ_1196 /* LL1Analyzer.swift */ = {isa = PBXFileReference; path = LL1Analyzer.swift; sourceTree = ""; }; + OBJ_1197 /* LexerATNConfig.swift */ = {isa = PBXFileReference; path = LexerATNConfig.swift; sourceTree = ""; }; + OBJ_1198 /* LexerATNSimulator.swift */ = {isa = PBXFileReference; path = LexerATNSimulator.swift; sourceTree = ""; }; + OBJ_1199 /* LexerAction.swift */ = {isa = PBXFileReference; path = LexerAction.swift; sourceTree = ""; }; OBJ_12 /* CallGraph.swift */ = {isa = PBXFileReference; path = CallGraph.swift; sourceTree = ""; }; OBJ_120 /* SwiftifyMethodSignaturesIntentionPass.swift */ = {isa = PBXFileReference; path = SwiftifyMethodSignaturesIntentionPass.swift; sourceTree = ""; }; - OBJ_1200 /* ParseTreePatternMatcher.swift */ = {isa = PBXFileReference; path = ParseTreePatternMatcher.swift; sourceTree = ""; }; - OBJ_1201 /* RuleTagToken.swift */ = {isa = PBXFileReference; path = RuleTagToken.swift; sourceTree = ""; }; - OBJ_1202 /* TagChunk.swift */ = {isa = PBXFileReference; path = TagChunk.swift; sourceTree = ""; }; - OBJ_1203 /* TextChunk.swift */ = {isa = PBXFileReference; path = TextChunk.swift; sourceTree = ""; }; - OBJ_1204 /* TokenTagToken.swift */ = {isa = PBXFileReference; path = TokenTagToken.swift; sourceTree = ""; }; - OBJ_1206 /* atomic.c */ = {isa = PBXFileReference; path = atomic.c; sourceTree = ""; }; - OBJ_1208 /* _CAntlrShims.h */ = {isa = PBXFileReference; path = _CAntlrShims.h; sourceTree = ""; }; - OBJ_1209 /* module.modulemap */ = {isa = PBXFileReference; name = module.modulemap; path = "/home/luiz/dev/SwiftRewriter/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; sourceTree = ""; }; + OBJ_1200 /* LexerActionExecutor.swift */ = {isa = PBXFileReference; path = LexerActionExecutor.swift; sourceTree = ""; }; + OBJ_1201 /* LexerActionType.swift */ = {isa = PBXFileReference; path = LexerActionType.swift; sourceTree = ""; }; + OBJ_1202 /* LexerChannelAction.swift */ = {isa = PBXFileReference; path = LexerChannelAction.swift; sourceTree = ""; }; + OBJ_1203 /* LexerCustomAction.swift */ = {isa = PBXFileReference; path = LexerCustomAction.swift; sourceTree = ""; }; + OBJ_1204 /* LexerIndexedCustomAction.swift */ = {isa = PBXFileReference; path = LexerIndexedCustomAction.swift; sourceTree = ""; }; + OBJ_1205 /* LexerModeAction.swift */ = {isa = PBXFileReference; path = LexerModeAction.swift; sourceTree = ""; }; + OBJ_1206 /* LexerMoreAction.swift */ = {isa = PBXFileReference; path = LexerMoreAction.swift; sourceTree = ""; }; + OBJ_1207 /* LexerPopModeAction.swift */ = {isa = PBXFileReference; path = LexerPopModeAction.swift; sourceTree = ""; }; + OBJ_1208 /* LexerPushModeAction.swift */ = {isa = PBXFileReference; path = LexerPushModeAction.swift; sourceTree = ""; }; + OBJ_1209 /* LexerSkipAction.swift */ = {isa = PBXFileReference; path = LexerSkipAction.swift; sourceTree = ""; }; OBJ_121 /* TypeMerger.swift */ = {isa = PBXFileReference; path = TypeMerger.swift; sourceTree = ""; }; - OBJ_1210 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = "/home/luiz/dev/SwiftRewriter/.build/checkouts/antlr4-swift/Package.swift"; sourceTree = ""; }; - OBJ_1214 /* BashCompletionsGenerator.swift */ = {isa = PBXFileReference; path = BashCompletionsGenerator.swift; sourceTree = ""; }; - OBJ_1215 /* CompletionsGenerator.swift */ = {isa = PBXFileReference; path = CompletionsGenerator.swift; sourceTree = ""; }; - OBJ_1216 /* FishCompletionsGenerator.swift */ = {isa = PBXFileReference; path = FishCompletionsGenerator.swift; sourceTree = ""; }; - OBJ_1217 /* ZshCompletionsGenerator.swift */ = {isa = PBXFileReference; path = ZshCompletionsGenerator.swift; sourceTree = ""; }; - OBJ_1219 /* Argument.swift */ = {isa = PBXFileReference; path = Argument.swift; sourceTree = ""; }; + OBJ_1210 /* LexerTypeAction.swift */ = {isa = PBXFileReference; path = LexerTypeAction.swift; sourceTree = ""; }; + OBJ_1211 /* LookaheadEventInfo.swift */ = {isa = PBXFileReference; path = LookaheadEventInfo.swift; sourceTree = ""; }; + OBJ_1212 /* LookupATNConfig.swift */ = {isa = PBXFileReference; path = LookupATNConfig.swift; sourceTree = ""; }; + OBJ_1213 /* LookupDictionary.swift */ = {isa = PBXFileReference; path = LookupDictionary.swift; sourceTree = ""; }; + OBJ_1214 /* LoopEndState.swift */ = {isa = PBXFileReference; path = LoopEndState.swift; sourceTree = ""; }; + OBJ_1215 /* NotSetTransition.swift */ = {isa = PBXFileReference; path = NotSetTransition.swift; sourceTree = ""; }; + OBJ_1216 /* ParseInfo.swift */ = {isa = PBXFileReference; path = ParseInfo.swift; sourceTree = ""; }; + OBJ_1217 /* ParserATNSimulator.swift */ = {isa = PBXFileReference; path = ParserATNSimulator.swift; sourceTree = ""; }; + OBJ_1218 /* PlusBlockStartState.swift */ = {isa = PBXFileReference; path = PlusBlockStartState.swift; sourceTree = ""; }; + OBJ_1219 /* PlusLoopbackState.swift */ = {isa = PBXFileReference; path = PlusLoopbackState.swift; sourceTree = ""; }; OBJ_122 /* TypeVisitingIntentionPass.swift */ = {isa = PBXFileReference; path = TypeVisitingIntentionPass.swift; sourceTree = ""; }; - OBJ_1220 /* ArgumentHelp.swift */ = {isa = PBXFileReference; path = ArgumentHelp.swift; sourceTree = ""; }; - OBJ_1221 /* ArgumentVisibility.swift */ = {isa = PBXFileReference; path = ArgumentVisibility.swift; sourceTree = ""; }; - OBJ_1222 /* CompletionKind.swift */ = {isa = PBXFileReference; path = CompletionKind.swift; sourceTree = ""; }; - OBJ_1223 /* Errors.swift */ = {isa = PBXFileReference; path = Errors.swift; sourceTree = ""; }; - OBJ_1224 /* Flag.swift */ = {isa = PBXFileReference; path = Flag.swift; sourceTree = ""; }; - OBJ_1225 /* NameSpecification.swift */ = {isa = PBXFileReference; path = NameSpecification.swift; sourceTree = ""; }; - OBJ_1226 /* Option.swift */ = {isa = PBXFileReference; path = Option.swift; sourceTree = ""; }; - OBJ_1227 /* OptionGroup.swift */ = {isa = PBXFileReference; path = OptionGroup.swift; sourceTree = ""; }; - OBJ_1229 /* AsyncParsableCommand.swift */ = {isa = PBXFileReference; path = AsyncParsableCommand.swift; sourceTree = ""; }; + OBJ_1220 /* PrecedencePredicateTransition.swift */ = {isa = PBXFileReference; path = PrecedencePredicateTransition.swift; sourceTree = ""; }; + OBJ_1221 /* PredicateEvalInfo.swift */ = {isa = PBXFileReference; path = PredicateEvalInfo.swift; sourceTree = ""; }; + OBJ_1222 /* PredicateTransition.swift */ = {isa = PBXFileReference; path = PredicateTransition.swift; sourceTree = ""; }; + OBJ_1223 /* PredictionContext.swift */ = {isa = PBXFileReference; path = PredictionContext.swift; sourceTree = ""; }; + OBJ_1224 /* PredictionContextCache.swift */ = {isa = PBXFileReference; path = PredictionContextCache.swift; sourceTree = ""; }; + OBJ_1225 /* PredictionMode.swift */ = {isa = PBXFileReference; path = PredictionMode.swift; sourceTree = ""; }; + OBJ_1226 /* ProfilingATNSimulator.swift */ = {isa = PBXFileReference; path = ProfilingATNSimulator.swift; sourceTree = ""; }; + OBJ_1227 /* RangeTransition.swift */ = {isa = PBXFileReference; path = RangeTransition.swift; sourceTree = ""; }; + OBJ_1228 /* RuleStartState.swift */ = {isa = PBXFileReference; path = RuleStartState.swift; sourceTree = ""; }; + OBJ_1229 /* RuleStopState.swift */ = {isa = PBXFileReference; path = RuleStopState.swift; sourceTree = ""; }; OBJ_123 /* UIKitCorrectorIntentionPass.swift */ = {isa = PBXFileReference; path = UIKitCorrectorIntentionPass.swift; sourceTree = ""; }; - OBJ_1230 /* CommandConfiguration.swift */ = {isa = PBXFileReference; path = CommandConfiguration.swift; sourceTree = ""; }; - OBJ_1231 /* EnumerableFlag.swift */ = {isa = PBXFileReference; path = EnumerableFlag.swift; sourceTree = ""; }; - OBJ_1232 /* ExpressibleByArgument.swift */ = {isa = PBXFileReference; path = ExpressibleByArgument.swift; sourceTree = ""; }; - OBJ_1233 /* ParsableArguments.swift */ = {isa = PBXFileReference; path = ParsableArguments.swift; sourceTree = ""; }; - OBJ_1234 /* ParsableArgumentsValidation.swift */ = {isa = PBXFileReference; path = ParsableArgumentsValidation.swift; sourceTree = ""; }; - OBJ_1235 /* ParsableCommand.swift */ = {isa = PBXFileReference; path = ParsableCommand.swift; sourceTree = ""; }; - OBJ_1237 /* ArgumentDecoder.swift */ = {isa = PBXFileReference; path = ArgumentDecoder.swift; sourceTree = ""; }; - OBJ_1238 /* ArgumentDefinition.swift */ = {isa = PBXFileReference; path = ArgumentDefinition.swift; sourceTree = ""; }; - OBJ_1239 /* ArgumentSet.swift */ = {isa = PBXFileReference; path = ArgumentSet.swift; sourceTree = ""; }; - OBJ_1240 /* CommandParser.swift */ = {isa = PBXFileReference; path = CommandParser.swift; sourceTree = ""; }; - OBJ_1241 /* InputOrigin.swift */ = {isa = PBXFileReference; path = InputOrigin.swift; sourceTree = ""; }; - OBJ_1242 /* Name.swift */ = {isa = PBXFileReference; path = Name.swift; sourceTree = ""; }; - OBJ_1243 /* Parsed.swift */ = {isa = PBXFileReference; path = Parsed.swift; sourceTree = ""; }; - OBJ_1244 /* ParsedValues.swift */ = {isa = PBXFileReference; path = ParsedValues.swift; sourceTree = ""; }; - OBJ_1245 /* ParserError.swift */ = {isa = PBXFileReference; path = ParserError.swift; sourceTree = ""; }; - OBJ_1246 /* SplitArguments.swift */ = {isa = PBXFileReference; path = SplitArguments.swift; sourceTree = ""; }; - OBJ_1248 /* DumpHelpGenerator.swift */ = {isa = PBXFileReference; path = DumpHelpGenerator.swift; sourceTree = ""; }; - OBJ_1249 /* HelpCommand.swift */ = {isa = PBXFileReference; path = HelpCommand.swift; sourceTree = ""; }; + OBJ_1230 /* RuleTransition.swift */ = {isa = PBXFileReference; path = RuleTransition.swift; sourceTree = ""; }; + OBJ_1231 /* SemanticContext.swift */ = {isa = PBXFileReference; path = SemanticContext.swift; sourceTree = ""; }; + OBJ_1232 /* SetTransition.swift */ = {isa = PBXFileReference; path = SetTransition.swift; sourceTree = ""; }; + OBJ_1233 /* SingletonPredictionContext.swift */ = {isa = PBXFileReference; path = SingletonPredictionContext.swift; sourceTree = ""; }; + OBJ_1234 /* StarBlockStartState.swift */ = {isa = PBXFileReference; path = StarBlockStartState.swift; sourceTree = ""; }; + OBJ_1235 /* StarLoopEntryState.swift */ = {isa = PBXFileReference; path = StarLoopEntryState.swift; sourceTree = ""; }; + OBJ_1236 /* StarLoopbackState.swift */ = {isa = PBXFileReference; path = StarLoopbackState.swift; sourceTree = ""; }; + OBJ_1237 /* TokensStartState.swift */ = {isa = PBXFileReference; path = TokensStartState.swift; sourceTree = ""; }; + OBJ_1238 /* Transition.swift */ = {isa = PBXFileReference; path = Transition.swift; sourceTree = ""; }; + OBJ_1239 /* WildcardTransition.swift */ = {isa = PBXFileReference; path = WildcardTransition.swift; sourceTree = ""; }; + OBJ_1241 /* DFA.swift */ = {isa = PBXFileReference; path = DFA.swift; sourceTree = ""; }; + OBJ_1242 /* DFASerializer.swift */ = {isa = PBXFileReference; path = DFASerializer.swift; sourceTree = ""; }; + OBJ_1243 /* DFAState.swift */ = {isa = PBXFileReference; path = DFAState.swift; sourceTree = ""; }; + OBJ_1244 /* LexerDFASerializer.swift */ = {isa = PBXFileReference; path = LexerDFASerializer.swift; sourceTree = ""; }; + OBJ_1246 /* BitSet.swift */ = {isa = PBXFileReference; path = BitSet.swift; sourceTree = ""; }; + OBJ_1247 /* DoubleKeyMap.swift */ = {isa = PBXFileReference; path = DoubleKeyMap.swift; sourceTree = ""; }; + OBJ_1248 /* IntSet.swift */ = {isa = PBXFileReference; path = IntSet.swift; sourceTree = ""; }; + OBJ_1249 /* InterpreterDataReader.swift */ = {isa = PBXFileReference; path = InterpreterDataReader.swift; sourceTree = ""; }; OBJ_125 /* BaseClassIntention.swift */ = {isa = PBXFileReference; path = BaseClassIntention.swift; sourceTree = ""; }; - OBJ_1250 /* HelpGenerator.swift */ = {isa = PBXFileReference; path = HelpGenerator.swift; sourceTree = ""; }; - OBJ_1251 /* MessageInfo.swift */ = {isa = PBXFileReference; path = MessageInfo.swift; sourceTree = ""; }; - OBJ_1252 /* UsageGenerator.swift */ = {isa = PBXFileReference; path = UsageGenerator.swift; sourceTree = ""; }; - OBJ_1254 /* CollectionExtensions.swift */ = {isa = PBXFileReference; path = CollectionExtensions.swift; sourceTree = ""; }; - OBJ_1255 /* SequenceExtensions.swift */ = {isa = PBXFileReference; path = SequenceExtensions.swift; sourceTree = ""; }; - OBJ_1256 /* StringExtensions.swift */ = {isa = PBXFileReference; path = StringExtensions.swift; sourceTree = ""; }; - OBJ_1257 /* Tree.swift */ = {isa = PBXFileReference; path = Tree.swift; sourceTree = ""; }; - OBJ_1259 /* ToolInfo.swift */ = {isa = PBXFileReference; path = ToolInfo.swift; sourceTree = ""; }; + OBJ_1250 /* Interval.swift */ = {isa = PBXFileReference; path = Interval.swift; sourceTree = ""; }; + OBJ_1251 /* IntervalSet.swift */ = {isa = PBXFileReference; path = IntervalSet.swift; sourceTree = ""; }; + OBJ_1252 /* MultiMap.swift */ = {isa = PBXFileReference; path = MultiMap.swift; sourceTree = ""; }; + OBJ_1253 /* MurmurHash.swift */ = {isa = PBXFileReference; path = MurmurHash.swift; sourceTree = ""; }; + OBJ_1254 /* Utils.swift */ = {isa = PBXFileReference; path = Utils.swift; sourceTree = ""; }; + OBJ_1256 /* ANTLRError.swift */ = {isa = PBXFileReference; path = ANTLRError.swift; sourceTree = ""; }; + OBJ_1257 /* ANTLRException.swift */ = {isa = PBXFileReference; path = ANTLRException.swift; sourceTree = ""; }; + OBJ_1259 /* ArrayExtension.swift */ = {isa = PBXFileReference; path = ArrayExtension.swift; sourceTree = ""; }; OBJ_126 /* FileLevelIntention.swift */ = {isa = PBXFileReference; path = FileLevelIntention.swift; sourceTree = ""; }; - OBJ_1262 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = "/home/luiz/dev/SwiftRewriter/.build/checkouts/swift-argument-parser/Package.swift"; sourceTree = ""; }; - OBJ_1265 /* GrammarRules+Operators.swift */ = {isa = PBXFileReference; path = "GrammarRules+Operators.swift"; sourceTree = ""; }; - OBJ_1266 /* GrammarRules.swift */ = {isa = PBXFileReference; path = GrammarRules.swift; sourceTree = ""; }; - OBJ_1267 /* Lexer+Advance.swift */ = {isa = PBXFileReference; path = "Lexer+Advance.swift"; sourceTree = ""; }; - OBJ_1268 /* Lexer+AdvancedParsing.swift */ = {isa = PBXFileReference; path = "Lexer+AdvancedParsing.swift"; sourceTree = ""; }; - OBJ_1269 /* Lexer+Consume.swift */ = {isa = PBXFileReference; path = "Lexer+Consume.swift"; sourceTree = ""; }; + OBJ_1260 /* CharacterExtension.swift */ = {isa = PBXFileReference; path = CharacterExtension.swift; sourceTree = ""; }; + OBJ_1261 /* IntStreamExtension.swift */ = {isa = PBXFileReference; path = IntStreamExtension.swift; sourceTree = ""; }; + OBJ_1262 /* StringExtension.swift */ = {isa = PBXFileReference; path = StringExtension.swift; sourceTree = ""; }; + OBJ_1263 /* TokenExtension.swift */ = {isa = PBXFileReference; path = TokenExtension.swift; sourceTree = ""; }; + OBJ_1264 /* UUIDExtension.swift */ = {isa = PBXFileReference; path = UUIDExtension.swift; sourceTree = ""; }; + OBJ_1266 /* AtomicInt.swift */ = {isa = PBXFileReference; path = AtomicInt.swift; sourceTree = ""; }; + OBJ_1267 /* CommonUtil.swift */ = {isa = PBXFileReference; path = CommonUtil.swift; sourceTree = ""; }; + OBJ_1268 /* Mutex.swift */ = {isa = PBXFileReference; path = Mutex.swift; sourceTree = ""; }; + OBJ_1269 /* Stack.swift */ = {isa = PBXFileReference; path = Stack.swift; sourceTree = ""; }; OBJ_127 /* FromSourceIntention.swift */ = {isa = PBXFileReference; path = FromSourceIntention.swift; sourceTree = ""; }; - OBJ_1270 /* Lexer.swift */ = {isa = PBXFileReference; path = Lexer.swift; sourceTree = ""; }; - OBJ_1271 /* TokenProtocol.swift */ = {isa = PBXFileReference; path = TokenProtocol.swift; sourceTree = ""; }; - OBJ_1272 /* TokenizerLexer.swift */ = {isa = PBXFileReference; path = TokenizerLexer.swift; sourceTree = ""; }; - OBJ_1275 /* TypeLexers.swift */ = {isa = PBXFileReference; path = TypeLexers.swift; sourceTree = ""; }; - OBJ_1276 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = /home/luiz/dev/SwiftRewriter/.build/checkouts/MiniLexer/Package.swift; sourceTree = ""; }; + OBJ_1271 /* AbstractParseTreeVisitor.swift */ = {isa = PBXFileReference; path = AbstractParseTreeVisitor.swift; sourceTree = ""; }; + OBJ_1272 /* ErrorNode.swift */ = {isa = PBXFileReference; path = ErrorNode.swift; sourceTree = ""; }; + OBJ_1273 /* ParseTree.swift */ = {isa = PBXFileReference; path = ParseTree.swift; sourceTree = ""; }; + OBJ_1274 /* ParseTreeListener.swift */ = {isa = PBXFileReference; path = ParseTreeListener.swift; sourceTree = ""; }; + OBJ_1275 /* ParseTreeProperty.swift */ = {isa = PBXFileReference; path = ParseTreeProperty.swift; sourceTree = ""; }; + OBJ_1276 /* ParseTreeVisitor.swift */ = {isa = PBXFileReference; path = ParseTreeVisitor.swift; sourceTree = ""; }; + OBJ_1277 /* ParseTreeWalker.swift */ = {isa = PBXFileReference; path = ParseTreeWalker.swift; sourceTree = ""; }; + OBJ_1278 /* RuleNode.swift */ = {isa = PBXFileReference; path = RuleNode.swift; sourceTree = ""; }; + OBJ_1279 /* SyntaxTree.swift */ = {isa = PBXFileReference; path = SyntaxTree.swift; sourceTree = ""; }; OBJ_128 /* FunctionBodyCarryingIntention.swift */ = {isa = PBXFileReference; path = FunctionBodyCarryingIntention.swift; sourceTree = ""; }; + OBJ_1280 /* TerminalNode.swift */ = {isa = PBXFileReference; path = TerminalNode.swift; sourceTree = ""; }; + OBJ_1281 /* TerminalNodeImpl.swift */ = {isa = PBXFileReference; path = TerminalNodeImpl.swift; sourceTree = ""; }; + OBJ_1282 /* Tree.swift */ = {isa = PBXFileReference; path = Tree.swift; sourceTree = ""; }; + OBJ_1283 /* Trees.swift */ = {isa = PBXFileReference; path = Trees.swift; sourceTree = ""; }; + OBJ_1285 /* Chunk.swift */ = {isa = PBXFileReference; path = Chunk.swift; sourceTree = ""; }; + OBJ_1286 /* ParseTreeMatch.swift */ = {isa = PBXFileReference; path = ParseTreeMatch.swift; sourceTree = ""; }; + OBJ_1287 /* ParseTreePattern.swift */ = {isa = PBXFileReference; path = ParseTreePattern.swift; sourceTree = ""; }; + OBJ_1288 /* ParseTreePatternMatcher.swift */ = {isa = PBXFileReference; path = ParseTreePatternMatcher.swift; sourceTree = ""; }; + OBJ_1289 /* RuleTagToken.swift */ = {isa = PBXFileReference; path = RuleTagToken.swift; sourceTree = ""; }; OBJ_129 /* FunctionBodyQueue.swift */ = {isa = PBXFileReference; path = FunctionBodyQueue.swift; sourceTree = ""; }; + OBJ_1290 /* TagChunk.swift */ = {isa = PBXFileReference; path = TagChunk.swift; sourceTree = ""; }; + OBJ_1291 /* TextChunk.swift */ = {isa = PBXFileReference; path = TextChunk.swift; sourceTree = ""; }; + OBJ_1292 /* TokenTagToken.swift */ = {isa = PBXFileReference; path = TokenTagToken.swift; sourceTree = ""; }; + OBJ_1294 /* atomic.c */ = {isa = PBXFileReference; path = atomic.c; sourceTree = ""; }; + OBJ_1296 /* _CAntlrShims.h */ = {isa = PBXFileReference; path = _CAntlrShims.h; sourceTree = ""; }; + OBJ_1297 /* module.modulemap */ = {isa = PBXFileReference; name = module.modulemap; path = "/home/luiz/dev/SwiftRewriter/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; sourceTree = ""; }; + OBJ_1298 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = "/home/luiz/dev/SwiftRewriter/.build/checkouts/antlr4-swift/Package.swift"; sourceTree = ""; }; OBJ_130 /* FunctionIntention.swift */ = {isa = PBXFileReference; path = FunctionIntention.swift; sourceTree = ""; }; + OBJ_1302 /* BashCompletionsGenerator.swift */ = {isa = PBXFileReference; path = BashCompletionsGenerator.swift; sourceTree = ""; }; + OBJ_1303 /* CompletionsGenerator.swift */ = {isa = PBXFileReference; path = CompletionsGenerator.swift; sourceTree = ""; }; + OBJ_1304 /* FishCompletionsGenerator.swift */ = {isa = PBXFileReference; path = FishCompletionsGenerator.swift; sourceTree = ""; }; + OBJ_1305 /* ZshCompletionsGenerator.swift */ = {isa = PBXFileReference; path = ZshCompletionsGenerator.swift; sourceTree = ""; }; + OBJ_1307 /* Argument.swift */ = {isa = PBXFileReference; path = Argument.swift; sourceTree = ""; }; + OBJ_1308 /* ArgumentHelp.swift */ = {isa = PBXFileReference; path = ArgumentHelp.swift; sourceTree = ""; }; + OBJ_1309 /* ArgumentVisibility.swift */ = {isa = PBXFileReference; path = ArgumentVisibility.swift; sourceTree = ""; }; + OBJ_1310 /* CompletionKind.swift */ = {isa = PBXFileReference; path = CompletionKind.swift; sourceTree = ""; }; + OBJ_1311 /* Errors.swift */ = {isa = PBXFileReference; path = Errors.swift; sourceTree = ""; }; + OBJ_1312 /* Flag.swift */ = {isa = PBXFileReference; path = Flag.swift; sourceTree = ""; }; + OBJ_1313 /* NameSpecification.swift */ = {isa = PBXFileReference; path = NameSpecification.swift; sourceTree = ""; }; + OBJ_1314 /* Option.swift */ = {isa = PBXFileReference; path = Option.swift; sourceTree = ""; }; + OBJ_1315 /* OptionGroup.swift */ = {isa = PBXFileReference; path = OptionGroup.swift; sourceTree = ""; }; + OBJ_1317 /* AsyncParsableCommand.swift */ = {isa = PBXFileReference; path = AsyncParsableCommand.swift; sourceTree = ""; }; + OBJ_1318 /* CommandConfiguration.swift */ = {isa = PBXFileReference; path = CommandConfiguration.swift; sourceTree = ""; }; + OBJ_1319 /* EnumerableFlag.swift */ = {isa = PBXFileReference; path = EnumerableFlag.swift; sourceTree = ""; }; OBJ_132 /* Historic.swift */ = {isa = PBXFileReference; path = Historic.swift; sourceTree = ""; }; + OBJ_1320 /* ExpressibleByArgument.swift */ = {isa = PBXFileReference; path = ExpressibleByArgument.swift; sourceTree = ""; }; + OBJ_1321 /* ParsableArguments.swift */ = {isa = PBXFileReference; path = ParsableArguments.swift; sourceTree = ""; }; + OBJ_1322 /* ParsableArgumentsValidation.swift */ = {isa = PBXFileReference; path = ParsableArgumentsValidation.swift; sourceTree = ""; }; + OBJ_1323 /* ParsableCommand.swift */ = {isa = PBXFileReference; path = ParsableCommand.swift; sourceTree = ""; }; + OBJ_1325 /* ArgumentDecoder.swift */ = {isa = PBXFileReference; path = ArgumentDecoder.swift; sourceTree = ""; }; + OBJ_1326 /* ArgumentDefinition.swift */ = {isa = PBXFileReference; path = ArgumentDefinition.swift; sourceTree = ""; }; + OBJ_1327 /* ArgumentSet.swift */ = {isa = PBXFileReference; path = ArgumentSet.swift; sourceTree = ""; }; + OBJ_1328 /* CommandParser.swift */ = {isa = PBXFileReference; path = CommandParser.swift; sourceTree = ""; }; + OBJ_1329 /* InputOrigin.swift */ = {isa = PBXFileReference; path = InputOrigin.swift; sourceTree = ""; }; OBJ_133 /* IntentionHistory.swift */ = {isa = PBXFileReference; path = IntentionHistory.swift; sourceTree = ""; }; + OBJ_1330 /* Name.swift */ = {isa = PBXFileReference; path = Name.swift; sourceTree = ""; }; + OBJ_1331 /* Parsed.swift */ = {isa = PBXFileReference; path = Parsed.swift; sourceTree = ""; }; + OBJ_1332 /* ParsedValues.swift */ = {isa = PBXFileReference; path = ParsedValues.swift; sourceTree = ""; }; + OBJ_1333 /* ParserError.swift */ = {isa = PBXFileReference; path = ParserError.swift; sourceTree = ""; }; + OBJ_1334 /* SplitArguments.swift */ = {isa = PBXFileReference; path = SplitArguments.swift; sourceTree = ""; }; + OBJ_1336 /* DumpHelpGenerator.swift */ = {isa = PBXFileReference; path = DumpHelpGenerator.swift; sourceTree = ""; }; + OBJ_1337 /* HelpCommand.swift */ = {isa = PBXFileReference; path = HelpCommand.swift; sourceTree = ""; }; + OBJ_1338 /* HelpGenerator.swift */ = {isa = PBXFileReference; path = HelpGenerator.swift; sourceTree = ""; }; + OBJ_1339 /* MessageInfo.swift */ = {isa = PBXFileReference; path = MessageInfo.swift; sourceTree = ""; }; OBJ_134 /* IntentionHistoryEntry.swift */ = {isa = PBXFileReference; path = IntentionHistoryEntry.swift; sourceTree = ""; }; - OBJ_1342 /* AntlrGrammars */ = {isa = PBXFileReference; path = AntlrGrammars; sourceTree = SOURCE_ROOT; }; - OBJ_1343 /* utils */ = {isa = PBXFileReference; path = utils; sourceTree = SOURCE_ROOT; }; - OBJ_1344 /* codecov.yml */ = {isa = PBXFileReference; path = codecov.yml; sourceTree = ""; }; - OBJ_1345 /* README.md */ = {isa = PBXFileReference; path = README.md; sourceTree = ""; }; - OBJ_1346 /* objectivecparser-stateful.diff */ = {isa = PBXFileReference; path = "objectivecparser-stateful.diff"; sourceTree = ""; }; - OBJ_1347 /* Gemfile.lock */ = {isa = PBXFileReference; path = Gemfile.lock; sourceTree = ""; }; - OBJ_1348 /* xcodeproj-prep.rb */ = {isa = PBXFileReference; path = "xcodeproj-prep.rb"; sourceTree = ""; }; - OBJ_1349 /* Gemfile */ = {isa = PBXFileReference; path = Gemfile; sourceTree = ""; }; + OBJ_1340 /* UsageGenerator.swift */ = {isa = PBXFileReference; path = UsageGenerator.swift; sourceTree = ""; }; + OBJ_1342 /* CollectionExtensions.swift */ = {isa = PBXFileReference; path = CollectionExtensions.swift; sourceTree = ""; }; + OBJ_1343 /* SequenceExtensions.swift */ = {isa = PBXFileReference; path = SequenceExtensions.swift; sourceTree = ""; }; + OBJ_1344 /* StringExtensions.swift */ = {isa = PBXFileReference; path = StringExtensions.swift; sourceTree = ""; }; + OBJ_1345 /* Tree.swift */ = {isa = PBXFileReference; path = Tree.swift; sourceTree = ""; }; + OBJ_1347 /* ToolInfo.swift */ = {isa = PBXFileReference; path = ToolInfo.swift; sourceTree = ""; }; OBJ_135 /* IntentionHistoryEntryEcho.swift */ = {isa = PBXFileReference; path = IntentionHistoryEntryEcho.swift; sourceTree = ""; }; - OBJ_1350 /* gen-_cswiftsyntax-module-map.sh */ = {isa = PBXFileReference; path = "gen-_cswiftsyntax-module-map.sh"; sourceTree = ""; }; - OBJ_1351 /* copy-libswiftsyntax.sh */ = {isa = PBXFileReference; path = "copy-libswiftsyntax.sh"; sourceTree = ""; }; - OBJ_1352 /* SwiftRewriter.code-workspace */ = {isa = PBXFileReference; path = "SwiftRewriter.code-workspace"; sourceTree = ""; }; - OBJ_1353 /* azure-pipelines.yml */ = {isa = PBXFileReference; path = "azure-pipelines.yml"; sourceTree = ""; }; - OBJ_1354 /* Architecture.md */ = {isa = PBXFileReference; path = Architecture.md; sourceTree = ""; }; - OBJ_1355 /* LICENSE.md */ = {isa = PBXFileReference; path = LICENSE.md; sourceTree = ""; }; + OBJ_1350 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = "/home/luiz/dev/SwiftRewriter/.build/checkouts/swift-argument-parser/Package.swift"; sourceTree = ""; }; + OBJ_1353 /* GrammarRules+Operators.swift */ = {isa = PBXFileReference; path = "GrammarRules+Operators.swift"; sourceTree = ""; }; + OBJ_1354 /* GrammarRules.swift */ = {isa = PBXFileReference; path = GrammarRules.swift; sourceTree = ""; }; + OBJ_1355 /* Lexer+Advance.swift */ = {isa = PBXFileReference; path = "Lexer+Advance.swift"; sourceTree = ""; }; + OBJ_1356 /* Lexer+AdvancedParsing.swift */ = {isa = PBXFileReference; path = "Lexer+AdvancedParsing.swift"; sourceTree = ""; }; + OBJ_1357 /* Lexer+Consume.swift */ = {isa = PBXFileReference; path = "Lexer+Consume.swift"; sourceTree = ""; }; + OBJ_1358 /* Lexer.swift */ = {isa = PBXFileReference; path = Lexer.swift; sourceTree = ""; }; + OBJ_1359 /* TokenProtocol.swift */ = {isa = PBXFileReference; path = TokenProtocol.swift; sourceTree = ""; }; OBJ_136 /* IntentionHistoryTracker.swift */ = {isa = PBXFileReference; path = IntentionHistoryTracker.swift; sourceTree = ""; }; + OBJ_1360 /* TokenizerLexer.swift */ = {isa = PBXFileReference; path = TokenizerLexer.swift; sourceTree = ""; }; + OBJ_1363 /* TypeLexers.swift */ = {isa = PBXFileReference; path = TypeLexers.swift; sourceTree = ""; }; + OBJ_1364 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = /home/luiz/dev/SwiftRewriter/.build/checkouts/MiniLexer/Package.swift; sourceTree = ""; }; OBJ_137 /* InstanceVariableContainerIntention.swift */ = {isa = PBXFileReference; path = InstanceVariableContainerIntention.swift; sourceTree = ""; }; OBJ_138 /* Intention.swift */ = {isa = PBXFileReference; path = Intention.swift; sourceTree = ""; }; OBJ_139 /* IntentionCollection.swift */ = {isa = PBXFileReference; path = IntentionCollection.swift; sourceTree = ""; }; @@ -2582,7 +2942,20 @@ OBJ_141 /* ClassExtensionGenerationIntention.swift */ = {isa = PBXFileReference; path = ClassExtensionGenerationIntention.swift; sourceTree = ""; }; OBJ_142 /* ClassGenerationIntention.swift */ = {isa = PBXFileReference; path = ClassGenerationIntention.swift; sourceTree = ""; }; OBJ_143 /* DeinitGenerationIntention.swift */ = {isa = PBXFileReference; path = DeinitGenerationIntention.swift; sourceTree = ""; }; + OBJ_1436 /* AntlrGrammars */ = {isa = PBXFileReference; path = AntlrGrammars; sourceTree = SOURCE_ROOT; }; + OBJ_1437 /* utils */ = {isa = PBXFileReference; path = utils; sourceTree = SOURCE_ROOT; }; + OBJ_1438 /* codecov.yml */ = {isa = PBXFileReference; path = codecov.yml; sourceTree = ""; }; + OBJ_1439 /* README.md */ = {isa = PBXFileReference; path = README.md; sourceTree = ""; }; OBJ_144 /* EnumCaseGenerationIntention.swift */ = {isa = PBXFileReference; path = EnumCaseGenerationIntention.swift; sourceTree = ""; }; + OBJ_1440 /* Gemfile.lock */ = {isa = PBXFileReference; path = Gemfile.lock; sourceTree = ""; }; + OBJ_1441 /* xcodeproj-prep.rb */ = {isa = PBXFileReference; path = "xcodeproj-prep.rb"; sourceTree = ""; }; + OBJ_1442 /* Gemfile */ = {isa = PBXFileReference; path = Gemfile; sourceTree = ""; }; + OBJ_1443 /* gen-_cswiftsyntax-module-map.sh */ = {isa = PBXFileReference; path = "gen-_cswiftsyntax-module-map.sh"; sourceTree = ""; }; + OBJ_1444 /* copy-libswiftsyntax.sh */ = {isa = PBXFileReference; path = "copy-libswiftsyntax.sh"; sourceTree = ""; }; + OBJ_1445 /* SwiftRewriter.code-workspace */ = {isa = PBXFileReference; path = "SwiftRewriter.code-workspace"; sourceTree = ""; }; + OBJ_1446 /* azure-pipelines.yml */ = {isa = PBXFileReference; path = "azure-pipelines.yml"; sourceTree = ""; }; + OBJ_1447 /* Architecture.md */ = {isa = PBXFileReference; path = Architecture.md; sourceTree = ""; }; + OBJ_1448 /* LICENSE.md */ = {isa = PBXFileReference; path = LICENSE.md; sourceTree = ""; }; OBJ_145 /* EnumGenerationIntention.swift */ = {isa = PBXFileReference; path = EnumGenerationIntention.swift; sourceTree = ""; }; OBJ_146 /* FileGenerationIntention.swift */ = {isa = PBXFileReference; path = FileGenerationIntention.swift; sourceTree = ""; }; OBJ_147 /* FunctionBodyIntention.swift */ = {isa = PBXFileReference; path = FunctionBodyIntention.swift; sourceTree = ""; }; @@ -2624,791 +2997,786 @@ OBJ_181 /* ValueStorageIntention.swift */ = {isa = PBXFileReference; path = ValueStorageIntention.swift; sourceTree = ""; }; OBJ_183 /* AnonymousIntentionVisitor.swift */ = {isa = PBXFileReference; path = AnonymousIntentionVisitor.swift; sourceTree = ""; }; OBJ_184 /* IntentionVisitor.swift */ = {isa = PBXFileReference; path = IntentionVisitor.swift; sourceTree = ""; }; - OBJ_186 /* AttributeTaggableObject.swift */ = {isa = PBXFileReference; path = AttributeTaggableObject.swift; sourceTree = ""; }; - OBJ_187 /* KnownAttribute.swift */ = {isa = PBXFileReference; path = KnownAttribute.swift; sourceTree = ""; }; - OBJ_188 /* KnownDeclaration.swift */ = {isa = PBXFileReference; path = KnownDeclaration.swift; sourceTree = ""; }; - OBJ_189 /* KnownFile+Equality.swift */ = {isa = PBXFileReference; path = "KnownFile+Equality.swift"; sourceTree = ""; }; + OBJ_187 /* JavaScriptASTCorrectorExpressionPass.swift */ = {isa = PBXFileReference; path = JavaScriptASTCorrectorExpressionPass.swift; sourceTree = ""; }; + OBJ_188 /* Intention+TypedSource.swift */ = {isa = PBXFileReference; path = "Intention+TypedSource.swift"; sourceTree = ""; }; OBJ_19 /* DefinitionTypePropagator.swift */ = {isa = PBXFileReference; path = DefinitionTypePropagator.swift; sourceTree = ""; }; - OBJ_190 /* KnownFile.swift */ = {isa = PBXFileReference; path = KnownFile.swift; sourceTree = ""; }; - OBJ_191 /* KnownFileBuilder.swift */ = {isa = PBXFileReference; path = KnownFileBuilder.swift; sourceTree = ""; }; - OBJ_192 /* KnownType+Equality.swift */ = {isa = PBXFileReference; path = "KnownType+Equality.swift"; sourceTree = ""; }; - OBJ_193 /* KnownType.swift */ = {isa = PBXFileReference; path = KnownType.swift; sourceTree = ""; }; - OBJ_194 /* KnownTypeBuilder.swift */ = {isa = PBXFileReference; path = KnownTypeBuilder.swift; sourceTree = ""; }; - OBJ_195 /* KnownTypeSerializer.swift */ = {isa = PBXFileReference; path = KnownTypeSerializer.swift; sourceTree = ""; }; - OBJ_196 /* Semantic.swift */ = {isa = PBXFileReference; path = Semantic.swift; sourceTree = ""; }; - OBJ_197 /* SemanticalObject.swift */ = {isa = PBXFileReference; path = SemanticalObject.swift; sourceTree = ""; }; - OBJ_198 /* Semantics.swift */ = {isa = PBXFileReference; path = Semantics.swift; sourceTree = ""; }; - OBJ_199 /* TypeFormatter+Ext.swift */ = {isa = PBXFileReference; path = "TypeFormatter+Ext.swift"; sourceTree = ""; }; + OBJ_190 /* JavaScriptPropertyMergeIntentionPass.swift */ = {isa = PBXFileReference; path = JavaScriptPropertyMergeIntentionPass.swift; sourceTree = ""; }; + OBJ_191 /* JavaScript2SwiftRewriter.swift */ = {isa = PBXFileReference; path = JavaScript2SwiftRewriter.swift; sourceTree = ""; }; + OBJ_192 /* JavaScript2SwiftRewriterJob.swift */ = {isa = PBXFileReference; path = JavaScript2SwiftRewriterJob.swift; sourceTree = ""; }; + OBJ_193 /* JavaScript2SwiftRewriterJobBuilder.swift */ = {isa = PBXFileReference; path = JavaScript2SwiftRewriterJobBuilder.swift; sourceTree = ""; }; + OBJ_194 /* JavaScriptASTReader.swift */ = {isa = PBXFileReference; path = JavaScriptASTReader.swift; sourceTree = ""; }; + OBJ_195 /* JavaScriptASTReaderContext.swift */ = {isa = PBXFileReference; path = JavaScriptASTReaderContext.swift; sourceTree = ""; }; + OBJ_196 /* JavaScriptExprASTReader.swift */ = {isa = PBXFileReference; path = JavaScriptExprASTReader.swift; sourceTree = ""; }; + OBJ_197 /* JavaScriptFileCollectionStep.swift */ = {isa = PBXFileReference; path = JavaScriptFileCollectionStep.swift; sourceTree = ""; }; + OBJ_198 /* JavaScriptFileCollectionStepDelegate.swift */ = {isa = PBXFileReference; path = JavaScriptFileCollectionStepDelegate.swift; sourceTree = ""; }; + OBJ_199 /* JavaScriptFrontend.swift */ = {isa = PBXFileReference; path = JavaScriptFrontend.swift; sourceTree = ""; }; OBJ_20 /* DirectedGraph.swift */ = {isa = PBXFileReference; path = DirectedGraph.swift; sourceTree = ""; }; - OBJ_201 /* ASTNodeSerialization.swift */ = {isa = PBXFileReference; path = ASTNodeSerialization.swift; sourceTree = ""; }; - OBJ_202 /* ObjcASTNode.swift */ = {isa = PBXFileReference; path = ObjcASTNode.swift; sourceTree = ""; }; - OBJ_203 /* ObjcClass+Method.swift */ = {isa = PBXFileReference; path = "ObjcClass+Method.swift"; sourceTree = ""; }; - OBJ_204 /* ObjcClass+Property.swift */ = {isa = PBXFileReference; path = "ObjcClass+Property.swift"; sourceTree = ""; }; - OBJ_205 /* ObjcClassCategoryInterfaceNode.swift */ = {isa = PBXFileReference; path = ObjcClassCategoryInterfaceNode.swift; sourceTree = ""; }; - OBJ_206 /* ObjcClassImplementationNode.swift */ = {isa = PBXFileReference; path = ObjcClassImplementationNode.swift; sourceTree = ""; }; - OBJ_207 /* ObjcClassInterfaceNode.swift */ = {isa = PBXFileReference; path = ObjcClassInterfaceNode.swift; sourceTree = ""; }; - OBJ_208 /* ObjcEnumDeclarationNode.swift */ = {isa = PBXFileReference; path = ObjcEnumDeclarationNode.swift; sourceTree = ""; }; - OBJ_209 /* ObjcExpressionNode.swift */ = {isa = PBXFileReference; path = ObjcExpressionNode.swift; sourceTree = ""; }; + OBJ_200 /* JavaScriptImportDirectiveFileCollectionDelegate.swift */ = {isa = PBXFileReference; path = JavaScriptImportDirectiveFileCollectionDelegate.swift; sourceTree = ""; }; + OBJ_201 /* JavaScriptIntentionCollector.swift */ = {isa = PBXFileReference; path = JavaScriptIntentionCollector.swift; sourceTree = ""; }; + OBJ_202 /* JavaScriptMethodSignatureConverter.swift */ = {isa = PBXFileReference; path = JavaScriptMethodSignatureConverter.swift; sourceTree = ""; }; + OBJ_203 /* JavaScriptObjectGenerator.swift */ = {isa = PBXFileReference; path = JavaScriptObjectGenerator.swift; sourceTree = ""; }; + OBJ_204 /* JavaScriptParserCache.swift */ = {isa = PBXFileReference; path = JavaScriptParserCache.swift; sourceTree = ""; }; + OBJ_205 /* JavaScriptStatementASTReader.swift */ = {isa = PBXFileReference; path = JavaScriptStatementASTReader.swift; sourceTree = ""; }; + OBJ_206 /* JavaScriptSwiftRewriterService.swift */ = {isa = PBXFileReference; path = JavaScriptSwiftRewriterService.swift; sourceTree = ""; }; + OBJ_207 /* JsParserStatePool.swift */ = {isa = PBXFileReference; path = JsParserStatePool.swift; sourceTree = ""; }; + OBJ_209 /* JsASTNode.swift */ = {isa = PBXFileReference; path = JsASTNode.swift; sourceTree = ""; }; OBJ_21 /* DirectedGraphBase.swift */ = {isa = PBXFileReference; path = DirectedGraphBase.swift; sourceTree = ""; }; - OBJ_210 /* ObjcFunctionDefinitionNode.swift */ = {isa = PBXFileReference; path = ObjcFunctionDefinitionNode.swift; sourceTree = ""; }; - OBJ_211 /* ObjcGlobalContextNode.swift */ = {isa = PBXFileReference; path = ObjcGlobalContextNode.swift; sourceTree = ""; }; - OBJ_212 /* ObjcIdentifierNode.swift */ = {isa = PBXFileReference; path = ObjcIdentifierNode.swift; sourceTree = ""; }; - OBJ_213 /* ObjcInitializableNode.swift */ = {isa = PBXFileReference; path = ObjcInitializableNode.swift; sourceTree = ""; }; - OBJ_214 /* ObjcKeyword.swift */ = {isa = PBXFileReference; path = ObjcKeyword.swift; sourceTree = ""; }; - OBJ_215 /* ObjcKeywordNode.swift */ = {isa = PBXFileReference; path = ObjcKeywordNode.swift; sourceTree = ""; }; - OBJ_216 /* ObjcOperator.swift */ = {isa = PBXFileReference; path = ObjcOperator.swift; sourceTree = ""; }; - OBJ_217 /* ObjcPreprocessorDirective.swift */ = {isa = PBXFileReference; path = ObjcPreprocessorDirective.swift; sourceTree = ""; }; - OBJ_218 /* ObjcPropertyImplementationNode.swift */ = {isa = PBXFileReference; path = ObjcPropertyImplementationNode.swift; sourceTree = ""; }; - OBJ_219 /* ObjcPropertySynthesizeListNode.swift */ = {isa = PBXFileReference; path = ObjcPropertySynthesizeListNode.swift; sourceTree = ""; }; - OBJ_220 /* ObjcProtocolDeclarationNode.swift */ = {isa = PBXFileReference; path = ObjcProtocolDeclarationNode.swift; sourceTree = ""; }; - OBJ_221 /* ObjcStructDeclarationNode.swift */ = {isa = PBXFileReference; path = ObjcStructDeclarationNode.swift; sourceTree = ""; }; - OBJ_222 /* ObjcTokenType.swift */ = {isa = PBXFileReference; path = ObjcTokenType.swift; sourceTree = ""; }; - OBJ_223 /* ObjcType.swift */ = {isa = PBXFileReference; path = ObjcType.swift; sourceTree = ""; }; - OBJ_224 /* ObjcTypeNameNode.swift */ = {isa = PBXFileReference; path = ObjcTypeNameNode.swift; sourceTree = ""; }; - OBJ_225 /* ObjcTypedefNode.swift */ = {isa = PBXFileReference; path = ObjcTypedefNode.swift; sourceTree = ""; }; - OBJ_226 /* ObjcUnknownNode.swift */ = {isa = PBXFileReference; path = ObjcUnknownNode.swift; sourceTree = ""; }; - OBJ_227 /* ObjcVariableDeclarationNode.swift */ = {isa = PBXFileReference; path = ObjcVariableDeclarationNode.swift; sourceTree = ""; }; - OBJ_229 /* ConstantExtractor.swift */ = {isa = PBXFileReference; path = ConstantExtractor.swift; sourceTree = ""; }; + OBJ_210 /* JsAnonymousFunction.swift */ = {isa = PBXFileReference; path = JsAnonymousFunction.swift; sourceTree = ""; }; + OBJ_211 /* JsClassNode.swift */ = {isa = PBXFileReference; path = JsClassNode.swift; sourceTree = ""; }; + OBJ_212 /* JsClassPropertyNode.swift */ = {isa = PBXFileReference; path = JsClassPropertyNode.swift; sourceTree = ""; }; + OBJ_213 /* JsConstructorDefinitionNode.swift */ = {isa = PBXFileReference; path = JsConstructorDefinitionNode.swift; sourceTree = ""; }; + OBJ_214 /* JsExpressionNode.swift */ = {isa = PBXFileReference; path = JsExpressionNode.swift; sourceTree = ""; }; + OBJ_215 /* JsFunctionBodyNode.swift */ = {isa = PBXFileReference; path = JsFunctionBodyNode.swift; sourceTree = ""; }; + OBJ_216 /* JsFunctionDeclarationNode.swift */ = {isa = PBXFileReference; path = JsFunctionDeclarationNode.swift; sourceTree = ""; }; + OBJ_217 /* JsFunctionNodeType.swift */ = {isa = PBXFileReference; path = JsFunctionNodeType.swift; sourceTree = ""; }; + OBJ_218 /* JsFunctionSignature.swift */ = {isa = PBXFileReference; path = JsFunctionSignature.swift; sourceTree = ""; }; + OBJ_219 /* JsGlobalContextNode.swift */ = {isa = PBXFileReference; path = JsGlobalContextNode.swift; sourceTree = ""; }; + OBJ_220 /* JsIdentifierNode.swift */ = {isa = PBXFileReference; path = JsIdentifierNode.swift; sourceTree = ""; }; + OBJ_221 /* JsInitializableNode.swift */ = {isa = PBXFileReference; path = JsInitializableNode.swift; sourceTree = ""; }; + OBJ_222 /* JsMethodDefinitionNode.swift */ = {isa = PBXFileReference; path = JsMethodDefinitionNode.swift; sourceTree = ""; }; + OBJ_223 /* JsVariableDeclarationListNode.swift */ = {isa = PBXFileReference; path = JsVariableDeclarationListNode.swift; sourceTree = ""; }; + OBJ_224 /* JsVariableDeclarationNode.swift */ = {isa = PBXFileReference; path = JsVariableDeclarationNode.swift; sourceTree = ""; }; + OBJ_226 /* JsASTNodeFactory.swift */ = {isa = PBXFileReference; path = JsASTNodeFactory.swift; sourceTree = ""; }; + OBJ_227 /* JsImportDecl.swift */ = {isa = PBXFileReference; path = JsImportDecl.swift; sourceTree = ""; }; + OBJ_228 /* JsImportDeclListener.swift */ = {isa = PBXFileReference; path = JsImportDeclListener.swift; sourceTree = ""; }; + OBJ_229 /* JsNodeCreationContext.swift */ = {isa = PBXFileReference; path = JsNodeCreationContext.swift; sourceTree = ""; }; OBJ_23 /* NodeDefinition.swift */ = {isa = PBXFileReference; path = NodeDefinition.swift; sourceTree = ""; }; - OBJ_231 /* AntlrDeclarationParser.swift */ = {isa = PBXFileReference; path = AntlrDeclarationParser.swift; sourceTree = ""; }; - OBJ_232 /* DeclarationExtractor.swift */ = {isa = PBXFileReference; path = DeclarationExtractor.swift; sourceTree = ""; }; - OBJ_233 /* DeclarationSyntaxElementType+ObjcType.swift */ = {isa = PBXFileReference; path = "DeclarationSyntaxElementType+ObjcType.swift"; sourceTree = ""; }; - OBJ_234 /* DeclarationSyntaxElementType.swift */ = {isa = PBXFileReference; path = DeclarationSyntaxElementType.swift; sourceTree = ""; }; - OBJ_237 /* ConstantExpressionSyntax.swift */ = {isa = PBXFileReference; path = ConstantExpressionSyntax.swift; sourceTree = ""; }; - OBJ_238 /* ExpressionSyntax.swift */ = {isa = PBXFileReference; path = ExpressionSyntax.swift; sourceTree = ""; }; - OBJ_239 /* IdentifierSyntax.swift */ = {isa = PBXFileReference; path = IdentifierSyntax.swift; sourceTree = ""; }; + OBJ_230 /* JsParser.swift */ = {isa = PBXFileReference; path = JsParser.swift; sourceTree = ""; }; + OBJ_231 /* JsParserListener.swift */ = {isa = PBXFileReference; path = JsParserListener.swift; sourceTree = ""; }; + OBJ_232 /* JsParserState.swift */ = {isa = PBXFileReference; path = JsParserState.swift; sourceTree = ""; }; + OBJ_234 /* JavaScriptLexer.swift */ = {isa = PBXFileReference; path = JavaScriptLexer.swift; sourceTree = ""; }; + OBJ_235 /* JavaScriptLexerBase.swift */ = {isa = PBXFileReference; path = JavaScriptLexerBase.swift; sourceTree = ""; }; + OBJ_236 /* JavaScriptParser.swift */ = {isa = PBXFileReference; path = JavaScriptParser.swift; sourceTree = ""; }; + OBJ_237 /* JavaScriptParserBase.swift */ = {isa = PBXFileReference; path = JavaScriptParserBase.swift; sourceTree = ""; }; + OBJ_238 /* JavaScriptParserBaseListener.swift */ = {isa = PBXFileReference; path = JavaScriptParserBaseListener.swift; sourceTree = ""; }; + OBJ_239 /* JavaScriptParserBaseVisitor.swift */ = {isa = PBXFileReference; path = JavaScriptParserBaseVisitor.swift; sourceTree = ""; }; OBJ_24 /* ReachingDefinitionAnalyzer.swift */ = {isa = PBXFileReference; path = ReachingDefinitionAnalyzer.swift; sourceTree = ""; }; - OBJ_240 /* InitializerSyntax.swift */ = {isa = PBXFileReference; path = InitializerSyntax.swift; sourceTree = ""; }; - OBJ_241 /* ParameterDeclarationSyntax.swift */ = {isa = PBXFileReference; path = ParameterDeclarationSyntax.swift; sourceTree = ""; }; - OBJ_242 /* ParameterListSyntax.swift */ = {isa = PBXFileReference; path = ParameterListSyntax.swift; sourceTree = ""; }; - OBJ_243 /* ParameterTypeListSyntax.swift */ = {isa = PBXFileReference; path = ParameterTypeListSyntax.swift; sourceTree = ""; }; - OBJ_244 /* PointerSyntax.swift */ = {isa = PBXFileReference; path = PointerSyntax.swift; sourceTree = ""; }; - OBJ_245 /* ProtocolReferenceListSyntax.swift */ = {isa = PBXFileReference; path = ProtocolReferenceListSyntax.swift; sourceTree = ""; }; - OBJ_246 /* SpecifierQualifierListSyntax.swift */ = {isa = PBXFileReference; path = SpecifierQualifierListSyntax.swift; sourceTree = ""; }; - OBJ_247 /* TypeQualifierListSyntax.swift */ = {isa = PBXFileReference; path = TypeQualifierListSyntax.swift; sourceTree = ""; }; - OBJ_248 /* DeclarationSpecifierSyntax.swift */ = {isa = PBXFileReference; path = DeclarationSpecifierSyntax.swift; sourceTree = ""; }; + OBJ_240 /* JavaScriptParserListener.swift */ = {isa = PBXFileReference; path = JavaScriptParserListener.swift; sourceTree = ""; }; + OBJ_241 /* JavaScriptParserVisitor.swift */ = {isa = PBXFileReference; path = JavaScriptParserVisitor.swift; sourceTree = ""; }; + OBJ_242 /* shim.swift */ = {isa = PBXFileReference; path = shim.swift; sourceTree = ""; }; + OBJ_244 /* AttributeTaggableObject.swift */ = {isa = PBXFileReference; path = AttributeTaggableObject.swift; sourceTree = ""; }; + OBJ_245 /* KnownAttribute.swift */ = {isa = PBXFileReference; path = KnownAttribute.swift; sourceTree = ""; }; + OBJ_246 /* KnownDeclaration.swift */ = {isa = PBXFileReference; path = KnownDeclaration.swift; sourceTree = ""; }; + OBJ_247 /* KnownFile+Equality.swift */ = {isa = PBXFileReference; path = "KnownFile+Equality.swift"; sourceTree = ""; }; + OBJ_248 /* KnownFile.swift */ = {isa = PBXFileReference; path = KnownFile.swift; sourceTree = ""; }; + OBJ_249 /* KnownFileBuilder.swift */ = {isa = PBXFileReference; path = KnownFileBuilder.swift; sourceTree = ""; }; OBJ_25 /* SyntaxNode+ControlFlowGraphSyntaxNode.swift */ = {isa = PBXFileReference; path = "SyntaxNode+ControlFlowGraphSyntaxNode.swift"; sourceTree = ""; }; - OBJ_250 /* AlignmentSpecifierSyntax.swift */ = {isa = PBXFileReference; path = AlignmentSpecifierSyntax.swift; sourceTree = ""; }; - OBJ_251 /* ArcBehaviourSpecifierSyntax.swift */ = {isa = PBXFileReference; path = ArcBehaviourSpecifierSyntax.swift; sourceTree = ""; }; - OBJ_252 /* BlockDeclarationSpecifierSyntax.swift */ = {isa = PBXFileReference; path = BlockDeclarationSpecifierSyntax.swift; sourceTree = ""; }; - OBJ_253 /* FunctionSpecifierSyntax.swift */ = {isa = PBXFileReference; path = FunctionSpecifierSyntax.swift; sourceTree = ""; }; - OBJ_254 /* IBOutletQualifierSyntax.swift */ = {isa = PBXFileReference; path = IBOutletQualifierSyntax.swift; sourceTree = ""; }; - OBJ_255 /* NullabilitySpecifierSyntax.swift */ = {isa = PBXFileReference; path = NullabilitySpecifierSyntax.swift; sourceTree = ""; }; - OBJ_256 /* ProtocolQualifierSyntax.swift */ = {isa = PBXFileReference; path = ProtocolQualifierSyntax.swift; sourceTree = ""; }; - OBJ_257 /* StorageClassSpecifierSyntax.swift */ = {isa = PBXFileReference; path = StorageClassSpecifierSyntax.swift; sourceTree = ""; }; - OBJ_258 /* TypePrefixSyntax.swift */ = {isa = PBXFileReference; path = TypePrefixSyntax.swift; sourceTree = ""; }; - OBJ_259 /* TypeQualifierSyntax.swift */ = {isa = PBXFileReference; path = TypeQualifierSyntax.swift; sourceTree = ""; }; - OBJ_260 /* TypeSpecifierSyntax.swift */ = {isa = PBXFileReference; path = TypeSpecifierSyntax.swift; sourceTree = ""; }; - OBJ_262 /* EnumSpecifierSyntax.swift */ = {isa = PBXFileReference; path = EnumSpecifierSyntax.swift; sourceTree = ""; }; - OBJ_263 /* GenericTypeSpecifierSyntax.swift */ = {isa = PBXFileReference; path = GenericTypeSpecifierSyntax.swift; sourceTree = ""; }; - OBJ_264 /* ScalarTypeSpecifierSyntax.swift */ = {isa = PBXFileReference; path = ScalarTypeSpecifierSyntax.swift; sourceTree = ""; }; - OBJ_265 /* StructOrUnionSpecifierSyntax.swift */ = {isa = PBXFileReference; path = StructOrUnionSpecifierSyntax.swift; sourceTree = ""; }; - OBJ_266 /* TypeIdentifierSyntax.swift */ = {isa = PBXFileReference; path = TypeIdentifierSyntax.swift; sourceTree = ""; }; - OBJ_267 /* DeclarationSpecifiersSyntax.swift */ = {isa = PBXFileReference; path = DeclarationSpecifiersSyntax.swift; sourceTree = ""; }; - OBJ_268 /* DeclarationSyntax.swift */ = {isa = PBXFileReference; path = DeclarationSyntax.swift; sourceTree = ""; }; + OBJ_250 /* KnownType+Equality.swift */ = {isa = PBXFileReference; path = "KnownType+Equality.swift"; sourceTree = ""; }; + OBJ_251 /* KnownType.swift */ = {isa = PBXFileReference; path = KnownType.swift; sourceTree = ""; }; + OBJ_252 /* KnownTypeBuilder.swift */ = {isa = PBXFileReference; path = KnownTypeBuilder.swift; sourceTree = ""; }; + OBJ_253 /* KnownTypeSerializer.swift */ = {isa = PBXFileReference; path = KnownTypeSerializer.swift; sourceTree = ""; }; + OBJ_254 /* Semantic.swift */ = {isa = PBXFileReference; path = Semantic.swift; sourceTree = ""; }; + OBJ_255 /* SemanticalObject.swift */ = {isa = PBXFileReference; path = SemanticalObject.swift; sourceTree = ""; }; + OBJ_256 /* Semantics.swift */ = {isa = PBXFileReference; path = Semantics.swift; sourceTree = ""; }; + OBJ_257 /* TypeFormatter+Ext.swift */ = {isa = PBXFileReference; path = "TypeFormatter+Ext.swift"; sourceTree = ""; }; + OBJ_259 /* ASTNodeSerialization.swift */ = {isa = PBXFileReference; path = ASTNodeSerialization.swift; sourceTree = ""; }; + OBJ_260 /* ObjcASTNode.swift */ = {isa = PBXFileReference; path = ObjcASTNode.swift; sourceTree = ""; }; + OBJ_261 /* ObjcClass+Method.swift */ = {isa = PBXFileReference; path = "ObjcClass+Method.swift"; sourceTree = ""; }; + OBJ_262 /* ObjcClass+Property.swift */ = {isa = PBXFileReference; path = "ObjcClass+Property.swift"; sourceTree = ""; }; + OBJ_263 /* ObjcClassCategoryInterfaceNode.swift */ = {isa = PBXFileReference; path = ObjcClassCategoryInterfaceNode.swift; sourceTree = ""; }; + OBJ_264 /* ObjcClassImplementationNode.swift */ = {isa = PBXFileReference; path = ObjcClassImplementationNode.swift; sourceTree = ""; }; + OBJ_265 /* ObjcClassInterfaceNode.swift */ = {isa = PBXFileReference; path = ObjcClassInterfaceNode.swift; sourceTree = ""; }; + OBJ_266 /* ObjcEnumDeclarationNode.swift */ = {isa = PBXFileReference; path = ObjcEnumDeclarationNode.swift; sourceTree = ""; }; + OBJ_267 /* ObjcExpressionNode.swift */ = {isa = PBXFileReference; path = ObjcExpressionNode.swift; sourceTree = ""; }; + OBJ_268 /* ObjcFunctionDefinitionNode.swift */ = {isa = PBXFileReference; path = ObjcFunctionDefinitionNode.swift; sourceTree = ""; }; + OBJ_269 /* ObjcGlobalContextNode.swift */ = {isa = PBXFileReference; path = ObjcGlobalContextNode.swift; sourceTree = ""; }; OBJ_27 /* BaseUsageAnalyzer.swift */ = {isa = PBXFileReference; path = BaseUsageAnalyzer.swift; sourceTree = ""; }; - OBJ_270 /* DeclaratorSyntax.swift */ = {isa = PBXFileReference; path = DeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_271 /* DirectDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = DirectDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_273 /* ArrayDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = ArrayDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_274 /* BlockDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = BlockDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_275 /* FunctionDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = FunctionDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_276 /* FieldDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = FieldDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_277 /* FieldDeclarationSyntax.swift */ = {isa = PBXFileReference; path = FieldDeclarationSyntax.swift; sourceTree = ""; }; - OBJ_278 /* InitDeclarationListSyntax.swift */ = {isa = PBXFileReference; path = InitDeclarationListSyntax.swift; sourceTree = ""; }; - OBJ_279 /* InitDeclarationSyntax.swift */ = {isa = PBXFileReference; path = InitDeclarationSyntax.swift; sourceTree = ""; }; + OBJ_270 /* ObjcIdentifierNode.swift */ = {isa = PBXFileReference; path = ObjcIdentifierNode.swift; sourceTree = ""; }; + OBJ_271 /* ObjcInitializableNode.swift */ = {isa = PBXFileReference; path = ObjcInitializableNode.swift; sourceTree = ""; }; + OBJ_272 /* ObjcKeyword.swift */ = {isa = PBXFileReference; path = ObjcKeyword.swift; sourceTree = ""; }; + OBJ_273 /* ObjcKeywordNode.swift */ = {isa = PBXFileReference; path = ObjcKeywordNode.swift; sourceTree = ""; }; + OBJ_274 /* ObjcOperator.swift */ = {isa = PBXFileReference; path = ObjcOperator.swift; sourceTree = ""; }; + OBJ_275 /* ObjcPreprocessorDirective.swift */ = {isa = PBXFileReference; path = ObjcPreprocessorDirective.swift; sourceTree = ""; }; + OBJ_276 /* ObjcPropertyImplementationNode.swift */ = {isa = PBXFileReference; path = ObjcPropertyImplementationNode.swift; sourceTree = ""; }; + OBJ_277 /* ObjcPropertySynthesizeListNode.swift */ = {isa = PBXFileReference; path = ObjcPropertySynthesizeListNode.swift; sourceTree = ""; }; + OBJ_278 /* ObjcProtocolDeclarationNode.swift */ = {isa = PBXFileReference; path = ObjcProtocolDeclarationNode.swift; sourceTree = ""; }; + OBJ_279 /* ObjcStructDeclarationNode.swift */ = {isa = PBXFileReference; path = ObjcStructDeclarationNode.swift; sourceTree = ""; }; OBJ_28 /* DefinitionUsage.swift */ = {isa = PBXFileReference; path = DefinitionUsage.swift; sourceTree = ""; }; - OBJ_281 /* AbstractDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = AbstractDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_282 /* DirectAbstractDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = DirectAbstractDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_284 /* ArrayAbstractDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = ArrayAbstractDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_285 /* BlockAbstractDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = BlockAbstractDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_286 /* FunctionAbstractDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = FunctionAbstractDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_287 /* TypeNameSyntax.swift */ = {isa = PBXFileReference; path = TypeNameSyntax.swift; sourceTree = ""; }; - OBJ_288 /* TypeVariableDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = TypeVariableDeclaratorSyntax.swift; sourceTree = ""; }; - OBJ_289 /* DeclarationTranslator.swift */ = {isa = PBXFileReference; path = DeclarationTranslator.swift; sourceTree = ""; }; + OBJ_280 /* ObjcTokenType.swift */ = {isa = PBXFileReference; path = ObjcTokenType.swift; sourceTree = ""; }; + OBJ_281 /* ObjcType.swift */ = {isa = PBXFileReference; path = ObjcType.swift; sourceTree = ""; }; + OBJ_282 /* ObjcTypeNameNode.swift */ = {isa = PBXFileReference; path = ObjcTypeNameNode.swift; sourceTree = ""; }; + OBJ_283 /* ObjcTypedefNode.swift */ = {isa = PBXFileReference; path = ObjcTypedefNode.swift; sourceTree = ""; }; + OBJ_284 /* ObjcUnknownNode.swift */ = {isa = PBXFileReference; path = ObjcUnknownNode.swift; sourceTree = ""; }; + OBJ_285 /* ObjcVariableDeclarationNode.swift */ = {isa = PBXFileReference; path = ObjcVariableDeclarationNode.swift; sourceTree = ""; }; + OBJ_287 /* ConstantExtractor.swift */ = {isa = PBXFileReference; path = ConstantExtractor.swift; sourceTree = ""; }; + OBJ_289 /* AntlrDeclarationParser.swift */ = {isa = PBXFileReference; path = AntlrDeclarationParser.swift; sourceTree = ""; }; OBJ_29 /* IntentionCollectionUsageAnalyzer.swift */ = {isa = PBXFileReference; path = IntentionCollectionUsageAnalyzer.swift; sourceTree = ""; }; - OBJ_290 /* DefinitionCollector.swift */ = {isa = PBXFileReference; path = DefinitionCollector.swift; sourceTree = ""; }; - OBJ_291 /* Lexer+ObjcLexing.swift */ = {isa = PBXFileReference; path = "Lexer+ObjcLexing.swift"; sourceTree = ""; }; - OBJ_292 /* NodeContext.swift */ = {isa = PBXFileReference; path = NodeContext.swift; sourceTree = ""; }; - OBJ_293 /* NonnullContextQuerier.swift */ = {isa = PBXFileReference; path = NonnullContextQuerier.swift; sourceTree = ""; }; - OBJ_294 /* ObjcASTNodeFactory+DeclarationSyntax.swift */ = {isa = PBXFileReference; path = "ObjcASTNodeFactory+DeclarationSyntax.swift"; sourceTree = ""; }; - OBJ_295 /* ObjcASTNodeFactory.swift */ = {isa = PBXFileReference; path = ObjcASTNodeFactory.swift; sourceTree = ""; }; - OBJ_296 /* ObjcImportDecl.swift */ = {isa = PBXFileReference; path = ObjcImportDecl.swift; sourceTree = ""; }; - OBJ_297 /* ObjcParser.swift */ = {isa = PBXFileReference; path = ObjcParser.swift; sourceTree = ""; }; - OBJ_298 /* ObjcParserListener.swift */ = {isa = PBXFileReference; path = ObjcParserListener.swift; sourceTree = ""; }; - OBJ_299 /* ObjcParserState.swift */ = {isa = PBXFileReference; path = ObjcParserState.swift; sourceTree = ""; }; + OBJ_290 /* DeclarationExtractor.swift */ = {isa = PBXFileReference; path = DeclarationExtractor.swift; sourceTree = ""; }; + OBJ_291 /* DeclarationSyntaxElementType+ObjcType.swift */ = {isa = PBXFileReference; path = "DeclarationSyntaxElementType+ObjcType.swift"; sourceTree = ""; }; + OBJ_292 /* DeclarationSyntaxElementType.swift */ = {isa = PBXFileReference; path = DeclarationSyntaxElementType.swift; sourceTree = ""; }; + OBJ_295 /* ConstantExpressionSyntax.swift */ = {isa = PBXFileReference; path = ConstantExpressionSyntax.swift; sourceTree = ""; }; + OBJ_296 /* ExpressionSyntax.swift */ = {isa = PBXFileReference; path = ExpressionSyntax.swift; sourceTree = ""; }; + OBJ_297 /* IdentifierSyntax.swift */ = {isa = PBXFileReference; path = IdentifierSyntax.swift; sourceTree = ""; }; + OBJ_298 /* InitializerSyntax.swift */ = {isa = PBXFileReference; path = InitializerSyntax.swift; sourceTree = ""; }; + OBJ_299 /* ParameterDeclarationSyntax.swift */ = {isa = PBXFileReference; path = ParameterDeclarationSyntax.swift; sourceTree = ""; }; OBJ_30 /* LocalUsageAnalyzer.swift */ = {isa = PBXFileReference; path = LocalUsageAnalyzer.swift; sourceTree = ""; }; - OBJ_300 /* ObjcPreprocessorListener.swift */ = {isa = PBXFileReference; path = ObjcPreprocessorListener.swift; sourceTree = ""; }; - OBJ_301 /* ObjcTokenType+TokenProtocol.swift */ = {isa = PBXFileReference; path = "ObjcTokenType+TokenProtocol.swift"; sourceTree = ""; }; - OBJ_302 /* ObjcTypeParser.swift */ = {isa = PBXFileReference; path = ObjcTypeParser.swift; sourceTree = ""; }; - OBJ_303 /* ObjectiveCParser+ParserRuleContext.swift */ = {isa = PBXFileReference; path = "ObjectiveCParser+ParserRuleContext.swift"; sourceTree = ""; }; - OBJ_304 /* ObjectiveCParser+RuleExt.swift */ = {isa = PBXFileReference; path = "ObjectiveCParser+RuleExt.swift"; sourceTree = ""; }; - OBJ_305 /* ObjectiveCPreprocessor.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessor.swift; sourceTree = ""; }; - OBJ_306 /* Source+Ext.swift */ = {isa = PBXFileReference; path = "Source+Ext.swift"; sourceTree = ""; }; - OBJ_307 /* VarDeclarationIdentifierNameExtractor.swift */ = {isa = PBXFileReference; path = VarDeclarationIdentifierNameExtractor.swift; sourceTree = ""; }; - OBJ_309 /* ObjectiveCLexer.swift */ = {isa = PBXFileReference; path = ObjectiveCLexer.swift; sourceTree = ""; }; + OBJ_300 /* ParameterListSyntax.swift */ = {isa = PBXFileReference; path = ParameterListSyntax.swift; sourceTree = ""; }; + OBJ_301 /* ParameterTypeListSyntax.swift */ = {isa = PBXFileReference; path = ParameterTypeListSyntax.swift; sourceTree = ""; }; + OBJ_302 /* PointerSyntax.swift */ = {isa = PBXFileReference; path = PointerSyntax.swift; sourceTree = ""; }; + OBJ_303 /* ProtocolReferenceListSyntax.swift */ = {isa = PBXFileReference; path = ProtocolReferenceListSyntax.swift; sourceTree = ""; }; + OBJ_304 /* SpecifierQualifierListSyntax.swift */ = {isa = PBXFileReference; path = SpecifierQualifierListSyntax.swift; sourceTree = ""; }; + OBJ_305 /* TypeQualifierListSyntax.swift */ = {isa = PBXFileReference; path = TypeQualifierListSyntax.swift; sourceTree = ""; }; + OBJ_306 /* DeclarationSpecifierSyntax.swift */ = {isa = PBXFileReference; path = DeclarationSpecifierSyntax.swift; sourceTree = ""; }; + OBJ_308 /* AlignmentSpecifierSyntax.swift */ = {isa = PBXFileReference; path = AlignmentSpecifierSyntax.swift; sourceTree = ""; }; + OBJ_309 /* ArcBehaviourSpecifierSyntax.swift */ = {isa = PBXFileReference; path = ArcBehaviourSpecifierSyntax.swift; sourceTree = ""; }; OBJ_31 /* LocalUsageAnalyzerType.swift */ = {isa = PBXFileReference; path = LocalUsageAnalyzerType.swift; sourceTree = ""; }; - OBJ_310 /* ObjectiveCParser.swift */ = {isa = PBXFileReference; path = ObjectiveCParser.swift; sourceTree = ""; }; - OBJ_311 /* ObjectiveCParserBaseListener.swift */ = {isa = PBXFileReference; path = ObjectiveCParserBaseListener.swift; sourceTree = ""; }; - OBJ_312 /* ObjectiveCParserBaseVisitor.swift */ = {isa = PBXFileReference; path = ObjectiveCParserBaseVisitor.swift; sourceTree = ""; }; - OBJ_313 /* ObjectiveCParserListener.swift */ = {isa = PBXFileReference; path = ObjectiveCParserListener.swift; sourceTree = ""; }; - OBJ_314 /* ObjectiveCParserVisitor.swift */ = {isa = PBXFileReference; path = ObjectiveCParserVisitor.swift; sourceTree = ""; }; - OBJ_315 /* ObjectiveCPreprocessorLexer.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorLexer.swift; sourceTree = ""; }; - OBJ_316 /* ObjectiveCPreprocessorParser.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorParser.swift; sourceTree = ""; }; - OBJ_317 /* ObjectiveCPreprocessorParserBaseListener.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorParserBaseListener.swift; sourceTree = ""; }; - OBJ_318 /* ObjectiveCPreprocessorParserBaseVisitor.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorParserBaseVisitor.swift; sourceTree = ""; }; - OBJ_319 /* ObjectiveCPreprocessorParserListener.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorParserListener.swift; sourceTree = ""; }; + OBJ_310 /* BlockDeclarationSpecifierSyntax.swift */ = {isa = PBXFileReference; path = BlockDeclarationSpecifierSyntax.swift; sourceTree = ""; }; + OBJ_311 /* FunctionSpecifierSyntax.swift */ = {isa = PBXFileReference; path = FunctionSpecifierSyntax.swift; sourceTree = ""; }; + OBJ_312 /* IBOutletQualifierSyntax.swift */ = {isa = PBXFileReference; path = IBOutletQualifierSyntax.swift; sourceTree = ""; }; + OBJ_313 /* NullabilitySpecifierSyntax.swift */ = {isa = PBXFileReference; path = NullabilitySpecifierSyntax.swift; sourceTree = ""; }; + OBJ_314 /* ProtocolQualifierSyntax.swift */ = {isa = PBXFileReference; path = ProtocolQualifierSyntax.swift; sourceTree = ""; }; + OBJ_315 /* StorageClassSpecifierSyntax.swift */ = {isa = PBXFileReference; path = StorageClassSpecifierSyntax.swift; sourceTree = ""; }; + OBJ_316 /* TypePrefixSyntax.swift */ = {isa = PBXFileReference; path = TypePrefixSyntax.swift; sourceTree = ""; }; + OBJ_317 /* TypeQualifierSyntax.swift */ = {isa = PBXFileReference; path = TypeQualifierSyntax.swift; sourceTree = ""; }; + OBJ_318 /* TypeSpecifierSyntax.swift */ = {isa = PBXFileReference; path = TypeSpecifierSyntax.swift; sourceTree = ""; }; OBJ_32 /* UsageAnalysis.swift */ = {isa = PBXFileReference; path = UsageAnalysis.swift; sourceTree = ""; }; - OBJ_320 /* ObjectiveCPreprocessorParserVisitor.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorParserVisitor.swift; sourceTree = ""; }; - OBJ_321 /* shim.swift */ = {isa = PBXFileReference; path = shim.swift; sourceTree = ""; }; - OBJ_323 /* CPreprocessorDirectiveConverter.swift */ = {isa = PBXFileReference; path = CPreprocessorDirectiveConverter.swift; sourceTree = ""; }; - OBJ_325 /* ObjectiveCASTCorrectorExpressionPass.swift */ = {isa = PBXFileReference; path = ObjectiveCASTCorrectorExpressionPass.swift; sourceTree = ""; }; - OBJ_326 /* Intention+Metadata.swift */ = {isa = PBXFileReference; path = "Intention+Metadata.swift"; sourceTree = ""; }; - OBJ_327 /* Intention+TypedSource.swift */ = {isa = PBXFileReference; path = "Intention+TypedSource.swift"; sourceTree = ""; }; - OBJ_329 /* ObjectiveCPropertyMergeIntentionPass.swift */ = {isa = PBXFileReference; path = ObjectiveCPropertyMergeIntentionPass.swift; sourceTree = ""; }; - OBJ_330 /* MandatoryIntentionPass.swift */ = {isa = PBXFileReference; path = MandatoryIntentionPass.swift; sourceTree = ""; }; - OBJ_331 /* MandatorySyntaxNodePass.swift */ = {isa = PBXFileReference; path = MandatorySyntaxNodePass.swift; sourceTree = ""; }; - OBJ_332 /* ObjcParserStatePool.swift */ = {isa = PBXFileReference; path = ObjcParserStatePool.swift; sourceTree = ""; }; - OBJ_333 /* ObjectiveC2SwiftRewriter.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriter.swift; sourceTree = ""; }; - OBJ_334 /* ObjectiveC2SwiftRewriterJob.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriterJob.swift; sourceTree = ""; }; - OBJ_335 /* ObjectiveC2SwiftRewriterJobBuilder.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriterJobBuilder.swift; sourceTree = ""; }; - OBJ_336 /* ObjectiveCASTReader.swift */ = {isa = PBXFileReference; path = ObjectiveCASTReader.swift; sourceTree = ""; }; - OBJ_337 /* ObjectiveCASTReaderContext.swift */ = {isa = PBXFileReference; path = ObjectiveCASTReaderContext.swift; sourceTree = ""; }; - OBJ_338 /* ObjectiveCExprASTReader.swift */ = {isa = PBXFileReference; path = ObjectiveCExprASTReader.swift; sourceTree = ""; }; - OBJ_339 /* ObjectiveCFileCollectionStep.swift */ = {isa = PBXFileReference; path = ObjectiveCFileCollectionStep.swift; sourceTree = ""; }; + OBJ_320 /* EnumSpecifierSyntax.swift */ = {isa = PBXFileReference; path = EnumSpecifierSyntax.swift; sourceTree = ""; }; + OBJ_321 /* GenericTypeSpecifierSyntax.swift */ = {isa = PBXFileReference; path = GenericTypeSpecifierSyntax.swift; sourceTree = ""; }; + OBJ_322 /* ScalarTypeSpecifierSyntax.swift */ = {isa = PBXFileReference; path = ScalarTypeSpecifierSyntax.swift; sourceTree = ""; }; + OBJ_323 /* StructOrUnionSpecifierSyntax.swift */ = {isa = PBXFileReference; path = StructOrUnionSpecifierSyntax.swift; sourceTree = ""; }; + OBJ_324 /* TypeIdentifierSyntax.swift */ = {isa = PBXFileReference; path = TypeIdentifierSyntax.swift; sourceTree = ""; }; + OBJ_325 /* DeclarationSpecifiersSyntax.swift */ = {isa = PBXFileReference; path = DeclarationSpecifiersSyntax.swift; sourceTree = ""; }; + OBJ_326 /* DeclarationSyntax.swift */ = {isa = PBXFileReference; path = DeclarationSyntax.swift; sourceTree = ""; }; + OBJ_328 /* DeclaratorSyntax.swift */ = {isa = PBXFileReference; path = DeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_329 /* DirectDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = DirectDeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_331 /* ArrayDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = ArrayDeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_332 /* BlockDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = BlockDeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_333 /* FunctionDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = FunctionDeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_334 /* FieldDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = FieldDeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_335 /* FieldDeclarationSyntax.swift */ = {isa = PBXFileReference; path = FieldDeclarationSyntax.swift; sourceTree = ""; }; + OBJ_336 /* InitDeclarationListSyntax.swift */ = {isa = PBXFileReference; path = InitDeclarationListSyntax.swift; sourceTree = ""; }; + OBJ_337 /* InitDeclarationSyntax.swift */ = {isa = PBXFileReference; path = InitDeclarationSyntax.swift; sourceTree = ""; }; + OBJ_339 /* AbstractDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = AbstractDeclaratorSyntax.swift; sourceTree = ""; }; OBJ_34 /* AntlrDiagnosticsErrorListener.swift */ = {isa = PBXFileReference; path = AntlrDiagnosticsErrorListener.swift; sourceTree = ""; }; - OBJ_340 /* ObjectiveCFileCollectionStepDelegate.swift */ = {isa = PBXFileReference; path = ObjectiveCFileCollectionStepDelegate.swift; sourceTree = ""; }; - OBJ_341 /* ObjectiveCFrontend.swift */ = {isa = PBXFileReference; path = ObjectiveCFrontend.swift; sourceTree = ""; }; - OBJ_342 /* ObjectiveCImportDirectiveFileCollectionDelegate.swift */ = {isa = PBXFileReference; path = ObjectiveCImportDirectiveFileCollectionDelegate.swift; sourceTree = ""; }; - OBJ_343 /* ObjectiveCIntentionCollector.swift */ = {isa = PBXFileReference; path = ObjectiveCIntentionCollector.swift; sourceTree = ""; }; - OBJ_344 /* ObjectiveCMethodSignatureConverter.swift */ = {isa = PBXFileReference; path = ObjectiveCMethodSignatureConverter.swift; sourceTree = ""; }; - OBJ_345 /* ObjectiveCParserCache.swift */ = {isa = PBXFileReference; path = ObjectiveCParserCache.swift; sourceTree = ""; }; - OBJ_346 /* ObjectiveCStatementASTReader.swift */ = {isa = PBXFileReference; path = ObjectiveCStatementASTReader.swift; sourceTree = ""; }; - OBJ_347 /* ObjectiveCSwiftRewriterService.swift */ = {isa = PBXFileReference; path = ObjectiveCSwiftRewriterService.swift; sourceTree = ""; }; - OBJ_349 /* QuickSpecPreprocessor.swift */ = {isa = PBXFileReference; path = QuickSpecPreprocessor.swift; sourceTree = ""; }; + OBJ_340 /* DirectAbstractDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = DirectAbstractDeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_342 /* ArrayAbstractDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = ArrayAbstractDeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_343 /* BlockAbstractDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = BlockAbstractDeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_344 /* FunctionAbstractDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = FunctionAbstractDeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_345 /* TypeNameSyntax.swift */ = {isa = PBXFileReference; path = TypeNameSyntax.swift; sourceTree = ""; }; + OBJ_346 /* TypeVariableDeclaratorSyntax.swift */ = {isa = PBXFileReference; path = TypeVariableDeclaratorSyntax.swift; sourceTree = ""; }; + OBJ_347 /* DeclarationTranslator.swift */ = {isa = PBXFileReference; path = DeclarationTranslator.swift; sourceTree = ""; }; + OBJ_348 /* DefinitionCollector.swift */ = {isa = PBXFileReference; path = DefinitionCollector.swift; sourceTree = ""; }; + OBJ_349 /* Lexer+ObjcLexing.swift */ = {isa = PBXFileReference; path = "Lexer+ObjcLexing.swift"; sourceTree = ""; }; OBJ_35 /* AntlrParser.swift */ = {isa = PBXFileReference; path = AntlrParser.swift; sourceTree = ""; }; - OBJ_350 /* SourcePreprocessor.swift */ = {isa = PBXFileReference; path = SourcePreprocessor.swift; sourceTree = ""; }; - OBJ_352 /* AccessLevel.swift */ = {isa = PBXFileReference; path = AccessLevel.swift; sourceTree = ""; }; - OBJ_354 /* SwiftComment.swift */ = {isa = PBXFileReference; path = SwiftComment.swift; sourceTree = ""; }; - OBJ_355 /* Expression+Ext.swift */ = {isa = PBXFileReference; path = "Expression+Ext.swift"; sourceTree = ""; }; - OBJ_356 /* Expression+Matcher.swift */ = {isa = PBXFileReference; path = "Expression+Matcher.swift"; sourceTree = ""; }; - OBJ_357 /* Expression+Transformer.swift */ = {isa = PBXFileReference; path = "Expression+Transformer.swift"; sourceTree = ""; }; - OBJ_358 /* Expression.swift */ = {isa = PBXFileReference; path = Expression.swift; sourceTree = ""; }; + OBJ_350 /* NodeContext.swift */ = {isa = PBXFileReference; path = NodeContext.swift; sourceTree = ""; }; + OBJ_351 /* NonnullContextQuerier.swift */ = {isa = PBXFileReference; path = NonnullContextQuerier.swift; sourceTree = ""; }; + OBJ_352 /* ObjcASTNodeFactory+DeclarationSyntax.swift */ = {isa = PBXFileReference; path = "ObjcASTNodeFactory+DeclarationSyntax.swift"; sourceTree = ""; }; + OBJ_353 /* ObjcASTNodeFactory.swift */ = {isa = PBXFileReference; path = ObjcASTNodeFactory.swift; sourceTree = ""; }; + OBJ_354 /* ObjcImportDecl.swift */ = {isa = PBXFileReference; path = ObjcImportDecl.swift; sourceTree = ""; }; + OBJ_355 /* ObjcParser.swift */ = {isa = PBXFileReference; path = ObjcParser.swift; sourceTree = ""; }; + OBJ_356 /* ObjcParserListener.swift */ = {isa = PBXFileReference; path = ObjcParserListener.swift; sourceTree = ""; }; + OBJ_357 /* ObjcParserState.swift */ = {isa = PBXFileReference; path = ObjcParserState.swift; sourceTree = ""; }; + OBJ_358 /* ObjcPreprocessorListener.swift */ = {isa = PBXFileReference; path = ObjcPreprocessorListener.swift; sourceTree = ""; }; + OBJ_359 /* ObjcTokenType+TokenProtocol.swift */ = {isa = PBXFileReference; path = "ObjcTokenType+TokenProtocol.swift"; sourceTree = ""; }; OBJ_36 /* AntlrSettings.swift */ = {isa = PBXFileReference; path = AntlrSettings.swift; sourceTree = ""; }; - OBJ_360 /* ArrayLiteralExpression.swift */ = {isa = PBXFileReference; path = ArrayLiteralExpression.swift; sourceTree = ""; }; - OBJ_361 /* AssignmentExpression.swift */ = {isa = PBXFileReference; path = AssignmentExpression.swift; sourceTree = ""; }; - OBJ_362 /* BinaryExpression.swift */ = {isa = PBXFileReference; path = BinaryExpression.swift; sourceTree = ""; }; - OBJ_363 /* BlockLiteralExpression.swift */ = {isa = PBXFileReference; path = BlockLiteralExpression.swift; sourceTree = ""; }; - OBJ_364 /* CastExpression.swift */ = {isa = PBXFileReference; path = CastExpression.swift; sourceTree = ""; }; - OBJ_365 /* ConstantExpression.swift */ = {isa = PBXFileReference; path = ConstantExpression.swift; sourceTree = ""; }; - OBJ_366 /* DictionaryLiteralExpression.swift */ = {isa = PBXFileReference; path = DictionaryLiteralExpression.swift; sourceTree = ""; }; - OBJ_367 /* ExpressionPostfixBuildable.swift */ = {isa = PBXFileReference; path = ExpressionPostfixBuildable.swift; sourceTree = ""; }; - OBJ_368 /* IdentifierExpression.swift */ = {isa = PBXFileReference; path = IdentifierExpression.swift; sourceTree = ""; }; - OBJ_369 /* OptionalAccessPostfixBuilder.swift */ = {isa = PBXFileReference; path = OptionalAccessPostfixBuilder.swift; sourceTree = ""; }; + OBJ_360 /* ObjcTypeParser.swift */ = {isa = PBXFileReference; path = ObjcTypeParser.swift; sourceTree = ""; }; + OBJ_361 /* ObjectiveCParser+ParserRuleContext.swift */ = {isa = PBXFileReference; path = "ObjectiveCParser+ParserRuleContext.swift"; sourceTree = ""; }; + OBJ_362 /* ObjectiveCParser+RuleExt.swift */ = {isa = PBXFileReference; path = "ObjectiveCParser+RuleExt.swift"; sourceTree = ""; }; + OBJ_363 /* ObjectiveCPreprocessor.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessor.swift; sourceTree = ""; }; + OBJ_364 /* Source+Ext.swift */ = {isa = PBXFileReference; path = "Source+Ext.swift"; sourceTree = ""; }; + OBJ_365 /* VarDeclarationIdentifierNameExtractor.swift */ = {isa = PBXFileReference; path = VarDeclarationIdentifierNameExtractor.swift; sourceTree = ""; }; + OBJ_367 /* ObjectiveCLexer.swift */ = {isa = PBXFileReference; path = ObjectiveCLexer.swift; sourceTree = ""; }; + OBJ_368 /* ObjectiveCParser.swift */ = {isa = PBXFileReference; path = ObjectiveCParser.swift; sourceTree = ""; }; + OBJ_369 /* ObjectiveCParserBaseListener.swift */ = {isa = PBXFileReference; path = ObjectiveCParserBaseListener.swift; sourceTree = ""; }; OBJ_37 /* AntlrTypeAliases.swift */ = {isa = PBXFileReference; path = AntlrTypeAliases.swift; sourceTree = ""; }; - OBJ_370 /* ParensExpression.swift */ = {isa = PBXFileReference; path = ParensExpression.swift; sourceTree = ""; }; - OBJ_372 /* FunctionCallPostfix.swift */ = {isa = PBXFileReference; path = FunctionCallPostfix.swift; sourceTree = ""; }; - OBJ_373 /* MemberPostfix.swift */ = {isa = PBXFileReference; path = MemberPostfix.swift; sourceTree = ""; }; - OBJ_374 /* Postfix.swift */ = {isa = PBXFileReference; path = Postfix.swift; sourceTree = ""; }; - OBJ_375 /* SubscriptPostfix.swift */ = {isa = PBXFileReference; path = SubscriptPostfix.swift; sourceTree = ""; }; - OBJ_376 /* PostfixExpression.swift */ = {isa = PBXFileReference; path = PostfixExpression.swift; sourceTree = ""; }; - OBJ_377 /* PrefixExpression.swift */ = {isa = PBXFileReference; path = PrefixExpression.swift; sourceTree = ""; }; - OBJ_378 /* SelectorExpression.swift */ = {isa = PBXFileReference; path = SelectorExpression.swift; sourceTree = ""; }; - OBJ_379 /* SizeOfExpression.swift */ = {isa = PBXFileReference; path = SizeOfExpression.swift; sourceTree = ""; }; - OBJ_380 /* TernaryExpression.swift */ = {isa = PBXFileReference; path = TernaryExpression.swift; sourceTree = ""; }; - OBJ_381 /* TryExpression.swift */ = {isa = PBXFileReference; path = TryExpression.swift; sourceTree = ""; }; - OBJ_382 /* TupleExpression.swift */ = {isa = PBXFileReference; path = TupleExpression.swift; sourceTree = ""; }; - OBJ_383 /* TypeCheckExpression.swift */ = {isa = PBXFileReference; path = TypeCheckExpression.swift; sourceTree = ""; }; - OBJ_384 /* UnaryExpression.swift */ = {isa = PBXFileReference; path = UnaryExpression.swift; sourceTree = ""; }; - OBJ_385 /* UnknownExpression.swift */ = {isa = PBXFileReference; path = UnknownExpression.swift; sourceTree = ""; }; - OBJ_386 /* ExpressionKind.swift */ = {isa = PBXFileReference; path = ExpressionKind.swift; sourceTree = ""; }; - OBJ_387 /* FunctionSignatureParser.swift */ = {isa = PBXFileReference; path = FunctionSignatureParser.swift; sourceTree = ""; }; - OBJ_388 /* Matchable.swift */ = {isa = PBXFileReference; path = Matchable.swift; sourceTree = ""; }; - OBJ_389 /* Ownership.swift */ = {isa = PBXFileReference; path = Ownership.swift; sourceTree = ""; }; + OBJ_370 /* ObjectiveCParserBaseVisitor.swift */ = {isa = PBXFileReference; path = ObjectiveCParserBaseVisitor.swift; sourceTree = ""; }; + OBJ_371 /* ObjectiveCParserListener.swift */ = {isa = PBXFileReference; path = ObjectiveCParserListener.swift; sourceTree = ""; }; + OBJ_372 /* ObjectiveCParserVisitor.swift */ = {isa = PBXFileReference; path = ObjectiveCParserVisitor.swift; sourceTree = ""; }; + OBJ_373 /* ObjectiveCPreprocessorLexer.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorLexer.swift; sourceTree = ""; }; + OBJ_374 /* ObjectiveCPreprocessorParser.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorParser.swift; sourceTree = ""; }; + OBJ_375 /* ObjectiveCPreprocessorParserBaseListener.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorParserBaseListener.swift; sourceTree = ""; }; + OBJ_376 /* ObjectiveCPreprocessorParserBaseVisitor.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorParserBaseVisitor.swift; sourceTree = ""; }; + OBJ_377 /* ObjectiveCPreprocessorParserListener.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorParserListener.swift; sourceTree = ""; }; + OBJ_378 /* ObjectiveCPreprocessorParserVisitor.swift */ = {isa = PBXFileReference; path = ObjectiveCPreprocessorParserVisitor.swift; sourceTree = ""; }; + OBJ_379 /* shim.swift */ = {isa = PBXFileReference; path = shim.swift; sourceTree = ""; }; + OBJ_381 /* CPreprocessorDirectiveConverter.swift */ = {isa = PBXFileReference; path = CPreprocessorDirectiveConverter.swift; sourceTree = ""; }; + OBJ_383 /* ObjectiveCASTCorrectorExpressionPass.swift */ = {isa = PBXFileReference; path = ObjectiveCASTCorrectorExpressionPass.swift; sourceTree = ""; }; + OBJ_384 /* Intention+Metadata.swift */ = {isa = PBXFileReference; path = "Intention+Metadata.swift"; sourceTree = ""; }; + OBJ_385 /* Intention+TypedSource.swift */ = {isa = PBXFileReference; path = "Intention+TypedSource.swift"; sourceTree = ""; }; + OBJ_387 /* ObjectiveCPropertyMergeIntentionPass.swift */ = {isa = PBXFileReference; path = ObjectiveCPropertyMergeIntentionPass.swift; sourceTree = ""; }; + OBJ_388 /* MandatoryIntentionPass.swift */ = {isa = PBXFileReference; path = MandatoryIntentionPass.swift; sourceTree = ""; }; + OBJ_389 /* MandatorySyntaxNodePass.swift */ = {isa = PBXFileReference; path = MandatorySyntaxNodePass.swift; sourceTree = ""; }; OBJ_39 /* ArgumentRewritingStrategy.swift */ = {isa = PBXFileReference; path = ArgumentRewritingStrategy.swift; sourceTree = ""; }; - OBJ_390 /* Pattern.swift */ = {isa = PBXFileReference; path = Pattern.swift; sourceTree = ""; }; - OBJ_391 /* PostfixChainInverter.swift */ = {isa = PBXFileReference; path = PostfixChainInverter.swift; sourceTree = ""; }; - OBJ_393 /* KeyedDecodingContainerProtocol+SwiftAST.swift */ = {isa = PBXFileReference; path = "KeyedDecodingContainerProtocol+SwiftAST.swift"; sourceTree = ""; }; - OBJ_394 /* KeyedEncodingContainerProtocol+SwiftAST.swift */ = {isa = PBXFileReference; path = "KeyedEncodingContainerProtocol+SwiftAST.swift"; sourceTree = ""; }; - OBJ_395 /* SerializationOptions.swift */ = {isa = PBXFileReference; path = SerializationOptions.swift; sourceTree = ""; }; - OBJ_396 /* SwiftASTSerializer.swift */ = {isa = PBXFileReference; path = SwiftASTSerializer.swift; sourceTree = ""; }; - OBJ_397 /* UnkeyedDecodingContainer+SwiftAST.swift */ = {isa = PBXFileReference; path = "UnkeyedDecodingContainer+SwiftAST.swift"; sourceTree = ""; }; - OBJ_398 /* UnkeyedEncodingContainer+SwiftAST.swift */ = {isa = PBXFileReference; path = "UnkeyedEncodingContainer+SwiftAST.swift"; sourceTree = ""; }; - OBJ_399 /* Statement+Matcher.swift */ = {isa = PBXFileReference; path = "Statement+Matcher.swift"; sourceTree = ""; }; + OBJ_390 /* ObjcParserStatePool.swift */ = {isa = PBXFileReference; path = ObjcParserStatePool.swift; sourceTree = ""; }; + OBJ_391 /* ObjectiveC2SwiftRewriter.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriter.swift; sourceTree = ""; }; + OBJ_392 /* ObjectiveC2SwiftRewriterJob.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriterJob.swift; sourceTree = ""; }; + OBJ_393 /* ObjectiveC2SwiftRewriterJobBuilder.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriterJobBuilder.swift; sourceTree = ""; }; + OBJ_394 /* ObjectiveCASTReader.swift */ = {isa = PBXFileReference; path = ObjectiveCASTReader.swift; sourceTree = ""; }; + OBJ_395 /* ObjectiveCASTReaderContext.swift */ = {isa = PBXFileReference; path = ObjectiveCASTReaderContext.swift; sourceTree = ""; }; + OBJ_396 /* ObjectiveCExprASTReader.swift */ = {isa = PBXFileReference; path = ObjectiveCExprASTReader.swift; sourceTree = ""; }; + OBJ_397 /* ObjectiveCFileCollectionStep.swift */ = {isa = PBXFileReference; path = ObjectiveCFileCollectionStep.swift; sourceTree = ""; }; + OBJ_398 /* ObjectiveCFileCollectionStepDelegate.swift */ = {isa = PBXFileReference; path = ObjectiveCFileCollectionStepDelegate.swift; sourceTree = ""; }; + OBJ_399 /* ObjectiveCFrontend.swift */ = {isa = PBXFileReference; path = ObjectiveCFrontend.swift; sourceTree = ""; }; OBJ_40 /* CompoundedMappingType.swift */ = {isa = PBXFileReference; path = CompoundedMappingType.swift; sourceTree = ""; }; - OBJ_400 /* Statement.swift */ = {isa = PBXFileReference; path = Statement.swift; sourceTree = ""; }; - OBJ_402 /* BreakStatement.swift */ = {isa = PBXFileReference; path = BreakStatement.swift; sourceTree = ""; }; - OBJ_403 /* CompoundStatement.swift */ = {isa = PBXFileReference; path = CompoundStatement.swift; sourceTree = ""; }; - OBJ_404 /* ContinueStatement.swift */ = {isa = PBXFileReference; path = ContinueStatement.swift; sourceTree = ""; }; - OBJ_405 /* DeferStatement.swift */ = {isa = PBXFileReference; path = DeferStatement.swift; sourceTree = ""; }; - OBJ_406 /* DoStatement.swift */ = {isa = PBXFileReference; path = DoStatement.swift; sourceTree = ""; }; - OBJ_407 /* ExpressionsStatement.swift */ = {isa = PBXFileReference; path = ExpressionsStatement.swift; sourceTree = ""; }; - OBJ_408 /* FallthroughStatement.swift */ = {isa = PBXFileReference; path = FallthroughStatement.swift; sourceTree = ""; }; - OBJ_409 /* ForStatement.swift */ = {isa = PBXFileReference; path = ForStatement.swift; sourceTree = ""; }; + OBJ_400 /* ObjectiveCImportDirectiveFileCollectionDelegate.swift */ = {isa = PBXFileReference; path = ObjectiveCImportDirectiveFileCollectionDelegate.swift; sourceTree = ""; }; + OBJ_401 /* ObjectiveCIntentionCollector.swift */ = {isa = PBXFileReference; path = ObjectiveCIntentionCollector.swift; sourceTree = ""; }; + OBJ_402 /* ObjectiveCMethodSignatureConverter.swift */ = {isa = PBXFileReference; path = ObjectiveCMethodSignatureConverter.swift; sourceTree = ""; }; + OBJ_403 /* ObjectiveCParserCache.swift */ = {isa = PBXFileReference; path = ObjectiveCParserCache.swift; sourceTree = ""; }; + OBJ_404 /* ObjectiveCStatementASTReader.swift */ = {isa = PBXFileReference; path = ObjectiveCStatementASTReader.swift; sourceTree = ""; }; + OBJ_405 /* ObjectiveCSwiftRewriterService.swift */ = {isa = PBXFileReference; path = ObjectiveCSwiftRewriterService.swift; sourceTree = ""; }; + OBJ_407 /* QuickSpecPreprocessor.swift */ = {isa = PBXFileReference; path = QuickSpecPreprocessor.swift; sourceTree = ""; }; + OBJ_408 /* SourcePreprocessor.swift */ = {isa = PBXFileReference; path = SourcePreprocessor.swift; sourceTree = ""; }; OBJ_41 /* CompoundedMappingTypeList.swift */ = {isa = PBXFileReference; path = CompoundedMappingTypeList.swift; sourceTree = ""; }; - OBJ_410 /* IfStatement.swift */ = {isa = PBXFileReference; path = IfStatement.swift; sourceTree = ""; }; - OBJ_411 /* LocalFunctionStatement.swift */ = {isa = PBXFileReference; path = LocalFunctionStatement.swift; sourceTree = ""; }; - OBJ_412 /* RepeatWhileStatement.swift */ = {isa = PBXFileReference; path = RepeatWhileStatement.swift; sourceTree = ""; }; - OBJ_413 /* ReturnStatement.swift */ = {isa = PBXFileReference; path = ReturnStatement.swift; sourceTree = ""; }; - OBJ_414 /* SwitchStatement.swift */ = {isa = PBXFileReference; path = SwitchStatement.swift; sourceTree = ""; }; - OBJ_415 /* ThrowStatement.swift */ = {isa = PBXFileReference; path = ThrowStatement.swift; sourceTree = ""; }; - OBJ_416 /* UnknownStatement.swift */ = {isa = PBXFileReference; path = UnknownStatement.swift; sourceTree = ""; }; - OBJ_417 /* VariableDeclarationsStatement.swift */ = {isa = PBXFileReference; path = VariableDeclarationsStatement.swift; sourceTree = ""; }; - OBJ_418 /* WhiteStatement.swift */ = {isa = PBXFileReference; path = WhiteStatement.swift; sourceTree = ""; }; - OBJ_419 /* StatementKind.swift */ = {isa = PBXFileReference; path = StatementKind.swift; sourceTree = ""; }; + OBJ_410 /* AccessLevel.swift */ = {isa = PBXFileReference; path = AccessLevel.swift; sourceTree = ""; }; + OBJ_412 /* SwiftComment.swift */ = {isa = PBXFileReference; path = SwiftComment.swift; sourceTree = ""; }; + OBJ_413 /* Expression+Ext.swift */ = {isa = PBXFileReference; path = "Expression+Ext.swift"; sourceTree = ""; }; + OBJ_414 /* Expression+Matcher.swift */ = {isa = PBXFileReference; path = "Expression+Matcher.swift"; sourceTree = ""; }; + OBJ_415 /* Expression+Transformer.swift */ = {isa = PBXFileReference; path = "Expression+Transformer.swift"; sourceTree = ""; }; + OBJ_416 /* Expression.swift */ = {isa = PBXFileReference; path = Expression.swift; sourceTree = ""; }; + OBJ_418 /* ArrayLiteralExpression.swift */ = {isa = PBXFileReference; path = ArrayLiteralExpression.swift; sourceTree = ""; }; + OBJ_419 /* AssignmentExpression.swift */ = {isa = PBXFileReference; path = AssignmentExpression.swift; sourceTree = ""; }; OBJ_42 /* CoreGraphicsCompoundTypes.swift */ = {isa = PBXFileReference; path = CoreGraphicsCompoundTypes.swift; sourceTree = ""; }; - OBJ_421 /* FunctionIdentifier.swift */ = {isa = PBXFileReference; path = FunctionIdentifier.swift; sourceTree = ""; }; - OBJ_422 /* FunctionSignature.swift */ = {isa = PBXFileReference; path = FunctionSignature.swift; sourceTree = ""; }; - OBJ_423 /* LocalFunction.swift */ = {isa = PBXFileReference; path = LocalFunction.swift; sourceTree = ""; }; - OBJ_424 /* ObjcPropertyAttribute.swift */ = {isa = PBXFileReference; path = ObjcPropertyAttribute.swift; sourceTree = ""; }; - OBJ_425 /* ParameterSignature.swift */ = {isa = PBXFileReference; path = ParameterSignature.swift; sourceTree = ""; }; - OBJ_426 /* SelectorSignature.swift */ = {isa = PBXFileReference; path = SelectorSignature.swift; sourceTree = ""; }; - OBJ_427 /* SubscriptIdentifier.swift */ = {isa = PBXFileReference; path = SubscriptIdentifier.swift; sourceTree = ""; }; - OBJ_428 /* SubscriptSignature.swift */ = {isa = PBXFileReference; path = SubscriptSignature.swift; sourceTree = ""; }; - OBJ_429 /* SwiftOperator.swift */ = {isa = PBXFileReference; path = SwiftOperator.swift; sourceTree = ""; }; + OBJ_420 /* BinaryExpression.swift */ = {isa = PBXFileReference; path = BinaryExpression.swift; sourceTree = ""; }; + OBJ_421 /* BlockLiteralExpression.swift */ = {isa = PBXFileReference; path = BlockLiteralExpression.swift; sourceTree = ""; }; + OBJ_422 /* CastExpression.swift */ = {isa = PBXFileReference; path = CastExpression.swift; sourceTree = ""; }; + OBJ_423 /* ConstantExpression.swift */ = {isa = PBXFileReference; path = ConstantExpression.swift; sourceTree = ""; }; + OBJ_424 /* DictionaryLiteralExpression.swift */ = {isa = PBXFileReference; path = DictionaryLiteralExpression.swift; sourceTree = ""; }; + OBJ_425 /* ExpressionPostfixBuildable.swift */ = {isa = PBXFileReference; path = ExpressionPostfixBuildable.swift; sourceTree = ""; }; + OBJ_426 /* IdentifierExpression.swift */ = {isa = PBXFileReference; path = IdentifierExpression.swift; sourceTree = ""; }; + OBJ_427 /* OptionalAccessPostfixBuilder.swift */ = {isa = PBXFileReference; path = OptionalAccessPostfixBuilder.swift; sourceTree = ""; }; + OBJ_428 /* ParensExpression.swift */ = {isa = PBXFileReference; path = ParensExpression.swift; sourceTree = ""; }; OBJ_43 /* FoundationCompoundTypes.swift */ = {isa = PBXFileReference; path = FoundationCompoundTypes.swift; sourceTree = ""; }; - OBJ_430 /* SwiftRewriterAttribute.swift */ = {isa = PBXFileReference; path = SwiftRewriterAttribute.swift; sourceTree = ""; }; - OBJ_431 /* SwiftType+Stdlib.swift */ = {isa = PBXFileReference; path = "SwiftType+Stdlib.swift"; sourceTree = ""; }; - OBJ_432 /* SwiftType.swift */ = {isa = PBXFileReference; path = SwiftType.swift; sourceTree = ""; }; - OBJ_433 /* SwiftTypeParser.swift */ = {isa = PBXFileReference; path = SwiftTypeParser.swift; sourceTree = ""; }; - OBJ_434 /* SyntaxNode.swift */ = {isa = PBXFileReference; path = SyntaxNode.swift; sourceTree = ""; }; - OBJ_435 /* SyntaxNodeIterator.swift */ = {isa = PBXFileReference; path = SyntaxNodeIterator.swift; sourceTree = ""; }; - OBJ_436 /* SyntaxNodeRewriter.swift */ = {isa = PBXFileReference; path = SyntaxNodeRewriter.swift; sourceTree = ""; }; - OBJ_437 /* TypeFormatter.swift */ = {isa = PBXFileReference; path = TypeFormatter.swift; sourceTree = ""; }; - OBJ_438 /* UnknownASTContext.swift */ = {isa = PBXFileReference; path = UnknownASTContext.swift; sourceTree = ""; }; - OBJ_439 /* ValueMatcher+Matchers.swift */ = {isa = PBXFileReference; path = "ValueMatcher+Matchers.swift"; sourceTree = ""; }; + OBJ_430 /* FunctionCallPostfix.swift */ = {isa = PBXFileReference; path = FunctionCallPostfix.swift; sourceTree = ""; }; + OBJ_431 /* MemberPostfix.swift */ = {isa = PBXFileReference; path = MemberPostfix.swift; sourceTree = ""; }; + OBJ_432 /* Postfix.swift */ = {isa = PBXFileReference; path = Postfix.swift; sourceTree = ""; }; + OBJ_433 /* SubscriptPostfix.swift */ = {isa = PBXFileReference; path = SubscriptPostfix.swift; sourceTree = ""; }; + OBJ_434 /* PostfixExpression.swift */ = {isa = PBXFileReference; path = PostfixExpression.swift; sourceTree = ""; }; + OBJ_435 /* PrefixExpression.swift */ = {isa = PBXFileReference; path = PrefixExpression.swift; sourceTree = ""; }; + OBJ_436 /* SelectorExpression.swift */ = {isa = PBXFileReference; path = SelectorExpression.swift; sourceTree = ""; }; + OBJ_437 /* SizeOfExpression.swift */ = {isa = PBXFileReference; path = SizeOfExpression.swift; sourceTree = ""; }; + OBJ_438 /* TernaryExpression.swift */ = {isa = PBXFileReference; path = TernaryExpression.swift; sourceTree = ""; }; + OBJ_439 /* TryExpression.swift */ = {isa = PBXFileReference; path = TryExpression.swift; sourceTree = ""; }; OBJ_44 /* FunctionInvocationTransformer.swift */ = {isa = PBXFileReference; path = FunctionInvocationTransformer.swift; sourceTree = ""; }; - OBJ_440 /* ValueMatcher+PartialValueMatcher.swift */ = {isa = PBXFileReference; path = "ValueMatcher+PartialValueMatcher.swift"; sourceTree = ""; }; - OBJ_441 /* ValueMatcher.swift */ = {isa = PBXFileReference; path = ValueMatcher.swift; sourceTree = ""; }; - OBJ_442 /* ValueMatcherConvertible.swift */ = {isa = PBXFileReference; path = ValueMatcherConvertible.swift; sourceTree = ""; }; - OBJ_443 /* ValueStorage.swift */ = {isa = PBXFileReference; path = ValueStorage.swift; sourceTree = ""; }; - OBJ_444 /* ValueTransformer.swift */ = {isa = PBXFileReference; path = ValueTransformer.swift; sourceTree = ""; }; - OBJ_446 /* AnonymousSyntaxNodeStatefulVisitor.swift */ = {isa = PBXFileReference; path = AnonymousSyntaxNodeStatefulVisitor.swift; sourceTree = ""; }; - OBJ_447 /* AnonymousSyntaxNodeVisitor.swift */ = {isa = PBXFileReference; path = AnonymousSyntaxNodeVisitor.swift; sourceTree = ""; }; - OBJ_448 /* BaseSyntaxNodeVisitor.swift */ = {isa = PBXFileReference; path = BaseSyntaxNodeVisitor.swift; sourceTree = ""; }; - OBJ_449 /* ExpressionVisitor.swift */ = {isa = PBXFileReference; path = ExpressionVisitor.swift; sourceTree = ""; }; + OBJ_440 /* TupleExpression.swift */ = {isa = PBXFileReference; path = TupleExpression.swift; sourceTree = ""; }; + OBJ_441 /* TypeCheckExpression.swift */ = {isa = PBXFileReference; path = TypeCheckExpression.swift; sourceTree = ""; }; + OBJ_442 /* UnaryExpression.swift */ = {isa = PBXFileReference; path = UnaryExpression.swift; sourceTree = ""; }; + OBJ_443 /* UnknownExpression.swift */ = {isa = PBXFileReference; path = UnknownExpression.swift; sourceTree = ""; }; + OBJ_444 /* ExpressionKind.swift */ = {isa = PBXFileReference; path = ExpressionKind.swift; sourceTree = ""; }; + OBJ_445 /* FunctionSignatureParser.swift */ = {isa = PBXFileReference; path = FunctionSignatureParser.swift; sourceTree = ""; }; + OBJ_446 /* Matchable.swift */ = {isa = PBXFileReference; path = Matchable.swift; sourceTree = ""; }; + OBJ_447 /* Ownership.swift */ = {isa = PBXFileReference; path = Ownership.swift; sourceTree = ""; }; + OBJ_448 /* Pattern.swift */ = {isa = PBXFileReference; path = Pattern.swift; sourceTree = ""; }; + OBJ_449 /* PostfixChainInverter.swift */ = {isa = PBXFileReference; path = PostfixChainInverter.swift; sourceTree = ""; }; OBJ_45 /* Helpers.swift */ = {isa = PBXFileReference; path = Helpers.swift; sourceTree = ""; }; - OBJ_450 /* StatementStatefulVisitor.swift */ = {isa = PBXFileReference; path = StatementStatefulVisitor.swift; sourceTree = ""; }; - OBJ_451 /* StatementVisitor.swift */ = {isa = PBXFileReference; path = StatementVisitor.swift; sourceTree = ""; }; - OBJ_453 /* GlobalOptions.swift */ = {isa = PBXFileReference; path = GlobalOptions.swift; sourceTree = ""; }; - OBJ_454 /* ObjectiveCCommand.swift */ = {isa = PBXFileReference; path = ObjectiveCCommand.swift; sourceTree = ""; }; - OBJ_455 /* ObjectiveCFrontendImpl.swift */ = {isa = PBXFileReference; path = ObjectiveCFrontendImpl.swift; sourceTree = ""; }; - OBJ_456 /* ObjectiveCSwiftRewriterServiceImpl.swift */ = {isa = PBXFileReference; path = ObjectiveCSwiftRewriterServiceImpl.swift; sourceTree = ""; }; - OBJ_457 /* StdoutFileCollectionStepListener.swift */ = {isa = PBXFileReference; path = StdoutFileCollectionStepListener.swift; sourceTree = ""; }; - OBJ_458 /* SwiftRewriterCommand.swift */ = {isa = PBXFileReference; path = SwiftRewriterCommand.swift; sourceTree = ""; }; - OBJ_459 /* Target.swift */ = {isa = PBXFileReference; path = Target.swift; sourceTree = ""; }; + OBJ_451 /* KeyedDecodingContainerProtocol+SwiftAST.swift */ = {isa = PBXFileReference; path = "KeyedDecodingContainerProtocol+SwiftAST.swift"; sourceTree = ""; }; + OBJ_452 /* KeyedEncodingContainerProtocol+SwiftAST.swift */ = {isa = PBXFileReference; path = "KeyedEncodingContainerProtocol+SwiftAST.swift"; sourceTree = ""; }; + OBJ_453 /* SerializationOptions.swift */ = {isa = PBXFileReference; path = SerializationOptions.swift; sourceTree = ""; }; + OBJ_454 /* SwiftASTSerializer.swift */ = {isa = PBXFileReference; path = SwiftASTSerializer.swift; sourceTree = ""; }; + OBJ_455 /* UnkeyedDecodingContainer+SwiftAST.swift */ = {isa = PBXFileReference; path = "UnkeyedDecodingContainer+SwiftAST.swift"; sourceTree = ""; }; + OBJ_456 /* UnkeyedEncodingContainer+SwiftAST.swift */ = {isa = PBXFileReference; path = "UnkeyedEncodingContainer+SwiftAST.swift"; sourceTree = ""; }; + OBJ_457 /* Statement+Matcher.swift */ = {isa = PBXFileReference; path = "Statement+Matcher.swift"; sourceTree = ""; }; + OBJ_458 /* Statement.swift */ = {isa = PBXFileReference; path = Statement.swift; sourceTree = ""; }; OBJ_46 /* IncompleteKnownType+CompoundType.swift */ = {isa = PBXFileReference; path = "IncompleteKnownType+CompoundType.swift"; sourceTree = ""; }; - OBJ_460 /* main.swift */ = {isa = PBXFileReference; path = main.swift; sourceTree = ""; }; - OBJ_462 /* FilesExplorer.swift */ = {isa = PBXFileReference; path = FilesExplorer.swift; sourceTree = ""; }; - OBJ_463 /* Menu.swift */ = {isa = PBXFileReference; path = Menu.swift; sourceTree = ""; }; - OBJ_464 /* Stopwatch.swift */ = {isa = PBXFileReference; path = Stopwatch.swift; sourceTree = ""; }; - OBJ_465 /* SwiftRewriterFrontend.swift */ = {isa = PBXFileReference; path = SwiftRewriterFrontend.swift; sourceTree = ""; }; - OBJ_467 /* ColorizeSyntaxVisitor.swift */ = {isa = PBXFileReference; path = ColorizeSyntaxVisitor.swift; sourceTree = ""; }; - OBJ_468 /* DiskInputFile.swift */ = {isa = PBXFileReference; path = DiskInputFile.swift; sourceTree = ""; }; - OBJ_469 /* FileDiskProvider.swift */ = {isa = PBXFileReference; path = FileDiskProvider.swift; sourceTree = ""; }; + OBJ_460 /* BreakStatement.swift */ = {isa = PBXFileReference; path = BreakStatement.swift; sourceTree = ""; }; + OBJ_461 /* CompoundStatement.swift */ = {isa = PBXFileReference; path = CompoundStatement.swift; sourceTree = ""; }; + OBJ_462 /* ContinueStatement.swift */ = {isa = PBXFileReference; path = ContinueStatement.swift; sourceTree = ""; }; + OBJ_463 /* DeferStatement.swift */ = {isa = PBXFileReference; path = DeferStatement.swift; sourceTree = ""; }; + OBJ_464 /* DoStatement.swift */ = {isa = PBXFileReference; path = DoStatement.swift; sourceTree = ""; }; + OBJ_465 /* ExpressionsStatement.swift */ = {isa = PBXFileReference; path = ExpressionsStatement.swift; sourceTree = ""; }; + OBJ_466 /* FallthroughStatement.swift */ = {isa = PBXFileReference; path = FallthroughStatement.swift; sourceTree = ""; }; + OBJ_467 /* ForStatement.swift */ = {isa = PBXFileReference; path = ForStatement.swift; sourceTree = ""; }; + OBJ_468 /* IfStatement.swift */ = {isa = PBXFileReference; path = IfStatement.swift; sourceTree = ""; }; + OBJ_469 /* LocalFunctionStatement.swift */ = {isa = PBXFileReference; path = LocalFunctionStatement.swift; sourceTree = ""; }; OBJ_47 /* MethodInvocationRewriter.swift */ = {isa = PBXFileReference; path = MethodInvocationRewriter.swift; sourceTree = ""; }; - OBJ_470 /* FileProvider.swift */ = {isa = PBXFileReference; path = FileProvider.swift; sourceTree = ""; }; - OBJ_471 /* FileWriterOutput.swift */ = {isa = PBXFileReference; path = FileWriterOutput.swift; sourceTree = ""; }; - OBJ_472 /* InputSourcesProvider.swift */ = {isa = PBXFileReference; path = InputSourcesProvider.swift; sourceTree = ""; }; - OBJ_473 /* NullWriterOutput.swift */ = {isa = PBXFileReference; path = NullWriterOutput.swift; sourceTree = ""; }; - OBJ_474 /* PathFilter.swift */ = {isa = PBXFileReference; path = PathFilter.swift; sourceTree = ""; }; - OBJ_475 /* SingleInputProvider.swift */ = {isa = PBXFileReference; path = SingleInputProvider.swift; sourceTree = ""; }; - OBJ_476 /* StdoutWriterOutput.swift */ = {isa = PBXFileReference; path = StdoutWriterOutput.swift; sourceTree = ""; }; - OBJ_477 /* SwiftASTCommentApplier.swift */ = {isa = PBXFileReference; path = SwiftASTCommentApplier.swift; sourceTree = ""; }; - OBJ_478 /* SwiftRewriterService.swift */ = {isa = PBXFileReference; path = SwiftRewriterService.swift; sourceTree = ""; }; - OBJ_479 /* SwiftSyntaxOptions.swift */ = {isa = PBXFileReference; path = SwiftSyntaxOptions.swift; sourceTree = ""; }; + OBJ_470 /* RepeatWhileStatement.swift */ = {isa = PBXFileReference; path = RepeatWhileStatement.swift; sourceTree = ""; }; + OBJ_471 /* ReturnStatement.swift */ = {isa = PBXFileReference; path = ReturnStatement.swift; sourceTree = ""; }; + OBJ_472 /* SwitchStatement.swift */ = {isa = PBXFileReference; path = SwitchStatement.swift; sourceTree = ""; }; + OBJ_473 /* ThrowStatement.swift */ = {isa = PBXFileReference; path = ThrowStatement.swift; sourceTree = ""; }; + OBJ_474 /* UnknownStatement.swift */ = {isa = PBXFileReference; path = UnknownStatement.swift; sourceTree = ""; }; + OBJ_475 /* VariableDeclarationsStatement.swift */ = {isa = PBXFileReference; path = VariableDeclarationsStatement.swift; sourceTree = ""; }; + OBJ_476 /* WhiteStatement.swift */ = {isa = PBXFileReference; path = WhiteStatement.swift; sourceTree = ""; }; + OBJ_477 /* StatementKind.swift */ = {isa = PBXFileReference; path = StatementKind.swift; sourceTree = ""; }; + OBJ_479 /* FunctionIdentifier.swift */ = {isa = PBXFileReference; path = FunctionIdentifier.swift; sourceTree = ""; }; OBJ_48 /* PostfixInvocationTransformer.swift */ = {isa = PBXFileReference; path = PostfixInvocationTransformer.swift; sourceTree = ""; }; - OBJ_480 /* SwiftWriter.swift */ = {isa = PBXFileReference; path = SwiftWriter.swift; sourceTree = ""; }; - OBJ_481 /* WriterOutput.swift */ = {isa = PBXFileReference; path = WriterOutput.swift; sourceTree = ""; }; - OBJ_483 /* DefaultSyntaxPassProvider.swift */ = {isa = PBXFileReference; path = DefaultSyntaxPassProvider.swift; sourceTree = ""; }; - OBJ_484 /* StatementSpacingSyntaxPass.swift */ = {isa = PBXFileReference; path = StatementSpacingSyntaxPass.swift; sourceTree = ""; }; - OBJ_486 /* BaseSwiftSyntaxProducer.swift */ = {isa = PBXFileReference; path = BaseSwiftSyntaxProducer.swift; sourceTree = ""; }; - OBJ_487 /* DecoratableElement.swift */ = {isa = PBXFileReference; path = DecoratableElement.swift; sourceTree = ""; }; - OBJ_488 /* ModifiersSyntaxDecorators.swift */ = {isa = PBXFileReference; path = ModifiersSyntaxDecorators.swift; sourceTree = ""; }; - OBJ_489 /* StartTokenHandler.swift */ = {isa = PBXFileReference; path = StartTokenHandler.swift; sourceTree = ""; }; + OBJ_480 /* FunctionSignature.swift */ = {isa = PBXFileReference; path = FunctionSignature.swift; sourceTree = ""; }; + OBJ_481 /* LocalFunction.swift */ = {isa = PBXFileReference; path = LocalFunction.swift; sourceTree = ""; }; + OBJ_482 /* ObjcPropertyAttribute.swift */ = {isa = PBXFileReference; path = ObjcPropertyAttribute.swift; sourceTree = ""; }; + OBJ_483 /* ParameterSignature.swift */ = {isa = PBXFileReference; path = ParameterSignature.swift; sourceTree = ""; }; + OBJ_484 /* SelectorSignature.swift */ = {isa = PBXFileReference; path = SelectorSignature.swift; sourceTree = ""; }; + OBJ_485 /* SubscriptIdentifier.swift */ = {isa = PBXFileReference; path = SubscriptIdentifier.swift; sourceTree = ""; }; + OBJ_486 /* SubscriptSignature.swift */ = {isa = PBXFileReference; path = SubscriptSignature.swift; sourceTree = ""; }; + OBJ_487 /* SwiftOperator.swift */ = {isa = PBXFileReference; path = SwiftOperator.swift; sourceTree = ""; }; + OBJ_488 /* SwiftRewriterAttribute.swift */ = {isa = PBXFileReference; path = SwiftRewriterAttribute.swift; sourceTree = ""; }; + OBJ_489 /* SwiftType+Stdlib.swift */ = {isa = PBXFileReference; path = "SwiftType+Stdlib.swift"; sourceTree = ""; }; OBJ_49 /* PostfixTransformation.swift */ = {isa = PBXFileReference; path = PostfixTransformation.swift; sourceTree = ""; }; - OBJ_490 /* SwiftSyntax+Ext.swift */ = {isa = PBXFileReference; path = "SwiftSyntax+Ext.swift"; sourceTree = ""; }; - OBJ_491 /* SwiftSyntaxProducer+Exp.swift */ = {isa = PBXFileReference; path = "SwiftSyntaxProducer+Exp.swift"; sourceTree = ""; }; - OBJ_492 /* SwiftSyntaxProducer+Stmt.swift */ = {isa = PBXFileReference; path = "SwiftSyntaxProducer+Stmt.swift"; sourceTree = ""; }; - OBJ_493 /* SwiftSyntaxProducer.swift */ = {isa = PBXFileReference; path = SwiftSyntaxProducer.swift; sourceTree = ""; }; - OBJ_494 /* SwiftSyntaxProducerDelegate.swift */ = {isa = PBXFileReference; path = SwiftSyntaxProducerDelegate.swift; sourceTree = ""; }; - OBJ_495 /* SwiftSyntaxRewriterPass.swift */ = {isa = PBXFileReference; path = SwiftSyntaxRewriterPass.swift; sourceTree = ""; }; - OBJ_496 /* SwiftSyntaxRewriterPassApplier.swift */ = {isa = PBXFileReference; path = SwiftSyntaxRewriterPassApplier.swift; sourceTree = ""; }; - OBJ_497 /* SwiftTypeConverter.swift */ = {isa = PBXFileReference; path = SwiftTypeConverter.swift; sourceTree = ""; }; - OBJ_498 /* VariableDeclSyntaxGenerator.swift */ = {isa = PBXFileReference; path = VariableDeclSyntaxGenerator.swift; sourceTree = ""; }; - OBJ_499 /* VariableDeclarationGrouping.swift */ = {isa = PBXFileReference; path = VariableDeclarationGrouping.swift; sourceTree = ""; }; + OBJ_490 /* SwiftType.swift */ = {isa = PBXFileReference; path = SwiftType.swift; sourceTree = ""; }; + OBJ_491 /* SwiftTypeParser.swift */ = {isa = PBXFileReference; path = SwiftTypeParser.swift; sourceTree = ""; }; + OBJ_492 /* SyntaxNode.swift */ = {isa = PBXFileReference; path = SyntaxNode.swift; sourceTree = ""; }; + OBJ_493 /* SyntaxNodeIterator.swift */ = {isa = PBXFileReference; path = SyntaxNodeIterator.swift; sourceTree = ""; }; + OBJ_494 /* SyntaxNodeRewriter.swift */ = {isa = PBXFileReference; path = SyntaxNodeRewriter.swift; sourceTree = ""; }; + OBJ_495 /* TypeFormatter.swift */ = {isa = PBXFileReference; path = TypeFormatter.swift; sourceTree = ""; }; + OBJ_496 /* UnknownASTContext.swift */ = {isa = PBXFileReference; path = UnknownASTContext.swift; sourceTree = ""; }; + OBJ_497 /* ValueMatcher+Matchers.swift */ = {isa = PBXFileReference; path = "ValueMatcher+Matchers.swift"; sourceTree = ""; }; + OBJ_498 /* ValueMatcher+PartialValueMatcher.swift */ = {isa = PBXFileReference; path = "ValueMatcher+PartialValueMatcher.swift"; sourceTree = ""; }; + OBJ_499 /* ValueMatcher.swift */ = {isa = PBXFileReference; path = ValueMatcher.swift; sourceTree = ""; }; OBJ_50 /* SignatureMapper.swift */ = {isa = PBXFileReference; path = SignatureMapper.swift; sourceTree = ""; }; - OBJ_501 /* Array+Testing.swift */ = {isa = PBXFileReference; path = "Array+Testing.swift"; sourceTree = ""; }; - OBJ_502 /* Asserter.swift */ = {isa = PBXFileReference; path = Asserter.swift; sourceTree = ""; }; - OBJ_504 /* Antlr+Asserter.swift */ = {isa = PBXFileReference; path = "Antlr+Asserter.swift"; sourceTree = ""; }; - OBJ_505 /* Asserter+KeyPath.swift */ = {isa = PBXFileReference; path = "Asserter+KeyPath.swift"; sourceTree = ""; }; - OBJ_507 /* ASTNode+Asserter.swift */ = {isa = PBXFileReference; path = "ASTNode+Asserter.swift"; sourceTree = ""; }; - OBJ_508 /* RawCodeComment+Asserter.swift */ = {isa = PBXFileReference; path = "RawCodeComment+Asserter.swift"; sourceTree = ""; }; + OBJ_500 /* ValueMatcherConvertible.swift */ = {isa = PBXFileReference; path = ValueMatcherConvertible.swift; sourceTree = ""; }; + OBJ_501 /* ValueStorage.swift */ = {isa = PBXFileReference; path = ValueStorage.swift; sourceTree = ""; }; + OBJ_502 /* ValueTransformer.swift */ = {isa = PBXFileReference; path = ValueTransformer.swift; sourceTree = ""; }; + OBJ_504 /* AnonymousSyntaxNodeStatefulVisitor.swift */ = {isa = PBXFileReference; path = AnonymousSyntaxNodeStatefulVisitor.swift; sourceTree = ""; }; + OBJ_505 /* AnonymousSyntaxNodeVisitor.swift */ = {isa = PBXFileReference; path = AnonymousSyntaxNodeVisitor.swift; sourceTree = ""; }; + OBJ_506 /* BaseSyntaxNodeVisitor.swift */ = {isa = PBXFileReference; path = BaseSyntaxNodeVisitor.swift; sourceTree = ""; }; + OBJ_507 /* ExpressionVisitor.swift */ = {isa = PBXFileReference; path = ExpressionVisitor.swift; sourceTree = ""; }; + OBJ_508 /* StatementStatefulVisitor.swift */ = {isa = PBXFileReference; path = StatementStatefulVisitor.swift; sourceTree = ""; }; + OBJ_509 /* StatementVisitor.swift */ = {isa = PBXFileReference; path = StatementVisitor.swift; sourceTree = ""; }; OBJ_51 /* SwiftAttributeTransformationsExtractor.swift */ = {isa = PBXFileReference; path = SwiftAttributeTransformationsExtractor.swift; sourceTree = ""; }; - OBJ_510 /* ClassExtensionGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "ClassExtensionGenerationIntention+Asserter.swift"; sourceTree = ""; }; - OBJ_511 /* FileGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "FileGenerationIntention+Asserter.swift"; sourceTree = ""; }; - OBJ_512 /* FromSourceIntention+Asserter.swift */ = {isa = PBXFileReference; path = "FromSourceIntention+Asserter.swift"; sourceTree = ""; }; - OBJ_513 /* FunctionBodyIntention+Asserter.swift */ = {isa = PBXFileReference; path = "FunctionBodyIntention+Asserter.swift"; sourceTree = ""; }; - OBJ_514 /* FunctionIntention+Asserter.swift */ = {isa = PBXFileReference; path = "FunctionIntention+Asserter.swift"; sourceTree = ""; }; - OBJ_515 /* Historic+Asserter.swift */ = {isa = PBXFileReference; path = "Historic+Asserter.swift"; sourceTree = ""; }; - OBJ_516 /* IntentionCollection+Asserter.swift */ = {isa = PBXFileReference; path = "IntentionCollection+Asserter.swift"; sourceTree = ""; }; - OBJ_517 /* MethodGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "MethodGenerationIntention+Asserter.swift"; sourceTree = ""; }; - OBJ_518 /* PropertyGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "PropertyGenerationIntention+Asserter.swift"; sourceTree = ""; }; - OBJ_519 /* SubscriptGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "SubscriptGenerationIntention+Asserter.swift"; sourceTree = ""; }; + OBJ_511 /* GlobalOptions.swift */ = {isa = PBXFileReference; path = GlobalOptions.swift; sourceTree = ""; }; + OBJ_512 /* JavaScriptCommand.swift */ = {isa = PBXFileReference; path = JavaScriptCommand.swift; sourceTree = ""; }; + OBJ_513 /* JavaScriptFrontendImpl.swift */ = {isa = PBXFileReference; path = JavaScriptFrontendImpl.swift; sourceTree = ""; }; + OBJ_514 /* JavaScriptSwiftRewriterServiceImpl.swift */ = {isa = PBXFileReference; path = JavaScriptSwiftRewriterServiceImpl.swift; sourceTree = ""; }; + OBJ_515 /* ObjectiveCCommand.swift */ = {isa = PBXFileReference; path = ObjectiveCCommand.swift; sourceTree = ""; }; + OBJ_516 /* ObjectiveCFrontendImpl.swift */ = {isa = PBXFileReference; path = ObjectiveCFrontendImpl.swift; sourceTree = ""; }; + OBJ_517 /* ObjectiveCSwiftRewriterServiceImpl.swift */ = {isa = PBXFileReference; path = ObjectiveCSwiftRewriterServiceImpl.swift; sourceTree = ""; }; + OBJ_518 /* StdoutFileCollectionStepListener.swift */ = {isa = PBXFileReference; path = StdoutFileCollectionStepListener.swift; sourceTree = ""; }; + OBJ_519 /* SwiftRewriterCommand.swift */ = {isa = PBXFileReference; path = SwiftRewriterCommand.swift; sourceTree = ""; }; OBJ_52 /* SwiftClassInterfaceParser.swift */ = {isa = PBXFileReference; path = SwiftClassInterfaceParser.swift; sourceTree = ""; }; - OBJ_520 /* TypeGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "TypeGenerationIntention+Asserter.swift"; sourceTree = ""; }; - OBJ_521 /* ValueStorageIntention+Asserter.swift */ = {isa = PBXFileReference; path = "ValueStorageIntention+Asserter.swift"; sourceTree = ""; }; - OBJ_523 /* ObjcASTNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcASTNode+Asserter.swift"; sourceTree = ""; }; - OBJ_524 /* ObjcClassCategoryInterfaceNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcClassCategoryInterfaceNode+Asserter.swift"; sourceTree = ""; }; - OBJ_525 /* ObjcClassInterfaceNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcClassInterfaceNode+Asserter.swift"; sourceTree = ""; }; - OBJ_526 /* ObjcConstantExpressionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcConstantExpressionNode+Asserter.swift"; sourceTree = ""; }; - OBJ_527 /* ObjcEnumCaseNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcEnumCaseNode+Asserter.swift"; sourceTree = ""; }; - OBJ_528 /* ObjcEnumDeclarationNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcEnumDeclarationNode+Asserter.swift"; sourceTree = ""; }; - OBJ_529 /* ObjcExpressionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcExpressionNode+Asserter.swift"; sourceTree = ""; }; + OBJ_520 /* Target.swift */ = {isa = PBXFileReference; path = Target.swift; sourceTree = ""; }; + OBJ_521 /* main.swift */ = {isa = PBXFileReference; path = main.swift; sourceTree = ""; }; + OBJ_523 /* FilesExplorer.swift */ = {isa = PBXFileReference; path = FilesExplorer.swift; sourceTree = ""; }; + OBJ_524 /* Menu.swift */ = {isa = PBXFileReference; path = Menu.swift; sourceTree = ""; }; + OBJ_525 /* Stopwatch.swift */ = {isa = PBXFileReference; path = Stopwatch.swift; sourceTree = ""; }; + OBJ_526 /* SwiftRewriterFrontend.swift */ = {isa = PBXFileReference; path = SwiftRewriterFrontend.swift; sourceTree = ""; }; + OBJ_528 /* ColorizeSyntaxVisitor.swift */ = {isa = PBXFileReference; path = ColorizeSyntaxVisitor.swift; sourceTree = ""; }; + OBJ_529 /* DiskInputFile.swift */ = {isa = PBXFileReference; path = DiskInputFile.swift; sourceTree = ""; }; OBJ_53 /* UIColorCompoundType.swift */ = {isa = PBXFileReference; path = UIColorCompoundType.swift; sourceTree = ""; }; - OBJ_530 /* ObjcFunctionDefinitionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcFunctionDefinitionNode+Asserter.swift"; sourceTree = ""; }; - OBJ_531 /* ObjcFunctionParameterNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcFunctionParameterNode+Asserter.swift"; sourceTree = ""; }; - OBJ_532 /* ObjcIdentifierNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcIdentifierNode+Asserter.swift"; sourceTree = ""; }; - OBJ_533 /* ObjcInitialExpressionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcInitialExpressionNode+Asserter.swift"; sourceTree = ""; }; - OBJ_534 /* ObjcMethodBodyNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcMethodBodyNode+Asserter.swift"; sourceTree = ""; }; - OBJ_535 /* ObjcMethodDefinitionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcMethodDefinitionNode+Asserter.swift"; sourceTree = ""; }; - OBJ_536 /* ObjcPropertyAttributesListNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcPropertyAttributesListNode+Asserter.swift"; sourceTree = ""; }; - OBJ_537 /* ObjcPropertyDefinitionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcPropertyDefinitionNode+Asserter.swift"; sourceTree = ""; }; - OBJ_538 /* ObjcPropertyImplementationNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcPropertyImplementationNode+Asserter.swift"; sourceTree = ""; }; - OBJ_539 /* ObjcPropertySynthesizeListNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcPropertySynthesizeListNode+Asserter.swift"; sourceTree = ""; }; + OBJ_530 /* FileDiskProvider.swift */ = {isa = PBXFileReference; path = FileDiskProvider.swift; sourceTree = ""; }; + OBJ_531 /* FileProvider.swift */ = {isa = PBXFileReference; path = FileProvider.swift; sourceTree = ""; }; + OBJ_532 /* FileWriterOutput.swift */ = {isa = PBXFileReference; path = FileWriterOutput.swift; sourceTree = ""; }; + OBJ_533 /* InputSourcesProvider.swift */ = {isa = PBXFileReference; path = InputSourcesProvider.swift; sourceTree = ""; }; + OBJ_534 /* NullWriterOutput.swift */ = {isa = PBXFileReference; path = NullWriterOutput.swift; sourceTree = ""; }; + OBJ_535 /* PathFilter.swift */ = {isa = PBXFileReference; path = PathFilter.swift; sourceTree = ""; }; + OBJ_536 /* SingleInputProvider.swift */ = {isa = PBXFileReference; path = SingleInputProvider.swift; sourceTree = ""; }; + OBJ_537 /* StdoutWriterOutput.swift */ = {isa = PBXFileReference; path = StdoutWriterOutput.swift; sourceTree = ""; }; + OBJ_538 /* SwiftASTCommentApplier.swift */ = {isa = PBXFileReference; path = SwiftASTCommentApplier.swift; sourceTree = ""; }; + OBJ_539 /* SwiftRewriterService.swift */ = {isa = PBXFileReference; path = SwiftRewriterService.swift; sourceTree = ""; }; OBJ_54 /* UIControlCompoundType.swift */ = {isa = PBXFileReference; path = UIControlCompoundType.swift; sourceTree = ""; }; - OBJ_540 /* ObjcProtocolDeclaration+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcProtocolDeclaration+Asserter.swift"; sourceTree = ""; }; - OBJ_541 /* ObjcStructDeclarationNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcStructDeclarationNode+Asserter.swift"; sourceTree = ""; }; - OBJ_542 /* ObjcStructFieldNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcStructFieldNode+Asserter.swift"; sourceTree = ""; }; - OBJ_543 /* ObjcTypeNameNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcTypeNameNode+Asserter.swift"; sourceTree = ""; }; - OBJ_544 /* ObjcTypedefNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcTypedefNode+Asserter.swift"; sourceTree = ""; }; - OBJ_545 /* ObjcVariableDeclarationNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcVariableDeclarationNode+Asserter.swift"; sourceTree = ""; }; - OBJ_547 /* ObjcImportDecl+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcImportDecl+Asserter.swift"; sourceTree = ""; }; - OBJ_549 /* AnyObject+Asserter.swift */ = {isa = PBXFileReference; path = "AnyObject+Asserter.swift"; sourceTree = ""; }; + OBJ_540 /* SwiftSyntaxOptions.swift */ = {isa = PBXFileReference; path = SwiftSyntaxOptions.swift; sourceTree = ""; }; + OBJ_541 /* SwiftWriter.swift */ = {isa = PBXFileReference; path = SwiftWriter.swift; sourceTree = ""; }; + OBJ_542 /* WriterOutput.swift */ = {isa = PBXFileReference; path = WriterOutput.swift; sourceTree = ""; }; + OBJ_544 /* DefaultSyntaxPassProvider.swift */ = {isa = PBXFileReference; path = DefaultSyntaxPassProvider.swift; sourceTree = ""; }; + OBJ_545 /* StatementSpacingSyntaxPass.swift */ = {isa = PBXFileReference; path = StatementSpacingSyntaxPass.swift; sourceTree = ""; }; + OBJ_547 /* BaseSwiftSyntaxProducer.swift */ = {isa = PBXFileReference; path = BaseSwiftSyntaxProducer.swift; sourceTree = ""; }; + OBJ_548 /* DecoratableElement.swift */ = {isa = PBXFileReference; path = DecoratableElement.swift; sourceTree = ""; }; + OBJ_549 /* ModifiersSyntaxDecorators.swift */ = {isa = PBXFileReference; path = ModifiersSyntaxDecorators.swift; sourceTree = ""; }; OBJ_55 /* UIGestureRecognizerCompoundType.swift */ = {isa = PBXFileReference; path = UIGestureRecognizerCompoundType.swift; sourceTree = ""; }; - OBJ_550 /* Bool+Asserter.swift */ = {isa = PBXFileReference; path = "Bool+Asserter.swift"; sourceTree = ""; }; - OBJ_551 /* Collection+Asserter.swift */ = {isa = PBXFileReference; path = "Collection+Asserter.swift"; sourceTree = ""; }; - OBJ_552 /* Equatable+Asserter.swift */ = {isa = PBXFileReference; path = "Equatable+Asserter.swift"; sourceTree = ""; }; - OBJ_553 /* IteratorProtocol+Asserter.swift */ = {isa = PBXFileReference; path = "IteratorProtocol+Asserter.swift"; sourceTree = ""; }; - OBJ_554 /* Sequence+Asserter.swift */ = {isa = PBXFileReference; path = "Sequence+Asserter.swift"; sourceTree = ""; }; - OBJ_556 /* Expression+Asserter.swift */ = {isa = PBXFileReference; path = "Expression+Asserter.swift"; sourceTree = ""; }; - OBJ_557 /* FunctionSignature+Asserter.swift */ = {isa = PBXFileReference; path = "FunctionSignature+Asserter.swift"; sourceTree = ""; }; - OBJ_558 /* ParameterSignature+Asserter.swift */ = {isa = PBXFileReference; path = "ParameterSignature+Asserter.swift"; sourceTree = ""; }; - OBJ_559 /* Statement+Asserter.swift */ = {isa = PBXFileReference; path = "Statement+Asserter.swift"; sourceTree = ""; }; + OBJ_550 /* StartTokenHandler.swift */ = {isa = PBXFileReference; path = StartTokenHandler.swift; sourceTree = ""; }; + OBJ_551 /* SwiftSyntax+Ext.swift */ = {isa = PBXFileReference; path = "SwiftSyntax+Ext.swift"; sourceTree = ""; }; + OBJ_552 /* SwiftSyntaxProducer+Exp.swift */ = {isa = PBXFileReference; path = "SwiftSyntaxProducer+Exp.swift"; sourceTree = ""; }; + OBJ_553 /* SwiftSyntaxProducer+Stmt.swift */ = {isa = PBXFileReference; path = "SwiftSyntaxProducer+Stmt.swift"; sourceTree = ""; }; + OBJ_554 /* SwiftSyntaxProducer.swift */ = {isa = PBXFileReference; path = SwiftSyntaxProducer.swift; sourceTree = ""; }; + OBJ_555 /* SwiftSyntaxProducerDelegate.swift */ = {isa = PBXFileReference; path = SwiftSyntaxProducerDelegate.swift; sourceTree = ""; }; + OBJ_556 /* SwiftSyntaxRewriterPass.swift */ = {isa = PBXFileReference; path = SwiftSyntaxRewriterPass.swift; sourceTree = ""; }; + OBJ_557 /* SwiftSyntaxRewriterPassApplier.swift */ = {isa = PBXFileReference; path = SwiftSyntaxRewriterPassApplier.swift; sourceTree = ""; }; + OBJ_558 /* SwiftTypeConverter.swift */ = {isa = PBXFileReference; path = SwiftTypeConverter.swift; sourceTree = ""; }; + OBJ_559 /* VariableDeclSyntaxGenerator.swift */ = {isa = PBXFileReference; path = VariableDeclSyntaxGenerator.swift; sourceTree = ""; }; OBJ_56 /* UILabelCompoundType.swift */ = {isa = PBXFileReference; path = UILabelCompoundType.swift; sourceTree = ""; }; - OBJ_561 /* SourceRange+Asserter.swift */ = {isa = PBXFileReference; path = "SourceRange+Asserter.swift"; sourceTree = ""; }; - OBJ_563 /* DeclarationBuilder.swift */ = {isa = PBXFileReference; path = DeclarationBuilder.swift; sourceTree = ""; }; - OBJ_564 /* IntentionCollectionBuilder.swift */ = {isa = PBXFileReference; path = IntentionCollectionBuilder.swift; sourceTree = ""; }; - OBJ_565 /* MemberBuilder.swift */ = {isa = PBXFileReference; path = MemberBuilder.swift; sourceTree = ""; }; - OBJ_566 /* TypeBuilder.swift */ = {isa = PBXFileReference; path = TypeBuilder.swift; sourceTree = ""; }; - OBJ_567 /* _FunctionBuilder.swift */ = {isa = PBXFileReference; path = _FunctionBuilder.swift; sourceTree = ""; }; - OBJ_568 /* ExpressionPassTestCase.swift */ = {isa = PBXFileReference; path = ExpressionPassTestCase.swift; sourceTree = ""; }; - OBJ_569 /* ExpressionPrinter.swift */ = {isa = PBXFileReference; path = ExpressionPrinter.swift; sourceTree = ""; }; + OBJ_560 /* VariableDeclarationGrouping.swift */ = {isa = PBXFileReference; path = VariableDeclarationGrouping.swift; sourceTree = ""; }; + OBJ_562 /* Array+Testing.swift */ = {isa = PBXFileReference; path = "Array+Testing.swift"; sourceTree = ""; }; + OBJ_563 /* Asserter.swift */ = {isa = PBXFileReference; path = Asserter.swift; sourceTree = ""; }; + OBJ_565 /* Antlr+Asserter.swift */ = {isa = PBXFileReference; path = "Antlr+Asserter.swift"; sourceTree = ""; }; + OBJ_566 /* Asserter+KeyPath.swift */ = {isa = PBXFileReference; path = "Asserter+KeyPath.swift"; sourceTree = ""; }; + OBJ_568 /* ASTNode+Asserter.swift */ = {isa = PBXFileReference; path = "ASTNode+Asserter.swift"; sourceTree = ""; }; + OBJ_569 /* RawCodeComment+Asserter.swift */ = {isa = PBXFileReference; path = "RawCodeComment+Asserter.swift"; sourceTree = ""; }; OBJ_57 /* UIResponderCompoundType.swift */ = {isa = PBXFileReference; path = UIResponderCompoundType.swift; sourceTree = ""; }; - OBJ_570 /* MersenneTwister.swift */ = {isa = PBXFileReference; path = MersenneTwister.swift; sourceTree = ""; }; - OBJ_571 /* StatementPrinter.swift */ = {isa = PBXFileReference; path = StatementPrinter.swift; sourceTree = ""; }; - OBJ_572 /* StringDiffTesting.swift */ = {isa = PBXFileReference; path = StringDiffTesting.swift; sourceTree = ""; }; - OBJ_573 /* SyntaxNode+TestUtils.swift */ = {isa = PBXFileReference; path = "SyntaxNode+TestUtils.swift"; sourceTree = ""; }; - OBJ_574 /* TestWriterOutput.swift */ = {isa = PBXFileReference; path = TestWriterOutput.swift; sourceTree = ""; }; - OBJ_575 /* VirtualFileDisk.swift */ = {isa = PBXFileReference; path = VirtualFileDisk.swift; sourceTree = ""; }; - OBJ_577 /* ios-framework-protocols.json */ = {isa = PBXFileReference; path = "ios-framework-protocols.json"; sourceTree = ""; }; - OBJ_578 /* ios-framework-classes.json */ = {isa = PBXFileReference; path = "ios-framework-classes.json"; sourceTree = ""; }; - OBJ_579 /* TypeDefinitions.swift */ = {isa = PBXFileReference; path = TypeDefinitions.swift; sourceTree = ""; }; + OBJ_571 /* ClassExtensionGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "ClassExtensionGenerationIntention+Asserter.swift"; sourceTree = ""; }; + OBJ_572 /* FileGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "FileGenerationIntention+Asserter.swift"; sourceTree = ""; }; + OBJ_573 /* FromSourceIntention+Asserter.swift */ = {isa = PBXFileReference; path = "FromSourceIntention+Asserter.swift"; sourceTree = ""; }; + OBJ_574 /* FunctionBodyIntention+Asserter.swift */ = {isa = PBXFileReference; path = "FunctionBodyIntention+Asserter.swift"; sourceTree = ""; }; + OBJ_575 /* FunctionIntention+Asserter.swift */ = {isa = PBXFileReference; path = "FunctionIntention+Asserter.swift"; sourceTree = ""; }; + OBJ_576 /* Historic+Asserter.swift */ = {isa = PBXFileReference; path = "Historic+Asserter.swift"; sourceTree = ""; }; + OBJ_577 /* IntentionCollection+Asserter.swift */ = {isa = PBXFileReference; path = "IntentionCollection+Asserter.swift"; sourceTree = ""; }; + OBJ_578 /* MethodGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "MethodGenerationIntention+Asserter.swift"; sourceTree = ""; }; + OBJ_579 /* PropertyGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "PropertyGenerationIntention+Asserter.swift"; sourceTree = ""; }; OBJ_58 /* UIViewCompoundType.swift */ = {isa = PBXFileReference; path = UIViewCompoundType.swift; sourceTree = ""; }; - OBJ_582 /* CodeDefinition.swift */ = {isa = PBXFileReference; path = CodeDefinition.swift; sourceTree = ""; }; - OBJ_583 /* GlobalCodeDefinition.swift */ = {isa = PBXFileReference; path = GlobalCodeDefinition.swift; sourceTree = ""; }; - OBJ_584 /* GlobalIntentionCodeDefinition.swift */ = {isa = PBXFileReference; path = GlobalIntentionCodeDefinition.swift; sourceTree = ""; }; - OBJ_585 /* KnownMemberCodeDefinition.swift */ = {isa = PBXFileReference; path = KnownMemberCodeDefinition.swift; sourceTree = ""; }; - OBJ_586 /* LocalCodeDefinition.swift */ = {isa = PBXFileReference; path = LocalCodeDefinition.swift; sourceTree = ""; }; - OBJ_587 /* TypeCodeDefinition.swift */ = {isa = PBXFileReference; path = TypeCodeDefinition.swift; sourceTree = ""; }; - OBJ_589 /* ArrayDefinitionsSource.swift */ = {isa = PBXFileReference; path = ArrayDefinitionsSource.swift; sourceTree = ""; }; + OBJ_580 /* SubscriptGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "SubscriptGenerationIntention+Asserter.swift"; sourceTree = ""; }; + OBJ_581 /* TypeGenerationIntention+Asserter.swift */ = {isa = PBXFileReference; path = "TypeGenerationIntention+Asserter.swift"; sourceTree = ""; }; + OBJ_582 /* ValueStorageIntention+Asserter.swift */ = {isa = PBXFileReference; path = "ValueStorageIntention+Asserter.swift"; sourceTree = ""; }; + OBJ_584 /* JsFunctionBodyNode+Asserter.swift */ = {isa = PBXFileReference; path = "JsFunctionBodyNode+Asserter.swift"; sourceTree = ""; }; + OBJ_585 /* JsFunctionDefinitionNode+Asserter.swift */ = {isa = PBXFileReference; path = "JsFunctionDefinitionNode+Asserter.swift"; sourceTree = ""; }; + OBJ_586 /* JsIdentifierNode+Asserter.swift */ = {isa = PBXFileReference; path = "JsIdentifierNode+Asserter.swift"; sourceTree = ""; }; + OBJ_588 /* ObjcASTNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcASTNode+Asserter.swift"; sourceTree = ""; }; + OBJ_589 /* ObjcClassCategoryInterfaceNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcClassCategoryInterfaceNode+Asserter.swift"; sourceTree = ""; }; OBJ_59 /* UIViewControllerCompoundType.swift */ = {isa = PBXFileReference; path = UIViewControllerCompoundType.swift; sourceTree = ""; }; - OBJ_590 /* CodeScope.swift */ = {isa = PBXFileReference; path = CodeScope.swift; sourceTree = ""; }; - OBJ_591 /* CompoundDefinitionsSource.swift */ = {isa = PBXFileReference; path = CompoundDefinitionsSource.swift; sourceTree = ""; }; - OBJ_592 /* DefaultCodeScope.swift */ = {isa = PBXFileReference; path = DefaultCodeScope.swift; sourceTree = ""; }; - OBJ_593 /* DefinitionsSource.swift */ = {isa = PBXFileReference; path = DefinitionsSource.swift; sourceTree = ""; }; - OBJ_594 /* SyntaxNode+CodeScope.swift */ = {isa = PBXFileReference; path = "SyntaxNode+CodeScope.swift"; sourceTree = ""; }; - OBJ_595 /* CompoundKnownType.swift */ = {isa = PBXFileReference; path = CompoundKnownType.swift; sourceTree = ""; }; - OBJ_596 /* GlobalsProvider.swift */ = {isa = PBXFileReference; path = GlobalsProvider.swift; sourceTree = ""; }; - OBJ_597 /* IntentionCollectionTypeSystem.swift */ = {isa = PBXFileReference; path = IntentionCollectionTypeSystem.swift; sourceTree = ""; }; - OBJ_599 /* DynamicMemberLookup.swift */ = {isa = PBXFileReference; path = DynamicMemberLookup.swift; sourceTree = ""; }; + OBJ_590 /* ObjcClassInterfaceNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcClassInterfaceNode+Asserter.swift"; sourceTree = ""; }; + OBJ_591 /* ObjcConstantExpressionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcConstantExpressionNode+Asserter.swift"; sourceTree = ""; }; + OBJ_592 /* ObjcEnumCaseNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcEnumCaseNode+Asserter.swift"; sourceTree = ""; }; + OBJ_593 /* ObjcEnumDeclarationNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcEnumDeclarationNode+Asserter.swift"; sourceTree = ""; }; + OBJ_594 /* ObjcExpressionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcExpressionNode+Asserter.swift"; sourceTree = ""; }; + OBJ_595 /* ObjcFunctionDefinitionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcFunctionDefinitionNode+Asserter.swift"; sourceTree = ""; }; + OBJ_596 /* ObjcFunctionParameterNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcFunctionParameterNode+Asserter.swift"; sourceTree = ""; }; + OBJ_597 /* ObjcIdentifierNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcIdentifierNode+Asserter.swift"; sourceTree = ""; }; + OBJ_598 /* ObjcInitialExpressionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcInitialExpressionNode+Asserter.swift"; sourceTree = ""; }; + OBJ_599 /* ObjcMethodBodyNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcMethodBodyNode+Asserter.swift"; sourceTree = ""; }; OBJ_6 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; path = Package.swift; sourceTree = ""; }; - OBJ_600 /* KnownTypeMemberLookup.swift */ = {isa = PBXFileReference; path = KnownTypeMemberLookup.swift; sourceTree = ""; }; - OBJ_601 /* MemberLookupType.swift */ = {isa = PBXFileReference; path = MemberLookupType.swift; sourceTree = ""; }; - OBJ_602 /* MemberSearchCache.swift */ = {isa = PBXFileReference; path = MemberSearchCache.swift; sourceTree = ""; }; - OBJ_603 /* SwiftTypeMemberLookup.swift */ = {isa = PBXFileReference; path = SwiftTypeMemberLookup.swift; sourceTree = ""; }; - OBJ_604 /* TypeMemberLookupContext.swift */ = {isa = PBXFileReference; path = TypeMemberLookupContext.swift; sourceTree = ""; }; - OBJ_605 /* OverloadResolver.swift */ = {isa = PBXFileReference; path = OverloadResolver.swift; sourceTree = ""; }; - OBJ_607 /* KnownTypeProvider.swift */ = {isa = PBXFileReference; path = KnownTypeProvider.swift; sourceTree = ""; }; - OBJ_608 /* TypealiasProvider.swift */ = {isa = PBXFileReference; path = TypealiasProvider.swift; sourceTree = ""; }; - OBJ_609 /* TypeCategory.swift */ = {isa = PBXFileReference; path = TypeCategory.swift; sourceTree = ""; }; + OBJ_600 /* ObjcMethodDefinitionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcMethodDefinitionNode+Asserter.swift"; sourceTree = ""; }; + OBJ_601 /* ObjcPropertyAttributesListNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcPropertyAttributesListNode+Asserter.swift"; sourceTree = ""; }; + OBJ_602 /* ObjcPropertyDefinitionNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcPropertyDefinitionNode+Asserter.swift"; sourceTree = ""; }; + OBJ_603 /* ObjcPropertyImplementationNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcPropertyImplementationNode+Asserter.swift"; sourceTree = ""; }; + OBJ_604 /* ObjcPropertySynthesizeListNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcPropertySynthesizeListNode+Asserter.swift"; sourceTree = ""; }; + OBJ_605 /* ObjcProtocolDeclaration+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcProtocolDeclaration+Asserter.swift"; sourceTree = ""; }; + OBJ_606 /* ObjcStructDeclarationNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcStructDeclarationNode+Asserter.swift"; sourceTree = ""; }; + OBJ_607 /* ObjcStructFieldNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcStructFieldNode+Asserter.swift"; sourceTree = ""; }; + OBJ_608 /* ObjcTypeNameNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcTypeNameNode+Asserter.swift"; sourceTree = ""; }; + OBJ_609 /* ObjcTypedefNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcTypedefNode+Asserter.swift"; sourceTree = ""; }; OBJ_61 /* ASTRewriterPass.swift */ = {isa = PBXFileReference; path = ASTRewriterPass.swift; sourceTree = ""; }; - OBJ_610 /* TypeMapper.swift */ = {isa = PBXFileReference; path = TypeMapper.swift; sourceTree = ""; }; - OBJ_611 /* TypeMemberLookup.swift */ = {isa = PBXFileReference; path = TypeMemberLookup.swift; sourceTree = ""; }; - OBJ_613 /* CallableTypeResolver.swift */ = {isa = PBXFileReference; path = CallableTypeResolver.swift; sourceTree = ""; }; - OBJ_614 /* CoercionVerifier.swift */ = {isa = PBXFileReference; path = CoercionVerifier.swift; sourceTree = ""; }; - OBJ_615 /* DefaultLocalTypeResolverInvoker.swift */ = {isa = PBXFileReference; path = DefaultLocalTypeResolverInvoker.swift; sourceTree = ""; }; - OBJ_616 /* DefaultTypeResolverInvoker.swift */ = {isa = PBXFileReference; path = DefaultTypeResolverInvoker.swift; sourceTree = ""; }; - OBJ_617 /* ExpressionTypeResolver.swift */ = {isa = PBXFileReference; path = ExpressionTypeResolver.swift; sourceTree = ""; }; - OBJ_618 /* IteratorTypeResolver.swift */ = {isa = PBXFileReference; path = IteratorTypeResolver.swift; sourceTree = ""; }; - OBJ_619 /* LocalTypeResolverInvoker.swift */ = {isa = PBXFileReference; path = LocalTypeResolverInvoker.swift; sourceTree = ""; }; + OBJ_610 /* ObjcVariableDeclarationNode+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcVariableDeclarationNode+Asserter.swift"; sourceTree = ""; }; + OBJ_612 /* ObjcImportDecl+Asserter.swift */ = {isa = PBXFileReference; path = "ObjcImportDecl+Asserter.swift"; sourceTree = ""; }; + OBJ_614 /* AnyObject+Asserter.swift */ = {isa = PBXFileReference; path = "AnyObject+Asserter.swift"; sourceTree = ""; }; + OBJ_615 /* Bool+Asserter.swift */ = {isa = PBXFileReference; path = "Bool+Asserter.swift"; sourceTree = ""; }; + OBJ_616 /* Collection+Asserter.swift */ = {isa = PBXFileReference; path = "Collection+Asserter.swift"; sourceTree = ""; }; + OBJ_617 /* Equatable+Asserter.swift */ = {isa = PBXFileReference; path = "Equatable+Asserter.swift"; sourceTree = ""; }; + OBJ_618 /* IteratorProtocol+Asserter.swift */ = {isa = PBXFileReference; path = "IteratorProtocol+Asserter.swift"; sourceTree = ""; }; + OBJ_619 /* Sequence+Asserter.swift */ = {isa = PBXFileReference; path = "Sequence+Asserter.swift"; sourceTree = ""; }; OBJ_62 /* ASTRewriterPassApplier.swift */ = {isa = PBXFileReference; path = ASTRewriterPassApplier.swift; sourceTree = ""; }; - OBJ_620 /* PatternMatcher.swift */ = {isa = PBXFileReference; path = PatternMatcher.swift; sourceTree = ""; }; - OBJ_621 /* TypeResolverIntrinsicsBuilder.swift */ = {isa = PBXFileReference; path = TypeResolverIntrinsicsBuilder.swift; sourceTree = ""; }; - OBJ_622 /* TypeResolverInvoker.swift */ = {isa = PBXFileReference; path = TypeResolverInvoker.swift; sourceTree = ""; }; - OBJ_623 /* TypeSystem.swift */ = {isa = PBXFileReference; path = TypeSystem.swift; sourceTree = ""; }; - OBJ_625 /* CodeSource.swift */ = {isa = PBXFileReference; path = CodeSource.swift; sourceTree = ""; }; - OBJ_626 /* ConcurrentOperationQueue.swift */ = {isa = PBXFileReference; path = ConcurrentOperationQueue.swift; sourceTree = ""; }; - OBJ_627 /* ConcurrentValue.swift */ = {isa = PBXFileReference; path = ConcurrentValue.swift; sourceTree = ""; }; - OBJ_628 /* Diagnostics.swift */ = {isa = PBXFileReference; path = Diagnostics.swift; sourceTree = ""; }; - OBJ_629 /* InvalidSource.swift */ = {isa = PBXFileReference; path = InvalidSource.swift; sourceTree = ""; }; + OBJ_621 /* Expression+Asserter.swift */ = {isa = PBXFileReference; path = "Expression+Asserter.swift"; sourceTree = ""; }; + OBJ_622 /* FunctionSignature+Asserter.swift */ = {isa = PBXFileReference; path = "FunctionSignature+Asserter.swift"; sourceTree = ""; }; + OBJ_623 /* ParameterSignature+Asserter.swift */ = {isa = PBXFileReference; path = "ParameterSignature+Asserter.swift"; sourceTree = ""; }; + OBJ_624 /* Statement+Asserter.swift */ = {isa = PBXFileReference; path = "Statement+Asserter.swift"; sourceTree = ""; }; + OBJ_626 /* SourceRange+Asserter.swift */ = {isa = PBXFileReference; path = "SourceRange+Asserter.swift"; sourceTree = ""; }; + OBJ_628 /* DeclarationBuilder.swift */ = {isa = PBXFileReference; path = DeclarationBuilder.swift; sourceTree = ""; }; + OBJ_629 /* IntentionCollectionBuilder.swift */ = {isa = PBXFileReference; path = IntentionCollectionBuilder.swift; sourceTree = ""; }; OBJ_63 /* ASTRewriterPassContext.swift */ = {isa = PBXFileReference; path = ASTRewriterPassContext.swift; sourceTree = ""; }; - OBJ_630 /* LinuxSupport.swift */ = {isa = PBXFileReference; path = LinuxSupport.swift; sourceTree = ""; }; - OBJ_631 /* Mutex.swift */ = {isa = PBXFileReference; path = Mutex.swift; sourceTree = ""; }; - OBJ_632 /* Source.swift */ = {isa = PBXFileReference; path = Source.swift; sourceTree = ""; }; - OBJ_633 /* SourceLength.swift */ = {isa = PBXFileReference; path = SourceLength.swift; sourceTree = ""; }; - OBJ_634 /* SourceLocation.swift */ = {isa = PBXFileReference; path = SourceLocation.swift; sourceTree = ""; }; - OBJ_635 /* SourceRange.swift */ = {isa = PBXFileReference; path = SourceRange.swift; sourceTree = ""; }; - OBJ_636 /* String.swift */ = {isa = PBXFileReference; path = String.swift; sourceTree = ""; }; - OBJ_637 /* StringCodeSource.swift */ = {isa = PBXFileReference; path = StringCodeSource.swift; sourceTree = ""; }; - OBJ_638 /* Utils.swift */ = {isa = PBXFileReference; path = Utils.swift; sourceTree = ""; }; + OBJ_630 /* MemberBuilder.swift */ = {isa = PBXFileReference; path = MemberBuilder.swift; sourceTree = ""; }; + OBJ_631 /* TypeBuilder.swift */ = {isa = PBXFileReference; path = TypeBuilder.swift; sourceTree = ""; }; + OBJ_632 /* _FunctionBuilder.swift */ = {isa = PBXFileReference; path = _FunctionBuilder.swift; sourceTree = ""; }; + OBJ_633 /* ExpressionPassTestCase.swift */ = {isa = PBXFileReference; path = ExpressionPassTestCase.swift; sourceTree = ""; }; + OBJ_634 /* ExpressionPrinter.swift */ = {isa = PBXFileReference; path = ExpressionPrinter.swift; sourceTree = ""; }; + OBJ_635 /* MersenneTwister.swift */ = {isa = PBXFileReference; path = MersenneTwister.swift; sourceTree = ""; }; + OBJ_636 /* StatementPrinter.swift */ = {isa = PBXFileReference; path = StatementPrinter.swift; sourceTree = ""; }; + OBJ_637 /* StringDiffTesting.swift */ = {isa = PBXFileReference; path = StringDiffTesting.swift; sourceTree = ""; }; + OBJ_638 /* SyntaxNode+TestUtils.swift */ = {isa = PBXFileReference; path = "SyntaxNode+TestUtils.swift"; sourceTree = ""; }; + OBJ_639 /* TestWriterOutput.swift */ = {isa = PBXFileReference; path = TestWriterOutput.swift; sourceTree = ""; }; OBJ_64 /* ASTSimplifier.swift */ = {isa = PBXFileReference; path = ASTSimplifier.swift; sourceTree = ""; }; - OBJ_640 /* NullRewriterOutputTarget.swift */ = {isa = PBXFileReference; path = NullRewriterOutputTarget.swift; sourceTree = ""; }; - OBJ_641 /* RewriterOutputTarget.swift */ = {isa = PBXFileReference; path = RewriterOutputTarget.swift; sourceTree = ""; }; - OBJ_642 /* StringRewriterOutput.swift */ = {isa = PBXFileReference; path = StringRewriterOutput.swift; sourceTree = ""; }; - OBJ_646 /* CallGraph+CreationTests.swift */ = {isa = PBXFileReference; path = "CallGraph+CreationTests.swift"; sourceTree = ""; }; - OBJ_647 /* CallGraphTestUtils.swift */ = {isa = PBXFileReference; path = CallGraphTestUtils.swift; sourceTree = ""; }; - OBJ_648 /* CallGraphTests.swift */ = {isa = PBXFileReference; path = CallGraphTests.swift; sourceTree = ""; }; + OBJ_640 /* VirtualFileDisk.swift */ = {isa = PBXFileReference; path = VirtualFileDisk.swift; sourceTree = ""; }; + OBJ_642 /* ios-framework-protocols.json */ = {isa = PBXFileReference; path = "ios-framework-protocols.json"; sourceTree = ""; }; + OBJ_643 /* ios-framework-classes.json */ = {isa = PBXFileReference; path = "ios-framework-classes.json"; sourceTree = ""; }; + OBJ_644 /* TypeDefinitions.swift */ = {isa = PBXFileReference; path = TypeDefinitions.swift; sourceTree = ""; }; + OBJ_647 /* CodeDefinition.swift */ = {isa = PBXFileReference; path = CodeDefinition.swift; sourceTree = ""; }; + OBJ_648 /* GlobalCodeDefinition.swift */ = {isa = PBXFileReference; path = GlobalCodeDefinition.swift; sourceTree = ""; }; + OBJ_649 /* GlobalIntentionCodeDefinition.swift */ = {isa = PBXFileReference; path = GlobalIntentionCodeDefinition.swift; sourceTree = ""; }; OBJ_65 /* AllocInitExpressionPass.swift */ = {isa = PBXFileReference; path = AllocInitExpressionPass.swift; sourceTree = ""; }; - OBJ_650 /* ControlFlowGraph+CreationExpTests.swift */ = {isa = PBXFileReference; path = "ControlFlowGraph+CreationExpTests.swift"; sourceTree = ""; }; - OBJ_651 /* ControlFlowGraph+CreationStmtTests.swift */ = {isa = PBXFileReference; path = "ControlFlowGraph+CreationStmtTests.swift"; sourceTree = ""; }; - OBJ_652 /* ControlFlowGraph+CreationTests.swift */ = {isa = PBXFileReference; path = "ControlFlowGraph+CreationTests.swift"; sourceTree = ""; }; - OBJ_653 /* ControlFlowGraphTestUtils.swift */ = {isa = PBXFileReference; path = ControlFlowGraphTestUtils.swift; sourceTree = ""; }; - OBJ_654 /* DefinitionTypePropagatorTests.swift */ = {isa = PBXFileReference; path = DefinitionTypePropagatorTests.swift; sourceTree = ""; }; - OBJ_655 /* DirectedGraphTests.swift */ = {isa = PBXFileReference; path = DirectedGraphTests.swift; sourceTree = ""; }; - OBJ_656 /* Graphviz+TestUtils.swift */ = {isa = PBXFileReference; path = "Graphviz+TestUtils.swift"; sourceTree = ""; }; - OBJ_657 /* ReachingDefinitionAnalyzerTests.swift */ = {isa = PBXFileReference; path = ReachingDefinitionAnalyzerTests.swift; sourceTree = ""; }; - OBJ_659 /* BaseUsageAnalyzerTests.swift */ = {isa = PBXFileReference; path = BaseUsageAnalyzerTests.swift; sourceTree = ""; }; + OBJ_650 /* KnownMemberCodeDefinition.swift */ = {isa = PBXFileReference; path = KnownMemberCodeDefinition.swift; sourceTree = ""; }; + OBJ_651 /* LocalCodeDefinition.swift */ = {isa = PBXFileReference; path = LocalCodeDefinition.swift; sourceTree = ""; }; + OBJ_652 /* TypeCodeDefinition.swift */ = {isa = PBXFileReference; path = TypeCodeDefinition.swift; sourceTree = ""; }; + OBJ_654 /* ArrayDefinitionsSource.swift */ = {isa = PBXFileReference; path = ArrayDefinitionsSource.swift; sourceTree = ""; }; + OBJ_655 /* CodeScope.swift */ = {isa = PBXFileReference; path = CodeScope.swift; sourceTree = ""; }; + OBJ_656 /* CompoundDefinitionsSource.swift */ = {isa = PBXFileReference; path = CompoundDefinitionsSource.swift; sourceTree = ""; }; + OBJ_657 /* DefaultCodeScope.swift */ = {isa = PBXFileReference; path = DefaultCodeScope.swift; sourceTree = ""; }; + OBJ_658 /* DefinitionsSource.swift */ = {isa = PBXFileReference; path = DefinitionsSource.swift; sourceTree = ""; }; + OBJ_659 /* SyntaxNode+CodeScope.swift */ = {isa = PBXFileReference; path = "SyntaxNode+CodeScope.swift"; sourceTree = ""; }; OBJ_66 /* BaseExpressionPass.swift */ = {isa = PBXFileReference; path = BaseExpressionPass.swift; sourceTree = ""; }; - OBJ_660 /* IntentionCollectionUsageAnalyzerTests.swift */ = {isa = PBXFileReference; path = IntentionCollectionUsageAnalyzerTests.swift; sourceTree = ""; }; - OBJ_661 /* LocalUsageAnalyzerTests.swift */ = {isa = PBXFileReference; path = LocalUsageAnalyzerTests.swift; sourceTree = ""; }; - OBJ_662 /* UsageAnalysisTests.swift */ = {isa = PBXFileReference; path = UsageAnalysisTests.swift; sourceTree = ""; }; - OBJ_664 /* CoreGraphicsCompoundTypeTests.swift */ = {isa = PBXFileReference; path = CoreGraphicsCompoundTypeTests.swift; sourceTree = ""; }; - OBJ_665 /* FoundationCompoundTypesTests.swift */ = {isa = PBXFileReference; path = FoundationCompoundTypesTests.swift; sourceTree = ""; }; - OBJ_666 /* FunctionInvocationTransformerTests.swift */ = {isa = PBXFileReference; path = FunctionInvocationTransformerTests.swift; sourceTree = ""; }; - OBJ_667 /* SwiftClassInterfaceParserTests.swift */ = {isa = PBXFileReference; path = SwiftClassInterfaceParserTests.swift; sourceTree = ""; }; - OBJ_668 /* UIColorCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIColorCompoundTypeTests.swift; sourceTree = ""; }; - OBJ_669 /* UIControlCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIControlCompoundTypeTests.swift; sourceTree = ""; }; + OBJ_660 /* CompoundKnownType.swift */ = {isa = PBXFileReference; path = CompoundKnownType.swift; sourceTree = ""; }; + OBJ_661 /* GlobalsProvider.swift */ = {isa = PBXFileReference; path = GlobalsProvider.swift; sourceTree = ""; }; + OBJ_662 /* IntentionCollectionTypeSystem.swift */ = {isa = PBXFileReference; path = IntentionCollectionTypeSystem.swift; sourceTree = ""; }; + OBJ_664 /* DynamicMemberLookup.swift */ = {isa = PBXFileReference; path = DynamicMemberLookup.swift; sourceTree = ""; }; + OBJ_665 /* KnownTypeMemberLookup.swift */ = {isa = PBXFileReference; path = KnownTypeMemberLookup.swift; sourceTree = ""; }; + OBJ_666 /* MemberLookupType.swift */ = {isa = PBXFileReference; path = MemberLookupType.swift; sourceTree = ""; }; + OBJ_667 /* MemberSearchCache.swift */ = {isa = PBXFileReference; path = MemberSearchCache.swift; sourceTree = ""; }; + OBJ_668 /* SwiftTypeMemberLookup.swift */ = {isa = PBXFileReference; path = SwiftTypeMemberLookup.swift; sourceTree = ""; }; + OBJ_669 /* TypeMemberLookupContext.swift */ = {isa = PBXFileReference; path = TypeMemberLookupContext.swift; sourceTree = ""; }; OBJ_67 /* CanonicalNameExpressionPass.swift */ = {isa = PBXFileReference; path = CanonicalNameExpressionPass.swift; sourceTree = ""; }; - OBJ_670 /* UIGestureRecognizerCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIGestureRecognizerCompoundTypeTests.swift; sourceTree = ""; }; - OBJ_671 /* UILabelCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UILabelCompoundTypeTests.swift; sourceTree = ""; }; - OBJ_672 /* UIResponderCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIResponderCompoundTypeTests.swift; sourceTree = ""; }; - OBJ_673 /* UIViewCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIViewCompoundTypeTests.swift; sourceTree = ""; }; - OBJ_674 /* UIViewControllerCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIViewControllerCompoundTypeTests.swift; sourceTree = ""; }; - OBJ_676 /* ASTRewriterPassApplierTests.swift */ = {isa = PBXFileReference; path = ASTRewriterPassApplierTests.swift; sourceTree = ""; }; - OBJ_677 /* ASTSimplifierTests.swift */ = {isa = PBXFileReference; path = ASTSimplifierTests.swift; sourceTree = ""; }; - OBJ_679 /* ObjectiveCExpressionPassTestAdapter.swift */ = {isa = PBXFileReference; path = ObjectiveCExpressionPassTestAdapter.swift; sourceTree = ""; }; + OBJ_670 /* OverloadResolver.swift */ = {isa = PBXFileReference; path = OverloadResolver.swift; sourceTree = ""; }; + OBJ_672 /* KnownTypeProvider.swift */ = {isa = PBXFileReference; path = KnownTypeProvider.swift; sourceTree = ""; }; + OBJ_673 /* TypealiasProvider.swift */ = {isa = PBXFileReference; path = TypealiasProvider.swift; sourceTree = ""; }; + OBJ_674 /* TypeCategory.swift */ = {isa = PBXFileReference; path = TypeCategory.swift; sourceTree = ""; }; + OBJ_675 /* TypeMapper.swift */ = {isa = PBXFileReference; path = TypeMapper.swift; sourceTree = ""; }; + OBJ_676 /* TypeMemberLookup.swift */ = {isa = PBXFileReference; path = TypeMemberLookup.swift; sourceTree = ""; }; + OBJ_678 /* CallableTypeResolver.swift */ = {isa = PBXFileReference; path = CallableTypeResolver.swift; sourceTree = ""; }; + OBJ_679 /* CoercionVerifier.swift */ = {isa = PBXFileReference; path = CoercionVerifier.swift; sourceTree = ""; }; OBJ_68 /* CompoundTypeApplierExpressionPass.swift */ = {isa = PBXFileReference; path = CompoundTypeApplierExpressionPass.swift; sourceTree = ""; }; - OBJ_680 /* AllocInitExpressionPassTests.swift */ = {isa = PBXFileReference; path = AllocInitExpressionPassTests.swift; sourceTree = ""; }; - OBJ_681 /* CanonicalNameExpressionPassTests.swift */ = {isa = PBXFileReference; path = CanonicalNameExpressionPassTests.swift; sourceTree = ""; }; - OBJ_682 /* CompoundTypeApplierExpressionPassTests.swift */ = {isa = PBXFileReference; path = CompoundTypeApplierExpressionPassTests.swift; sourceTree = ""; }; - OBJ_683 /* CoreGraphicsExpressionPassTests.swift */ = {isa = PBXFileReference; path = CoreGraphicsExpressionPassTests.swift; sourceTree = ""; }; - OBJ_684 /* EnumRewriterExpressionPassTests.swift */ = {isa = PBXFileReference; path = EnumRewriterExpressionPassTests.swift; sourceTree = ""; }; - OBJ_685 /* ExpressionPassTestCase.swift */ = {isa = PBXFileReference; path = ExpressionPassTestCase.swift; sourceTree = ""; }; - OBJ_686 /* FoundationExpressionPassTests.swift */ = {isa = PBXFileReference; path = FoundationExpressionPassTests.swift; sourceTree = ""; }; - OBJ_687 /* InitRewriterExpressionPassTests.swift */ = {isa = PBXFileReference; path = InitRewriterExpressionPassTests.swift; sourceTree = ""; }; - OBJ_688 /* LocalConstantPromotionExpressionPassTests.swift */ = {isa = PBXFileReference; path = LocalConstantPromotionExpressionPassTests.swift; sourceTree = ""; }; - OBJ_689 /* NilValueTransformationsPassTests.swift */ = {isa = PBXFileReference; path = NilValueTransformationsPassTests.swift; sourceTree = ""; }; + OBJ_680 /* DefaultLocalTypeResolverInvoker.swift */ = {isa = PBXFileReference; path = DefaultLocalTypeResolverInvoker.swift; sourceTree = ""; }; + OBJ_681 /* DefaultTypeResolverInvoker.swift */ = {isa = PBXFileReference; path = DefaultTypeResolverInvoker.swift; sourceTree = ""; }; + OBJ_682 /* ExpressionTypeResolver.swift */ = {isa = PBXFileReference; path = ExpressionTypeResolver.swift; sourceTree = ""; }; + OBJ_683 /* IteratorTypeResolver.swift */ = {isa = PBXFileReference; path = IteratorTypeResolver.swift; sourceTree = ""; }; + OBJ_684 /* LocalTypeResolverInvoker.swift */ = {isa = PBXFileReference; path = LocalTypeResolverInvoker.swift; sourceTree = ""; }; + OBJ_685 /* PatternMatcher.swift */ = {isa = PBXFileReference; path = PatternMatcher.swift; sourceTree = ""; }; + OBJ_686 /* TypeResolverIntrinsicsBuilder.swift */ = {isa = PBXFileReference; path = TypeResolverIntrinsicsBuilder.swift; sourceTree = ""; }; + OBJ_687 /* TypeResolverInvoker.swift */ = {isa = PBXFileReference; path = TypeResolverInvoker.swift; sourceTree = ""; }; + OBJ_688 /* TypeSystem.swift */ = {isa = PBXFileReference; path = TypeSystem.swift; sourceTree = ""; }; OBJ_69 /* CoreGraphicsExpressionPass.swift */ = {isa = PBXFileReference; path = CoreGraphicsExpressionPass.swift; sourceTree = ""; }; - OBJ_690 /* NumberCommonsExpressionPassTests.swift */ = {isa = PBXFileReference; path = NumberCommonsExpressionPassTests.swift; sourceTree = ""; }; - OBJ_691 /* PropertyAsMethodAccessCorrectingExpressionPassTests.swift */ = {isa = PBXFileReference; path = PropertyAsMethodAccessCorrectingExpressionPassTests.swift; sourceTree = ""; }; - OBJ_692 /* UIKitExpressionPassTests.swift */ = {isa = PBXFileReference; path = UIKitExpressionPassTests.swift; sourceTree = ""; }; - OBJ_693 /* VariableNullabilityPromotionExpressionPassTests.swift */ = {isa = PBXFileReference; path = VariableNullabilityPromotionExpressionPassTests.swift; sourceTree = ""; }; - OBJ_695 /* BaseGlobalsProviderTestCase.swift */ = {isa = PBXFileReference; path = BaseGlobalsProviderTestCase.swift; sourceTree = ""; }; - OBJ_696 /* CLibGlobalsProvidersTests.swift */ = {isa = PBXFileReference; path = CLibGlobalsProvidersTests.swift; sourceTree = ""; }; - OBJ_697 /* DefaultGlobalsProvidersSourceTests.swift */ = {isa = PBXFileReference; path = DefaultGlobalsProvidersSourceTests.swift; sourceTree = ""; }; - OBJ_698 /* OpenGLESGlobalsProviderTests.swift */ = {isa = PBXFileReference; path = OpenGLESGlobalsProviderTests.swift; sourceTree = ""; }; - OBJ_699 /* UIKitGlobalsProviderTests.swift */ = {isa = PBXFileReference; path = UIKitGlobalsProviderTests.swift; sourceTree = ""; }; + OBJ_690 /* CodeSource.swift */ = {isa = PBXFileReference; path = CodeSource.swift; sourceTree = ""; }; + OBJ_691 /* ConcurrentOperationQueue.swift */ = {isa = PBXFileReference; path = ConcurrentOperationQueue.swift; sourceTree = ""; }; + OBJ_692 /* ConcurrentValue.swift */ = {isa = PBXFileReference; path = ConcurrentValue.swift; sourceTree = ""; }; + OBJ_693 /* Diagnostics.swift */ = {isa = PBXFileReference; path = Diagnostics.swift; sourceTree = ""; }; + OBJ_694 /* InvalidSource.swift */ = {isa = PBXFileReference; path = InvalidSource.swift; sourceTree = ""; }; + OBJ_695 /* LinuxSupport.swift */ = {isa = PBXFileReference; path = LinuxSupport.swift; sourceTree = ""; }; + OBJ_696 /* Mutex.swift */ = {isa = PBXFileReference; path = Mutex.swift; sourceTree = ""; }; + OBJ_697 /* Source.swift */ = {isa = PBXFileReference; path = Source.swift; sourceTree = ""; }; + OBJ_698 /* SourceLength.swift */ = {isa = PBXFileReference; path = SourceLength.swift; sourceTree = ""; }; + OBJ_699 /* SourceLocation.swift */ = {isa = PBXFileReference; path = SourceLocation.swift; sourceTree = ""; }; OBJ_70 /* EnumRewriterExpressionPass.swift */ = {isa = PBXFileReference; path = EnumRewriterExpressionPass.swift; sourceTree = ""; }; - OBJ_701 /* GrammarModelBaseTests.swift */ = {isa = PBXFileReference; path = GrammarModelBaseTests.swift; sourceTree = ""; }; - OBJ_703 /* GraphViz+GraphAttributesTests.swift */ = {isa = PBXFileReference; path = "GraphViz+GraphAttributesTests.swift"; sourceTree = ""; }; - OBJ_704 /* GraphVizTests.swift */ = {isa = PBXFileReference; path = GraphVizTests.swift; sourceTree = ""; }; - OBJ_706 /* DetectNoReturnsIntentionPassTests.swift */ = {isa = PBXFileReference; path = DetectNoReturnsIntentionPassTests.swift; sourceTree = ""; }; - OBJ_707 /* DetectNonnullReturnsIntentionPassTests.swift */ = {isa = PBXFileReference; path = DetectNonnullReturnsIntentionPassTests.swift; sourceTree = ""; }; - OBJ_708 /* DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift */ = {isa = PBXFileReference; path = DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift; sourceTree = ""; }; - OBJ_709 /* FileTypeMergingIntentionPassTests.swift */ = {isa = PBXFileReference; path = FileTypeMergingIntentionPassTests.swift; sourceTree = ""; }; + OBJ_700 /* SourceRange.swift */ = {isa = PBXFileReference; path = SourceRange.swift; sourceTree = ""; }; + OBJ_701 /* String.swift */ = {isa = PBXFileReference; path = String.swift; sourceTree = ""; }; + OBJ_702 /* StringCodeSource.swift */ = {isa = PBXFileReference; path = StringCodeSource.swift; sourceTree = ""; }; + OBJ_703 /* Utils.swift */ = {isa = PBXFileReference; path = Utils.swift; sourceTree = ""; }; + OBJ_705 /* NullRewriterOutputTarget.swift */ = {isa = PBXFileReference; path = NullRewriterOutputTarget.swift; sourceTree = ""; }; + OBJ_706 /* RewriterOutputTarget.swift */ = {isa = PBXFileReference; path = RewriterOutputTarget.swift; sourceTree = ""; }; + OBJ_707 /* StringRewriterOutput.swift */ = {isa = PBXFileReference; path = StringRewriterOutput.swift; sourceTree = ""; }; OBJ_71 /* FoundationExpressionPass.swift */ = {isa = PBXFileReference; path = FoundationExpressionPass.swift; sourceTree = ""; }; - OBJ_710 /* ImportDirectiveIntentionPassTests.swift */ = {isa = PBXFileReference; path = ImportDirectiveIntentionPassTests.swift; sourceTree = ""; }; - OBJ_711 /* InitAnalysisIntentionPassTests.swift */ = {isa = PBXFileReference; path = InitAnalysisIntentionPassTests.swift; sourceTree = ""; }; - OBJ_712 /* PromoteProtocolPropertyConformanceIntentionPassTests.swift */ = {isa = PBXFileReference; path = PromoteProtocolPropertyConformanceIntentionPassTests.swift; sourceTree = ""; }; - OBJ_713 /* ProtocolNullabilityPropagationToConformersIntentionPassTests.swift */ = {isa = PBXFileReference; path = ProtocolNullabilityPropagationToConformersIntentionPassTests.swift; sourceTree = ""; }; - OBJ_714 /* RemoveEmptyExtensionsIntentionPassTests.swift */ = {isa = PBXFileReference; path = RemoveEmptyExtensionsIntentionPassTests.swift; sourceTree = ""; }; - OBJ_715 /* StoredPropertyToNominalTypesIntentionPassTests.swift */ = {isa = PBXFileReference; path = StoredPropertyToNominalTypesIntentionPassTests.swift; sourceTree = ""; }; - OBJ_716 /* SubscriptDeclarationIntentionPassTests.swift */ = {isa = PBXFileReference; path = SubscriptDeclarationIntentionPassTests.swift; sourceTree = ""; }; - OBJ_717 /* SwiftifyMethodSignaturesIntentionPassTests.swift */ = {isa = PBXFileReference; path = SwiftifyMethodSignaturesIntentionPassTests.swift; sourceTree = ""; }; - OBJ_718 /* TestUtils.swift */ = {isa = PBXFileReference; path = TestUtils.swift; sourceTree = ""; }; - OBJ_719 /* UIKitCorrectorIntentionPassTests.swift */ = {isa = PBXFileReference; path = UIKitCorrectorIntentionPassTests.swift; sourceTree = ""; }; + OBJ_711 /* CallGraph+CreationTests.swift */ = {isa = PBXFileReference; path = "CallGraph+CreationTests.swift"; sourceTree = ""; }; + OBJ_712 /* CallGraphTestUtils.swift */ = {isa = PBXFileReference; path = CallGraphTestUtils.swift; sourceTree = ""; }; + OBJ_713 /* CallGraphTests.swift */ = {isa = PBXFileReference; path = CallGraphTests.swift; sourceTree = ""; }; + OBJ_715 /* ControlFlowGraph+CreationExpTests.swift */ = {isa = PBXFileReference; path = "ControlFlowGraph+CreationExpTests.swift"; sourceTree = ""; }; + OBJ_716 /* ControlFlowGraph+CreationStmtTests.swift */ = {isa = PBXFileReference; path = "ControlFlowGraph+CreationStmtTests.swift"; sourceTree = ""; }; + OBJ_717 /* ControlFlowGraph+CreationTests.swift */ = {isa = PBXFileReference; path = "ControlFlowGraph+CreationTests.swift"; sourceTree = ""; }; + OBJ_718 /* ControlFlowGraphTestUtils.swift */ = {isa = PBXFileReference; path = ControlFlowGraphTestUtils.swift; sourceTree = ""; }; + OBJ_719 /* DefinitionTypePropagatorTests.swift */ = {isa = PBXFileReference; path = DefinitionTypePropagatorTests.swift; sourceTree = ""; }; OBJ_72 /* InitRewriterExpressionPass.swift */ = {isa = PBXFileReference; path = InitRewriterExpressionPass.swift; sourceTree = ""; }; - OBJ_721 /* FromSourceIntentionTests.swift */ = {isa = PBXFileReference; path = FromSourceIntentionTests.swift; sourceTree = ""; }; - OBJ_722 /* FunctionBodyQueueTests.swift */ = {isa = PBXFileReference; path = FunctionBodyQueueTests.swift; sourceTree = ""; }; - OBJ_723 /* Intention+FileTests.swift */ = {isa = PBXFileReference; path = "Intention+FileTests.swift"; sourceTree = ""; }; - OBJ_725 /* ClassExtensionGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = ClassExtensionGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_726 /* ClassGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = ClassGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_727 /* DeinitGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = DeinitGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_728 /* EnumCaseGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = EnumCaseGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_729 /* EnumGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = EnumGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_720 /* DirectedGraphTests.swift */ = {isa = PBXFileReference; path = DirectedGraphTests.swift; sourceTree = ""; }; + OBJ_721 /* Graphviz+TestUtils.swift */ = {isa = PBXFileReference; path = "Graphviz+TestUtils.swift"; sourceTree = ""; }; + OBJ_722 /* ReachingDefinitionAnalyzerTests.swift */ = {isa = PBXFileReference; path = ReachingDefinitionAnalyzerTests.swift; sourceTree = ""; }; + OBJ_724 /* BaseUsageAnalyzerTests.swift */ = {isa = PBXFileReference; path = BaseUsageAnalyzerTests.swift; sourceTree = ""; }; + OBJ_725 /* IntentionCollectionUsageAnalyzerTests.swift */ = {isa = PBXFileReference; path = IntentionCollectionUsageAnalyzerTests.swift; sourceTree = ""; }; + OBJ_726 /* LocalUsageAnalyzerTests.swift */ = {isa = PBXFileReference; path = LocalUsageAnalyzerTests.swift; sourceTree = ""; }; + OBJ_727 /* UsageAnalysisTests.swift */ = {isa = PBXFileReference; path = UsageAnalysisTests.swift; sourceTree = ""; }; + OBJ_729 /* CoreGraphicsCompoundTypeTests.swift */ = {isa = PBXFileReference; path = CoreGraphicsCompoundTypeTests.swift; sourceTree = ""; }; OBJ_73 /* LocalConstantPromotionExpressionPass.swift */ = {isa = PBXFileReference; path = LocalConstantPromotionExpressionPass.swift; sourceTree = ""; }; - OBJ_730 /* FileGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = FileGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_731 /* FunctionBodyIntentionTests.swift */ = {isa = PBXFileReference; path = FunctionBodyIntentionTests.swift; sourceTree = ""; }; - OBJ_732 /* GlobalFunctionGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = GlobalFunctionGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_733 /* GlobalVariableGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = GlobalVariableGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_734 /* GlobalVariableInitialValueIntentionTests.swift */ = {isa = PBXFileReference; path = GlobalVariableInitialValueIntentionTests.swift; sourceTree = ""; }; - OBJ_735 /* InitGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = InitGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_736 /* InstanceVariableGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = InstanceVariableGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_737 /* MethodGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = MethodGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_738 /* PropertyGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = PropertyGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_739 /* PropertyInitialValueGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = PropertyInitialValueGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_730 /* FoundationCompoundTypesTests.swift */ = {isa = PBXFileReference; path = FoundationCompoundTypesTests.swift; sourceTree = ""; }; + OBJ_731 /* FunctionInvocationTransformerTests.swift */ = {isa = PBXFileReference; path = FunctionInvocationTransformerTests.swift; sourceTree = ""; }; + OBJ_732 /* SwiftClassInterfaceParserTests.swift */ = {isa = PBXFileReference; path = SwiftClassInterfaceParserTests.swift; sourceTree = ""; }; + OBJ_733 /* UIColorCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIColorCompoundTypeTests.swift; sourceTree = ""; }; + OBJ_734 /* UIControlCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIControlCompoundTypeTests.swift; sourceTree = ""; }; + OBJ_735 /* UIGestureRecognizerCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIGestureRecognizerCompoundTypeTests.swift; sourceTree = ""; }; + OBJ_736 /* UILabelCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UILabelCompoundTypeTests.swift; sourceTree = ""; }; + OBJ_737 /* UIResponderCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIResponderCompoundTypeTests.swift; sourceTree = ""; }; + OBJ_738 /* UIViewCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIViewCompoundTypeTests.swift; sourceTree = ""; }; + OBJ_739 /* UIViewControllerCompoundTypeTests.swift */ = {isa = PBXFileReference; path = UIViewControllerCompoundTypeTests.swift; sourceTree = ""; }; OBJ_74 /* MethodInvocationTransformer.swift */ = {isa = PBXFileReference; path = MethodInvocationTransformer.swift; sourceTree = ""; }; - OBJ_740 /* PropertySynthesizationIntentionTests.swift */ = {isa = PBXFileReference; path = PropertySynthesizationIntentionTests.swift; sourceTree = ""; }; - OBJ_741 /* ProtocolGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = ProtocolGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_742 /* ProtocolInheritanceIntentionTests.swift */ = {isa = PBXFileReference; path = ProtocolInheritanceIntentionTests.swift; sourceTree = ""; }; - OBJ_743 /* ProtocolMethodGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = ProtocolMethodGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_744 /* ProtocolPropertyGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = ProtocolPropertyGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_745 /* StructGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = StructGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_746 /* SubscriptGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = SubscriptGenerationIntentionTests.swift; sourceTree = ""; }; - OBJ_747 /* TypealiasIntentionTests.swift */ = {isa = PBXFileReference; path = TypealiasIntentionTests.swift; sourceTree = ""; }; - OBJ_749 /* IntentionSerializerTests.swift */ = {isa = PBXFileReference; path = IntentionSerializerTests.swift; sourceTree = ""; }; + OBJ_741 /* ASTRewriterPassApplierTests.swift */ = {isa = PBXFileReference; path = ASTRewriterPassApplierTests.swift; sourceTree = ""; }; + OBJ_742 /* ASTSimplifierTests.swift */ = {isa = PBXFileReference; path = ASTSimplifierTests.swift; sourceTree = ""; }; + OBJ_744 /* ObjectiveCExpressionPassTestAdapter.swift */ = {isa = PBXFileReference; path = ObjectiveCExpressionPassTestAdapter.swift; sourceTree = ""; }; + OBJ_745 /* AllocInitExpressionPassTests.swift */ = {isa = PBXFileReference; path = AllocInitExpressionPassTests.swift; sourceTree = ""; }; + OBJ_746 /* CanonicalNameExpressionPassTests.swift */ = {isa = PBXFileReference; path = CanonicalNameExpressionPassTests.swift; sourceTree = ""; }; + OBJ_747 /* CompoundTypeApplierExpressionPassTests.swift */ = {isa = PBXFileReference; path = CompoundTypeApplierExpressionPassTests.swift; sourceTree = ""; }; + OBJ_748 /* CoreGraphicsExpressionPassTests.swift */ = {isa = PBXFileReference; path = CoreGraphicsExpressionPassTests.swift; sourceTree = ""; }; + OBJ_749 /* EnumRewriterExpressionPassTests.swift */ = {isa = PBXFileReference; path = EnumRewriterExpressionPassTests.swift; sourceTree = ""; }; OBJ_75 /* MethodsToPropertyTransformer.swift */ = {isa = PBXFileReference; path = MethodsToPropertyTransformer.swift; sourceTree = ""; }; - OBJ_751 /* TestIntentionVisitor.swift */ = {isa = PBXFileReference; path = TestIntentionVisitor.swift; sourceTree = ""; }; - OBJ_753 /* KnownFileBuilderTests.swift */ = {isa = PBXFileReference; path = KnownFileBuilderTests.swift; sourceTree = ""; }; - OBJ_754 /* KnownTypeSerializerTests.swift */ = {isa = PBXFileReference; path = KnownTypeSerializerTests.swift; sourceTree = ""; }; - OBJ_755 /* TypeFormatter+ExtTests.swift */ = {isa = PBXFileReference; path = "TypeFormatter+ExtTests.swift"; sourceTree = ""; }; - OBJ_757 /* ObjcGrammarModelsTests.swift */ = {isa = PBXFileReference; path = ObjcGrammarModelsTests.swift; sourceTree = ""; }; + OBJ_750 /* ExpressionPassTestCase.swift */ = {isa = PBXFileReference; path = ExpressionPassTestCase.swift; sourceTree = ""; }; + OBJ_751 /* FoundationExpressionPassTests.swift */ = {isa = PBXFileReference; path = FoundationExpressionPassTests.swift; sourceTree = ""; }; + OBJ_752 /* InitRewriterExpressionPassTests.swift */ = {isa = PBXFileReference; path = InitRewriterExpressionPassTests.swift; sourceTree = ""; }; + OBJ_753 /* LocalConstantPromotionExpressionPassTests.swift */ = {isa = PBXFileReference; path = LocalConstantPromotionExpressionPassTests.swift; sourceTree = ""; }; + OBJ_754 /* NilValueTransformationsPassTests.swift */ = {isa = PBXFileReference; path = NilValueTransformationsPassTests.swift; sourceTree = ""; }; + OBJ_755 /* NumberCommonsExpressionPassTests.swift */ = {isa = PBXFileReference; path = NumberCommonsExpressionPassTests.swift; sourceTree = ""; }; + OBJ_756 /* PropertyAsMethodAccessCorrectingExpressionPassTests.swift */ = {isa = PBXFileReference; path = PropertyAsMethodAccessCorrectingExpressionPassTests.swift; sourceTree = ""; }; + OBJ_757 /* UIKitExpressionPassTests.swift */ = {isa = PBXFileReference; path = UIKitExpressionPassTests.swift; sourceTree = ""; }; + OBJ_758 /* VariableNullabilityPromotionExpressionPassTests.swift */ = {isa = PBXFileReference; path = VariableNullabilityPromotionExpressionPassTests.swift; sourceTree = ""; }; OBJ_76 /* NilValueTransformationsPass.swift */ = {isa = PBXFileReference; path = NilValueTransformationsPass.swift; sourceTree = ""; }; - OBJ_760 /* AntlrDeclarationParserTests.swift */ = {isa = PBXFileReference; path = AntlrDeclarationParserTests.swift; sourceTree = ""; }; - OBJ_761 /* DeclarationExtractorTests.swift */ = {isa = PBXFileReference; path = DeclarationExtractorTests.swift; sourceTree = ""; }; - OBJ_762 /* DeclarationTranslatorTests.swift */ = {isa = PBXFileReference; path = DeclarationTranslatorTests.swift; sourceTree = ""; }; - OBJ_763 /* DefinitionCollectorTests.swift */ = {isa = PBXFileReference; path = DefinitionCollectorTests.swift; sourceTree = ""; }; - OBJ_764 /* ObjcParserTests.swift */ = {isa = PBXFileReference; path = ObjcParserTests.swift; sourceTree = ""; }; - OBJ_765 /* ObjcTypeParserTests.swift */ = {isa = PBXFileReference; path = ObjcTypeParserTests.swift; sourceTree = ""; }; - OBJ_767 /* AntlrErrorListener.swift */ = {isa = PBXFileReference; path = AntlrErrorListener.swift; sourceTree = ""; }; - OBJ_768 /* BaseParserTestFixture.swift */ = {isa = PBXFileReference; path = BaseParserTestFixture.swift; sourceTree = ""; }; - OBJ_769 /* DeclarationExtractor+Asserter.swift */ = {isa = PBXFileReference; path = "DeclarationExtractor+Asserter.swift"; sourceTree = ""; }; + OBJ_760 /* BaseGlobalsProviderTestCase.swift */ = {isa = PBXFileReference; path = BaseGlobalsProviderTestCase.swift; sourceTree = ""; }; + OBJ_761 /* CLibGlobalsProvidersTests.swift */ = {isa = PBXFileReference; path = CLibGlobalsProvidersTests.swift; sourceTree = ""; }; + OBJ_762 /* DefaultGlobalsProvidersSourceTests.swift */ = {isa = PBXFileReference; path = DefaultGlobalsProvidersSourceTests.swift; sourceTree = ""; }; + OBJ_763 /* OpenGLESGlobalsProviderTests.swift */ = {isa = PBXFileReference; path = OpenGLESGlobalsProviderTests.swift; sourceTree = ""; }; + OBJ_764 /* UIKitGlobalsProviderTests.swift */ = {isa = PBXFileReference; path = UIKitGlobalsProviderTests.swift; sourceTree = ""; }; + OBJ_766 /* GrammarModelBaseTests.swift */ = {isa = PBXFileReference; path = GrammarModelBaseTests.swift; sourceTree = ""; }; + OBJ_768 /* GraphViz+GraphAttributesTests.swift */ = {isa = PBXFileReference; path = "GraphViz+GraphAttributesTests.swift"; sourceTree = ""; }; + OBJ_769 /* GraphVizTests.swift */ = {isa = PBXFileReference; path = GraphVizTests.swift; sourceTree = ""; }; OBJ_77 /* NumberCommonsExpressionPass.swift */ = {isa = PBXFileReference; path = NumberCommonsExpressionPass.swift; sourceTree = ""; }; - OBJ_770 /* DeclarationSyntaxElementType+Asserter.swift */ = {isa = PBXFileReference; path = "DeclarationSyntaxElementType+Asserter.swift"; sourceTree = ""; }; - OBJ_771 /* DeclarationTranslator+Asserter.swift */ = {isa = PBXFileReference; path = "DeclarationTranslator+Asserter.swift"; sourceTree = ""; }; - OBJ_773 /* ASTRewriterPassTests.swift */ = {isa = PBXFileReference; path = ASTRewriterPassTests.swift; sourceTree = ""; }; - OBJ_774 /* CPreprocessorDirectiveConverterTests.swift */ = {isa = PBXFileReference; path = CPreprocessorDirectiveConverterTests.swift; sourceTree = ""; }; - OBJ_776 /* ObjectiveCASTCorrectorExpressionPassTests.swift */ = {isa = PBXFileReference; path = ObjectiveCASTCorrectorExpressionPassTests.swift; sourceTree = ""; }; - OBJ_778 /* MultiFileTestBuilder.swift */ = {isa = PBXFileReference; path = MultiFileTestBuilder.swift; sourceTree = ""; }; - OBJ_779 /* SingleFileTestUtils.swift */ = {isa = PBXFileReference; path = SingleFileTestUtils.swift; sourceTree = ""; }; + OBJ_771 /* DetectNoReturnsIntentionPassTests.swift */ = {isa = PBXFileReference; path = DetectNoReturnsIntentionPassTests.swift; sourceTree = ""; }; + OBJ_772 /* DetectNonnullReturnsIntentionPassTests.swift */ = {isa = PBXFileReference; path = DetectNonnullReturnsIntentionPassTests.swift; sourceTree = ""; }; + OBJ_773 /* DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift */ = {isa = PBXFileReference; path = DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift; sourceTree = ""; }; + OBJ_774 /* FileTypeMergingIntentionPassTests.swift */ = {isa = PBXFileReference; path = FileTypeMergingIntentionPassTests.swift; sourceTree = ""; }; + OBJ_775 /* ImportDirectiveIntentionPassTests.swift */ = {isa = PBXFileReference; path = ImportDirectiveIntentionPassTests.swift; sourceTree = ""; }; + OBJ_776 /* InitAnalysisIntentionPassTests.swift */ = {isa = PBXFileReference; path = InitAnalysisIntentionPassTests.swift; sourceTree = ""; }; + OBJ_777 /* PromoteProtocolPropertyConformanceIntentionPassTests.swift */ = {isa = PBXFileReference; path = PromoteProtocolPropertyConformanceIntentionPassTests.swift; sourceTree = ""; }; + OBJ_778 /* ProtocolNullabilityPropagationToConformersIntentionPassTests.swift */ = {isa = PBXFileReference; path = ProtocolNullabilityPropagationToConformersIntentionPassTests.swift; sourceTree = ""; }; + OBJ_779 /* RemoveEmptyExtensionsIntentionPassTests.swift */ = {isa = PBXFileReference; path = RemoveEmptyExtensionsIntentionPassTests.swift; sourceTree = ""; }; OBJ_78 /* PropertyAsMethodAccessCorrectingExpressionPass.swift */ = {isa = PBXFileReference; path = PropertyAsMethodAccessCorrectingExpressionPass.swift; sourceTree = ""; }; - OBJ_781 /* ObjectiveCPropertyMergeIntentionPassTests.swift */ = {isa = PBXFileReference; path = ObjectiveCPropertyMergeIntentionPassTests.swift; sourceTree = ""; }; - OBJ_782 /* ObjectiveC2SwiftRewriter+Crashers.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+Crashers.swift"; sourceTree = ""; }; - OBJ_783 /* ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift"; sourceTree = ""; }; - OBJ_784 /* ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift"; sourceTree = ""; }; - OBJ_785 /* ObjectiveC2SwiftRewriter+IntentionPassTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+IntentionPassTests.swift"; sourceTree = ""; }; - OBJ_786 /* ObjectiveC2SwiftRewriter+MultiFilesTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+MultiFilesTests.swift"; sourceTree = ""; }; - OBJ_787 /* ObjectiveC2SwiftRewriter+NullabilityTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+NullabilityTests.swift"; sourceTree = ""; }; - OBJ_788 /* ObjectiveC2SwiftRewriter+SourcePreprocessor.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+SourcePreprocessor.swift"; sourceTree = ""; }; - OBJ_789 /* ObjectiveC2SwiftRewriter+StmtTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+StmtTests.swift"; sourceTree = ""; }; + OBJ_780 /* StoredPropertyToNominalTypesIntentionPassTests.swift */ = {isa = PBXFileReference; path = StoredPropertyToNominalTypesIntentionPassTests.swift; sourceTree = ""; }; + OBJ_781 /* SubscriptDeclarationIntentionPassTests.swift */ = {isa = PBXFileReference; path = SubscriptDeclarationIntentionPassTests.swift; sourceTree = ""; }; + OBJ_782 /* SwiftifyMethodSignaturesIntentionPassTests.swift */ = {isa = PBXFileReference; path = SwiftifyMethodSignaturesIntentionPassTests.swift; sourceTree = ""; }; + OBJ_783 /* TestUtils.swift */ = {isa = PBXFileReference; path = TestUtils.swift; sourceTree = ""; }; + OBJ_784 /* UIKitCorrectorIntentionPassTests.swift */ = {isa = PBXFileReference; path = UIKitCorrectorIntentionPassTests.swift; sourceTree = ""; }; + OBJ_786 /* FromSourceIntentionTests.swift */ = {isa = PBXFileReference; path = FromSourceIntentionTests.swift; sourceTree = ""; }; + OBJ_787 /* FunctionBodyQueueTests.swift */ = {isa = PBXFileReference; path = FunctionBodyQueueTests.swift; sourceTree = ""; }; + OBJ_788 /* Intention+FileTests.swift */ = {isa = PBXFileReference; path = "Intention+FileTests.swift"; sourceTree = ""; }; OBJ_79 /* PropertyInvocationTransformer.swift */ = {isa = PBXFileReference; path = PropertyInvocationTransformer.swift; sourceTree = ""; }; - OBJ_790 /* ObjectiveC2SwiftRewriter+ThreadingTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+ThreadingTests.swift"; sourceTree = ""; }; - OBJ_791 /* ObjectiveC2SwiftRewriter+TypingTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+TypingTests.swift"; sourceTree = ""; }; - OBJ_792 /* ObjectiveC2SwiftRewriterJobBuilderTests.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriterJobBuilderTests.swift; sourceTree = ""; }; - OBJ_793 /* ObjectiveC2SwiftRewriterJobTests.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriterJobTests.swift; sourceTree = ""; }; - OBJ_794 /* ObjectiveC2SwiftRewriterTests.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriterTests.swift; sourceTree = ""; }; - OBJ_795 /* ObjectiveCASTReaderContextTests.swift */ = {isa = PBXFileReference; path = ObjectiveCASTReaderContextTests.swift; sourceTree = ""; }; - OBJ_796 /* ObjectiveCExprASTReaderTests.swift */ = {isa = PBXFileReference; path = ObjectiveCExprASTReaderTests.swift; sourceTree = ""; }; - OBJ_797 /* ObjectiveCFileCollectionStepTests.swift */ = {isa = PBXFileReference; path = ObjectiveCFileCollectionStepTests.swift; sourceTree = ""; }; - OBJ_798 /* ObjectiveCImportDirectiveFileCollectionDelegateTests.swift */ = {isa = PBXFileReference; path = ObjectiveCImportDirectiveFileCollectionDelegateTests.swift; sourceTree = ""; }; - OBJ_799 /* ObjectiveCIntentionCollectorTests.swift */ = {isa = PBXFileReference; path = ObjectiveCIntentionCollectorTests.swift; sourceTree = ""; }; + OBJ_790 /* ClassExtensionGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = ClassExtensionGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_791 /* ClassGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = ClassGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_792 /* DeinitGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = DeinitGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_793 /* EnumCaseGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = EnumCaseGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_794 /* EnumGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = EnumGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_795 /* FileGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = FileGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_796 /* FunctionBodyIntentionTests.swift */ = {isa = PBXFileReference; path = FunctionBodyIntentionTests.swift; sourceTree = ""; }; + OBJ_797 /* GlobalFunctionGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = GlobalFunctionGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_798 /* GlobalVariableGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = GlobalVariableGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_799 /* GlobalVariableInitialValueIntentionTests.swift */ = {isa = PBXFileReference; path = GlobalVariableInitialValueIntentionTests.swift; sourceTree = ""; }; OBJ_80 /* StaticConstructorTransformer.swift */ = {isa = PBXFileReference; path = StaticConstructorTransformer.swift; sourceTree = ""; }; - OBJ_800 /* ObjectiveCMethodSignatureConverterTests.swift */ = {isa = PBXFileReference; path = ObjectiveCMethodSignatureConverterTests.swift; sourceTree = ""; }; - OBJ_801 /* ObjectiveCStatementASTReaderTests.swift */ = {isa = PBXFileReference; path = ObjectiveCStatementASTReaderTests.swift; sourceTree = ""; }; - OBJ_802 /* PropertyMergeIntentionPassTests.swift */ = {isa = PBXFileReference; path = PropertyMergeIntentionPassTests.swift; sourceTree = ""; }; - OBJ_803 /* TestUtils.swift */ = {isa = PBXFileReference; path = TestUtils.swift; sourceTree = ""; }; - OBJ_805 /* QuickSpecPreprocessorTests.swift */ = {isa = PBXFileReference; path = QuickSpecPreprocessorTests.swift; sourceTree = ""; }; - OBJ_807 /* AccessLevelTests.swift */ = {isa = PBXFileReference; path = AccessLevelTests.swift; sourceTree = ""; }; - OBJ_808 /* Expression+MatcherTests.swift */ = {isa = PBXFileReference; path = "Expression+MatcherTests.swift"; sourceTree = ""; }; + OBJ_800 /* InitGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = InitGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_801 /* InstanceVariableGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = InstanceVariableGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_802 /* MethodGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = MethodGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_803 /* PropertyGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = PropertyGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_804 /* PropertyInitialValueGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = PropertyInitialValueGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_805 /* PropertySynthesizationIntentionTests.swift */ = {isa = PBXFileReference; path = PropertySynthesizationIntentionTests.swift; sourceTree = ""; }; + OBJ_806 /* ProtocolGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = ProtocolGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_807 /* ProtocolInheritanceIntentionTests.swift */ = {isa = PBXFileReference; path = ProtocolInheritanceIntentionTests.swift; sourceTree = ""; }; + OBJ_808 /* ProtocolMethodGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = ProtocolMethodGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_809 /* ProtocolPropertyGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = ProtocolPropertyGenerationIntentionTests.swift; sourceTree = ""; }; OBJ_81 /* UIKitExpressionPass.swift */ = {isa = PBXFileReference; path = UIKitExpressionPass.swift; sourceTree = ""; }; - OBJ_810 /* PostfixExpressionTests.swift */ = {isa = PBXFileReference; path = PostfixExpressionTests.swift; sourceTree = ""; }; - OBJ_811 /* SelectorExpressionTests.swift */ = {isa = PBXFileReference; path = SelectorExpressionTests.swift; sourceTree = ""; }; - OBJ_812 /* ExpressionTests.swift */ = {isa = PBXFileReference; path = ExpressionTests.swift; sourceTree = ""; }; - OBJ_813 /* FunctionIdentifierTests.swift */ = {isa = PBXFileReference; path = FunctionIdentifierTests.swift; sourceTree = ""; }; - OBJ_814 /* FunctionSignatureParserTests.swift */ = {isa = PBXFileReference; path = FunctionSignatureParserTests.swift; sourceTree = ""; }; - OBJ_815 /* PatternTests.swift */ = {isa = PBXFileReference; path = PatternTests.swift; sourceTree = ""; }; - OBJ_817 /* SwiftASTSerializerTests.swift */ = {isa = PBXFileReference; path = SwiftASTSerializerTests.swift; sourceTree = ""; }; - OBJ_818 /* StatementTests.swift */ = {isa = PBXFileReference; path = StatementTests.swift; sourceTree = ""; }; + OBJ_810 /* StructGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = StructGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_811 /* SubscriptGenerationIntentionTests.swift */ = {isa = PBXFileReference; path = SubscriptGenerationIntentionTests.swift; sourceTree = ""; }; + OBJ_812 /* TypealiasIntentionTests.swift */ = {isa = PBXFileReference; path = TypealiasIntentionTests.swift; sourceTree = ""; }; + OBJ_814 /* IntentionSerializerTests.swift */ = {isa = PBXFileReference; path = IntentionSerializerTests.swift; sourceTree = ""; }; + OBJ_816 /* TestIntentionVisitor.swift */ = {isa = PBXFileReference; path = TestIntentionVisitor.swift; sourceTree = ""; }; + OBJ_819 /* JavaScriptASTCorrectorExpressionPassTests.swift */ = {isa = PBXFileReference; path = JavaScriptASTCorrectorExpressionPassTests.swift; sourceTree = ""; }; OBJ_82 /* ValueTransformer+PostfixTransformer.swift */ = {isa = PBXFileReference; path = "ValueTransformer+PostfixTransformer.swift"; sourceTree = ""; }; - OBJ_820 /* FunctionSignatureTests.swift */ = {isa = PBXFileReference; path = FunctionSignatureTests.swift; sourceTree = ""; }; - OBJ_821 /* SwiftOperatorTests.swift */ = {isa = PBXFileReference; path = SwiftOperatorTests.swift; sourceTree = ""; }; - OBJ_822 /* SwiftTypeParserTests.swift */ = {isa = PBXFileReference; path = SwiftTypeParserTests.swift; sourceTree = ""; }; - OBJ_823 /* SwiftTypeTests.swift */ = {isa = PBXFileReference; path = SwiftTypeTests.swift; sourceTree = ""; }; - OBJ_824 /* SyntaxNodeIteratorTests.swift */ = {isa = PBXFileReference; path = SyntaxNodeIteratorTests.swift; sourceTree = ""; }; - OBJ_825 /* SyntaxNodeRewriterTests.swift */ = {isa = PBXFileReference; path = SyntaxNodeRewriterTests.swift; sourceTree = ""; }; - OBJ_826 /* SyntaxNodeTests.swift */ = {isa = PBXFileReference; path = SyntaxNodeTests.swift; sourceTree = ""; }; - OBJ_827 /* TypeFormatterTests.swift */ = {isa = PBXFileReference; path = TypeFormatterTests.swift; sourceTree = ""; }; - OBJ_828 /* ValueMatcher+MatchersTests.swift */ = {isa = PBXFileReference; path = "ValueMatcher+MatchersTests.swift"; sourceTree = ""; }; - OBJ_829 /* ValueMatcherTests.swift */ = {isa = PBXFileReference; path = ValueMatcherTests.swift; sourceTree = ""; }; + OBJ_821 /* MultiFileTestBuilder.swift */ = {isa = PBXFileReference; path = MultiFileTestBuilder.swift; sourceTree = ""; }; + OBJ_822 /* SingleFileTestUtils.swift */ = {isa = PBXFileReference; path = SingleFileTestUtils.swift; sourceTree = ""; }; + OBJ_824 /* JavaScriptPropertyMergeIntentionPassTests.swift */ = {isa = PBXFileReference; path = JavaScriptPropertyMergeIntentionPassTests.swift; sourceTree = ""; }; + OBJ_825 /* JavaScript2SwiftRewriter+MultiFilesTests.swift */ = {isa = PBXFileReference; path = "JavaScript2SwiftRewriter+MultiFilesTests.swift"; sourceTree = ""; }; + OBJ_826 /* JavaScript2SwiftRewriterJobBuilderTests.swift */ = {isa = PBXFileReference; path = JavaScript2SwiftRewriterJobBuilderTests.swift; sourceTree = ""; }; + OBJ_827 /* JavaScript2SwiftRewriterJobTests.swift */ = {isa = PBXFileReference; path = JavaScript2SwiftRewriterJobTests.swift; sourceTree = ""; }; + OBJ_828 /* JavaScript2SwiftRewriterTests.swift */ = {isa = PBXFileReference; path = JavaScript2SwiftRewriterTests.swift; sourceTree = ""; }; + OBJ_829 /* JavaScriptExprASTReaderTests.swift */ = {isa = PBXFileReference; path = JavaScriptExprASTReaderTests.swift; sourceTree = ""; }; OBJ_83 /* VariableNullabilityPromotionExpressionPass.swift */ = {isa = PBXFileReference; path = VariableNullabilityPromotionExpressionPass.swift; sourceTree = ""; }; - OBJ_830 /* ValueTransformerTests.swift */ = {isa = PBXFileReference; path = ValueTransformerTests.swift; sourceTree = ""; }; - OBJ_832 /* ColorizeSyntaxVisitorTests.swift */ = {isa = PBXFileReference; path = ColorizeSyntaxVisitorTests.swift; sourceTree = ""; }; - OBJ_833 /* SwiftWriterTests.swift */ = {isa = PBXFileReference; path = SwiftWriterTests.swift; sourceTree = ""; }; - OBJ_835 /* SwiftRewriterTests.swift */ = {isa = PBXFileReference; path = SwiftRewriterTests.swift; sourceTree = ""; }; - OBJ_837 /* BaseSyntaxRewriterPassTest.swift */ = {isa = PBXFileReference; path = BaseSyntaxRewriterPassTest.swift; sourceTree = ""; }; - OBJ_838 /* DefaultSyntaxPassProviderTests.swift */ = {isa = PBXFileReference; path = DefaultSyntaxPassProviderTests.swift; sourceTree = ""; }; - OBJ_839 /* StatementSpacingSyntaxPassTests.swift */ = {isa = PBXFileReference; path = StatementSpacingSyntaxPassTests.swift; sourceTree = ""; }; - OBJ_841 /* BaseSwiftSyntaxProducerTests.swift */ = {isa = PBXFileReference; path = BaseSwiftSyntaxProducerTests.swift; sourceTree = ""; }; - OBJ_842 /* ModifiersSyntaxDecoratorsTests.swift */ = {isa = PBXFileReference; path = ModifiersSyntaxDecoratorsTests.swift; sourceTree = ""; }; - OBJ_843 /* SwiftSyntaxProducer+ExpTests.swift */ = {isa = PBXFileReference; path = "SwiftSyntaxProducer+ExpTests.swift"; sourceTree = ""; }; - OBJ_844 /* SwiftSyntaxProducer+StmtTests.swift */ = {isa = PBXFileReference; path = "SwiftSyntaxProducer+StmtTests.swift"; sourceTree = ""; }; - OBJ_845 /* SwiftSyntaxProducerTests.swift */ = {isa = PBXFileReference; path = SwiftSyntaxProducerTests.swift; sourceTree = ""; }; - OBJ_846 /* SwiftTypeConversionTests.swift */ = {isa = PBXFileReference; path = SwiftTypeConversionTests.swift; sourceTree = ""; }; - OBJ_848 /* StringDiffTestingTests.swift */ = {isa = PBXFileReference; path = StringDiffTestingTests.swift; sourceTree = ""; }; - OBJ_849 /* VirtualFileDiskTests.swift */ = {isa = PBXFileReference; path = VirtualFileDiskTests.swift; sourceTree = ""; }; + OBJ_830 /* JavaScriptFileCollectionStepTests.swift */ = {isa = PBXFileReference; path = JavaScriptFileCollectionStepTests.swift; sourceTree = ""; }; + OBJ_831 /* JavaScriptImportDirectiveFileCollectionDelegateTests.swift */ = {isa = PBXFileReference; path = JavaScriptImportDirectiveFileCollectionDelegateTests.swift; sourceTree = ""; }; + OBJ_832 /* JavaScriptIntentionCollectorTests.swift */ = {isa = PBXFileReference; path = JavaScriptIntentionCollectorTests.swift; sourceTree = ""; }; + OBJ_833 /* JavaScriptObjectGeneratorTests.swift */ = {isa = PBXFileReference; path = JavaScriptObjectGeneratorTests.swift; sourceTree = ""; }; + OBJ_834 /* JavaScriptStatementASTReaderTests.swift */ = {isa = PBXFileReference; path = JavaScriptStatementASTReaderTests.swift; sourceTree = ""; }; + OBJ_835 /* TestUtils.swift */ = {isa = PBXFileReference; path = TestUtils.swift; sourceTree = ""; }; + OBJ_837 /* JsParserListenerTests.swift */ = {isa = PBXFileReference; path = JsParserListenerTests.swift; sourceTree = ""; }; + OBJ_838 /* JsParserTests.swift */ = {isa = PBXFileReference; path = JsParserTests.swift; sourceTree = ""; }; + OBJ_839 /* Resources.swift */ = {isa = PBXFileReference; path = Resources.swift; sourceTree = ""; }; + OBJ_841 /* KnownFileBuilderTests.swift */ = {isa = PBXFileReference; path = KnownFileBuilderTests.swift; sourceTree = ""; }; + OBJ_842 /* KnownTypeSerializerTests.swift */ = {isa = PBXFileReference; path = KnownTypeSerializerTests.swift; sourceTree = ""; }; + OBJ_843 /* TypeFormatter+ExtTests.swift */ = {isa = PBXFileReference; path = "TypeFormatter+ExtTests.swift"; sourceTree = ""; }; + OBJ_845 /* ObjcGrammarModelsTests.swift */ = {isa = PBXFileReference; path = ObjcGrammarModelsTests.swift; sourceTree = ""; }; + OBJ_848 /* AntlrDeclarationParserTests.swift */ = {isa = PBXFileReference; path = AntlrDeclarationParserTests.swift; sourceTree = ""; }; + OBJ_849 /* DeclarationExtractorTests.swift */ = {isa = PBXFileReference; path = DeclarationExtractorTests.swift; sourceTree = ""; }; OBJ_85 /* BaseGlobalsProvider.swift */ = {isa = PBXFileReference; path = BaseGlobalsProvider.swift; sourceTree = ""; }; - OBJ_852 /* CodeDefinitionTests.swift */ = {isa = PBXFileReference; path = CodeDefinitionTests.swift; sourceTree = ""; }; - OBJ_854 /* DefaultCodeScopeTests.swift */ = {isa = PBXFileReference; path = DefaultCodeScopeTests.swift; sourceTree = ""; }; - OBJ_855 /* DefaultTypeMapperTests.swift */ = {isa = PBXFileReference; path = DefaultTypeMapperTests.swift; sourceTree = ""; }; - OBJ_856 /* DefaultTypeResolverInvokerTests.swift */ = {isa = PBXFileReference; path = DefaultTypeResolverInvokerTests.swift; sourceTree = ""; }; - OBJ_858 /* ExpressionTypeResolverTests+Fixtures.swift */ = {isa = PBXFileReference; path = "ExpressionTypeResolverTests+Fixtures.swift"; sourceTree = ""; }; - OBJ_859 /* IntentionCollectionTypeSystemTests.swift */ = {isa = PBXFileReference; path = IntentionCollectionTypeSystemTests.swift; sourceTree = ""; }; + OBJ_850 /* DeclarationTranslatorTests.swift */ = {isa = PBXFileReference; path = DeclarationTranslatorTests.swift; sourceTree = ""; }; + OBJ_851 /* DefinitionCollectorTests.swift */ = {isa = PBXFileReference; path = DefinitionCollectorTests.swift; sourceTree = ""; }; + OBJ_852 /* ObjcParserTests.swift */ = {isa = PBXFileReference; path = ObjcParserTests.swift; sourceTree = ""; }; + OBJ_853 /* ObjcTypeParserTests.swift */ = {isa = PBXFileReference; path = ObjcTypeParserTests.swift; sourceTree = ""; }; + OBJ_855 /* AntlrErrorListener.swift */ = {isa = PBXFileReference; path = AntlrErrorListener.swift; sourceTree = ""; }; + OBJ_856 /* BaseParserTestFixture.swift */ = {isa = PBXFileReference; path = BaseParserTestFixture.swift; sourceTree = ""; }; + OBJ_857 /* DeclarationExtractor+Asserter.swift */ = {isa = PBXFileReference; path = "DeclarationExtractor+Asserter.swift"; sourceTree = ""; }; + OBJ_858 /* DeclarationSyntaxElementType+Asserter.swift */ = {isa = PBXFileReference; path = "DeclarationSyntaxElementType+Asserter.swift"; sourceTree = ""; }; + OBJ_859 /* DeclarationTranslator+Asserter.swift */ = {isa = PBXFileReference; path = "DeclarationTranslator+Asserter.swift"; sourceTree = ""; }; OBJ_86 /* CLibGlobalsProviders.swift */ = {isa = PBXFileReference; path = CLibGlobalsProviders.swift; sourceTree = ""; }; - OBJ_861 /* KnownTypeMemberLookupTests.swift */ = {isa = PBXFileReference; path = KnownTypeMemberLookupTests.swift; sourceTree = ""; }; - OBJ_862 /* OverloadResolverTests.swift */ = {isa = PBXFileReference; path = OverloadResolverTests.swift; sourceTree = ""; }; - OBJ_864 /* CallableTypeResolverTests.swift */ = {isa = PBXFileReference; path = CallableTypeResolverTests.swift; sourceTree = ""; }; - OBJ_865 /* CoercionVerifierTests.swift */ = {isa = PBXFileReference; path = CoercionVerifierTests.swift; sourceTree = ""; }; - OBJ_866 /* ExpressionTypeResolverTests+DynamicMemberLookup.swift */ = {isa = PBXFileReference; path = "ExpressionTypeResolverTests+DynamicMemberLookup.swift"; sourceTree = ""; }; - OBJ_867 /* ExpressionTypeResolverTests.swift */ = {isa = PBXFileReference; path = ExpressionTypeResolverTests.swift; sourceTree = ""; }; - OBJ_868 /* IteratorTypeResolverTests.swift */ = {isa = PBXFileReference; path = IteratorTypeResolverTests.swift; sourceTree = ""; }; - OBJ_869 /* PatternMatcherTests.swift */ = {isa = PBXFileReference; path = PatternMatcherTests.swift; sourceTree = ""; }; + OBJ_861 /* ASTRewriterPassTests.swift */ = {isa = PBXFileReference; path = ASTRewriterPassTests.swift; sourceTree = ""; }; + OBJ_862 /* CPreprocessorDirectiveConverterTests.swift */ = {isa = PBXFileReference; path = CPreprocessorDirectiveConverterTests.swift; sourceTree = ""; }; + OBJ_864 /* ObjectiveCASTCorrectorExpressionPassTests.swift */ = {isa = PBXFileReference; path = ObjectiveCASTCorrectorExpressionPassTests.swift; sourceTree = ""; }; + OBJ_866 /* MultiFileTestBuilder.swift */ = {isa = PBXFileReference; path = MultiFileTestBuilder.swift; sourceTree = ""; }; + OBJ_867 /* SingleFileTestUtils.swift */ = {isa = PBXFileReference; path = SingleFileTestUtils.swift; sourceTree = ""; }; + OBJ_869 /* ObjectiveCPropertyMergeIntentionPassTests.swift */ = {isa = PBXFileReference; path = ObjectiveCPropertyMergeIntentionPassTests.swift; sourceTree = ""; }; OBJ_87 /* CompoundedMappingTypesGlobalsProvider.swift */ = {isa = PBXFileReference; path = CompoundedMappingTypesGlobalsProvider.swift; sourceTree = ""; }; - OBJ_870 /* TypeSystemTests.swift */ = {isa = PBXFileReference; path = TypeSystemTests.swift; sourceTree = ""; }; - OBJ_872 /* ConcurrentOperationQueueTests.swift */ = {isa = PBXFileReference; path = ConcurrentOperationQueueTests.swift; sourceTree = ""; }; - OBJ_873 /* ConcurrentValueTests.swift */ = {isa = PBXFileReference; path = ConcurrentValueTests.swift; sourceTree = ""; }; - OBJ_874 /* InvalidSourceTests.swift */ = {isa = PBXFileReference; path = InvalidSourceTests.swift; sourceTree = ""; }; - OBJ_875 /* MutexTests.swift */ = {isa = PBXFileReference; path = MutexTests.swift; sourceTree = ""; }; - OBJ_876 /* SourceRangeTests.swift */ = {isa = PBXFileReference; path = SourceRangeTests.swift; sourceTree = ""; }; - OBJ_877 /* StringCodeSourceTests.swift */ = {isa = PBXFileReference; path = StringCodeSourceTests.swift; sourceTree = ""; }; - OBJ_878 /* StringTests.swift */ = {isa = PBXFileReference; path = StringTests.swift; sourceTree = ""; }; + OBJ_870 /* ObjectiveC2SwiftRewriter+Crashers.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+Crashers.swift"; sourceTree = ""; }; + OBJ_871 /* ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift"; sourceTree = ""; }; + OBJ_872 /* ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift"; sourceTree = ""; }; + OBJ_873 /* ObjectiveC2SwiftRewriter+IntentionPassTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+IntentionPassTests.swift"; sourceTree = ""; }; + OBJ_874 /* ObjectiveC2SwiftRewriter+MultiFilesTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+MultiFilesTests.swift"; sourceTree = ""; }; + OBJ_875 /* ObjectiveC2SwiftRewriter+NullabilityTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+NullabilityTests.swift"; sourceTree = ""; }; + OBJ_876 /* ObjectiveC2SwiftRewriter+SourcePreprocessor.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+SourcePreprocessor.swift"; sourceTree = ""; }; + OBJ_877 /* ObjectiveC2SwiftRewriter+StmtTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+StmtTests.swift"; sourceTree = ""; }; + OBJ_878 /* ObjectiveC2SwiftRewriter+ThreadingTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+ThreadingTests.swift"; sourceTree = ""; }; + OBJ_879 /* ObjectiveC2SwiftRewriter+TypingTests.swift */ = {isa = PBXFileReference; path = "ObjectiveC2SwiftRewriter+TypingTests.swift"; sourceTree = ""; }; OBJ_88 /* DefaultGlobalsProvidersSource.swift */ = {isa = PBXFileReference; path = DefaultGlobalsProvidersSource.swift; sourceTree = ""; }; - OBJ_880 /* RewriterOutputTarget.swift */ = {isa = PBXFileReference; path = RewriterOutputTarget.swift; sourceTree = ""; }; - OBJ_881 /* StringRewriterOutputTests.swift */ = {isa = PBXFileReference; path = StringRewriterOutputTests.swift; sourceTree = ""; }; - OBJ_885 /* DebugOptions.swift */ = {isa = PBXFileReference; path = DebugOptions.swift; sourceTree = ""; }; - OBJ_886 /* Exports.swift */ = {isa = PBXFileReference; path = Exports.swift; sourceTree = ""; }; - OBJ_887 /* FormatPipeline.swift */ = {isa = PBXFileReference; path = FormatPipeline.swift; sourceTree = ""; }; - OBJ_888 /* LintPipeline.swift */ = {isa = PBXFileReference; path = LintPipeline.swift; sourceTree = ""; }; - OBJ_889 /* Pipelines+Generated.swift */ = {isa = PBXFileReference; path = "Pipelines+Generated.swift"; sourceTree = ""; }; + OBJ_880 /* ObjectiveC2SwiftRewriterJobBuilderTests.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriterJobBuilderTests.swift; sourceTree = ""; }; + OBJ_881 /* ObjectiveC2SwiftRewriterJobTests.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriterJobTests.swift; sourceTree = ""; }; + OBJ_882 /* ObjectiveC2SwiftRewriterTests.swift */ = {isa = PBXFileReference; path = ObjectiveC2SwiftRewriterTests.swift; sourceTree = ""; }; + OBJ_883 /* ObjectiveCASTReaderContextTests.swift */ = {isa = PBXFileReference; path = ObjectiveCASTReaderContextTests.swift; sourceTree = ""; }; + OBJ_884 /* ObjectiveCExprASTReaderTests.swift */ = {isa = PBXFileReference; path = ObjectiveCExprASTReaderTests.swift; sourceTree = ""; }; + OBJ_885 /* ObjectiveCFileCollectionStepTests.swift */ = {isa = PBXFileReference; path = ObjectiveCFileCollectionStepTests.swift; sourceTree = ""; }; + OBJ_886 /* ObjectiveCImportDirectiveFileCollectionDelegateTests.swift */ = {isa = PBXFileReference; path = ObjectiveCImportDirectiveFileCollectionDelegateTests.swift; sourceTree = ""; }; + OBJ_887 /* ObjectiveCIntentionCollectorTests.swift */ = {isa = PBXFileReference; path = ObjectiveCIntentionCollectorTests.swift; sourceTree = ""; }; + OBJ_888 /* ObjectiveCMethodSignatureConverterTests.swift */ = {isa = PBXFileReference; path = ObjectiveCMethodSignatureConverterTests.swift; sourceTree = ""; }; + OBJ_889 /* ObjectiveCStatementASTReaderTests.swift */ = {isa = PBXFileReference; path = ObjectiveCStatementASTReaderTests.swift; sourceTree = ""; }; OBJ_89 /* OpenGLESGlobalsProvider.swift */ = {isa = PBXFileReference; path = OpenGLESGlobalsProvider.swift; sourceTree = ""; }; - OBJ_890 /* SwiftFormatError.swift */ = {isa = PBXFileReference; path = SwiftFormatError.swift; sourceTree = ""; }; - OBJ_891 /* SwiftFormatter.swift */ = {isa = PBXFileReference; path = SwiftFormatter.swift; sourceTree = ""; }; - OBJ_892 /* SwiftLinter.swift */ = {isa = PBXFileReference; path = SwiftLinter.swift; sourceTree = ""; }; - OBJ_893 /* SyntaxValidatingVisitor.swift */ = {isa = PBXFileReference; path = SyntaxValidatingVisitor.swift; sourceTree = ""; }; - OBJ_895 /* Configuration.swift */ = {isa = PBXFileReference; path = Configuration.swift; sourceTree = ""; }; - OBJ_896 /* Indent.swift */ = {isa = PBXFileReference; path = Indent.swift; sourceTree = ""; }; - OBJ_897 /* RuleRegistry+Generated.swift */ = {isa = PBXFileReference; path = "RuleRegistry+Generated.swift"; sourceTree = ""; }; - OBJ_899 /* Context.swift */ = {isa = PBXFileReference; path = Context.swift; sourceTree = ""; }; + OBJ_890 /* PropertyMergeIntentionPassTests.swift */ = {isa = PBXFileReference; path = PropertyMergeIntentionPassTests.swift; sourceTree = ""; }; + OBJ_891 /* TestUtils.swift */ = {isa = PBXFileReference; path = TestUtils.swift; sourceTree = ""; }; + OBJ_893 /* QuickSpecPreprocessorTests.swift */ = {isa = PBXFileReference; path = QuickSpecPreprocessorTests.swift; sourceTree = ""; }; + OBJ_895 /* AccessLevelTests.swift */ = {isa = PBXFileReference; path = AccessLevelTests.swift; sourceTree = ""; }; + OBJ_896 /* Expression+MatcherTests.swift */ = {isa = PBXFileReference; path = "Expression+MatcherTests.swift"; sourceTree = ""; }; + OBJ_898 /* PostfixExpressionTests.swift */ = {isa = PBXFileReference; path = PostfixExpressionTests.swift; sourceTree = ""; }; + OBJ_899 /* SelectorExpressionTests.swift */ = {isa = PBXFileReference; path = SelectorExpressionTests.swift; sourceTree = ""; }; OBJ_90 /* UIKitGlobalsProvider.swift */ = {isa = PBXFileReference; path = UIKitGlobalsProvider.swift; sourceTree = ""; }; - OBJ_900 /* Finding+Convenience.swift */ = {isa = PBXFileReference; path = "Finding+Convenience.swift"; sourceTree = ""; }; - OBJ_901 /* Finding.swift */ = {isa = PBXFileReference; path = Finding.swift; sourceTree = ""; }; - OBJ_902 /* FindingCategorizing.swift */ = {isa = PBXFileReference; path = FindingCategorizing.swift; sourceTree = ""; }; - OBJ_903 /* FindingEmitter.swift */ = {isa = PBXFileReference; path = FindingEmitter.swift; sourceTree = ""; }; - OBJ_904 /* Rule.swift */ = {isa = PBXFileReference; path = Rule.swift; sourceTree = ""; }; - OBJ_905 /* RuleBasedFindingCategory.swift */ = {isa = PBXFileReference; path = RuleBasedFindingCategory.swift; sourceTree = ""; }; - OBJ_906 /* RuleMask.swift */ = {isa = PBXFileReference; path = RuleMask.swift; sourceTree = ""; }; - OBJ_907 /* RuleState.swift */ = {isa = PBXFileReference; path = RuleState.swift; sourceTree = ""; }; - OBJ_908 /* SyntaxFormatRule.swift */ = {isa = PBXFileReference; path = SyntaxFormatRule.swift; sourceTree = ""; }; - OBJ_909 /* SyntaxLintRule.swift */ = {isa = PBXFileReference; path = SyntaxLintRule.swift; sourceTree = ""; }; - OBJ_910 /* SyntaxProtocol+Convenience.swift */ = {isa = PBXFileReference; path = "SyntaxProtocol+Convenience.swift"; sourceTree = ""; }; - OBJ_911 /* Trivia+Convenience.swift */ = {isa = PBXFileReference; path = "Trivia+Convenience.swift"; sourceTree = ""; }; - OBJ_913 /* Comment.swift */ = {isa = PBXFileReference; path = Comment.swift; sourceTree = ""; }; - OBJ_914 /* Indent+Length.swift */ = {isa = PBXFileReference; path = "Indent+Length.swift"; sourceTree = ""; }; - OBJ_915 /* OperatorContext.swift */ = {isa = PBXFileReference; path = OperatorContext.swift; sourceTree = ""; }; - OBJ_916 /* PrettyPrint.swift */ = {isa = PBXFileReference; path = PrettyPrint.swift; sourceTree = ""; }; - OBJ_917 /* PrettyPrintFindingCategory.swift */ = {isa = PBXFileReference; path = PrettyPrintFindingCategory.swift; sourceTree = ""; }; - OBJ_918 /* SequenceExprFolding.swift */ = {isa = PBXFileReference; path = SequenceExprFolding.swift; sourceTree = ""; }; - OBJ_919 /* Token.swift */ = {isa = PBXFileReference; path = Token.swift; sourceTree = ""; }; + OBJ_900 /* ExpressionTests.swift */ = {isa = PBXFileReference; path = ExpressionTests.swift; sourceTree = ""; }; + OBJ_901 /* FunctionIdentifierTests.swift */ = {isa = PBXFileReference; path = FunctionIdentifierTests.swift; sourceTree = ""; }; + OBJ_902 /* FunctionSignatureParserTests.swift */ = {isa = PBXFileReference; path = FunctionSignatureParserTests.swift; sourceTree = ""; }; + OBJ_903 /* PatternTests.swift */ = {isa = PBXFileReference; path = PatternTests.swift; sourceTree = ""; }; + OBJ_905 /* SwiftASTSerializerTests.swift */ = {isa = PBXFileReference; path = SwiftASTSerializerTests.swift; sourceTree = ""; }; + OBJ_906 /* StatementTests.swift */ = {isa = PBXFileReference; path = StatementTests.swift; sourceTree = ""; }; + OBJ_908 /* FunctionSignatureTests.swift */ = {isa = PBXFileReference; path = FunctionSignatureTests.swift; sourceTree = ""; }; + OBJ_909 /* SwiftOperatorTests.swift */ = {isa = PBXFileReference; path = SwiftOperatorTests.swift; sourceTree = ""; }; + OBJ_910 /* SwiftTypeParserTests.swift */ = {isa = PBXFileReference; path = SwiftTypeParserTests.swift; sourceTree = ""; }; + OBJ_911 /* SwiftTypeTests.swift */ = {isa = PBXFileReference; path = SwiftTypeTests.swift; sourceTree = ""; }; + OBJ_912 /* SyntaxNodeIteratorTests.swift */ = {isa = PBXFileReference; path = SyntaxNodeIteratorTests.swift; sourceTree = ""; }; + OBJ_913 /* SyntaxNodeRewriterTests.swift */ = {isa = PBXFileReference; path = SyntaxNodeRewriterTests.swift; sourceTree = ""; }; + OBJ_914 /* SyntaxNodeTests.swift */ = {isa = PBXFileReference; path = SyntaxNodeTests.swift; sourceTree = ""; }; + OBJ_915 /* TypeFormatterTests.swift */ = {isa = PBXFileReference; path = TypeFormatterTests.swift; sourceTree = ""; }; + OBJ_916 /* ValueMatcher+MatchersTests.swift */ = {isa = PBXFileReference; path = "ValueMatcher+MatchersTests.swift"; sourceTree = ""; }; + OBJ_917 /* ValueMatcherTests.swift */ = {isa = PBXFileReference; path = ValueMatcherTests.swift; sourceTree = ""; }; + OBJ_918 /* ValueTransformerTests.swift */ = {isa = PBXFileReference; path = ValueTransformerTests.swift; sourceTree = ""; }; OBJ_92 /* ASTNode.swift */ = {isa = PBXFileReference; path = ASTNode.swift; sourceTree = ""; }; - OBJ_920 /* TokenStreamCreator.swift */ = {isa = PBXFileReference; path = TokenStreamCreator.swift; sourceTree = ""; }; - OBJ_921 /* Verbatim.swift */ = {isa = PBXFileReference; path = Verbatim.swift; sourceTree = ""; }; - OBJ_923 /* AddModifierRewriter.swift */ = {isa = PBXFileReference; path = AddModifierRewriter.swift; sourceTree = ""; }; - OBJ_924 /* AllPublicDeclarationsHaveDocumentation.swift */ = {isa = PBXFileReference; path = AllPublicDeclarationsHaveDocumentation.swift; sourceTree = ""; }; - OBJ_925 /* AlwaysUseLowerCamelCase.swift */ = {isa = PBXFileReference; path = AlwaysUseLowerCamelCase.swift; sourceTree = ""; }; - OBJ_926 /* AmbiguousTrailingClosureOverload.swift */ = {isa = PBXFileReference; path = AmbiguousTrailingClosureOverload.swift; sourceTree = ""; }; - OBJ_927 /* BeginDocumentationCommentWithOneLineSummary.swift */ = {isa = PBXFileReference; path = BeginDocumentationCommentWithOneLineSummary.swift; sourceTree = ""; }; - OBJ_928 /* DeclSyntaxProtocol+Comments.swift */ = {isa = PBXFileReference; path = "DeclSyntaxProtocol+Comments.swift"; sourceTree = ""; }; - OBJ_929 /* DoNotUseSemicolons.swift */ = {isa = PBXFileReference; path = DoNotUseSemicolons.swift; sourceTree = ""; }; + OBJ_920 /* ColorizeSyntaxVisitorTests.swift */ = {isa = PBXFileReference; path = ColorizeSyntaxVisitorTests.swift; sourceTree = ""; }; + OBJ_921 /* SwiftWriterTests.swift */ = {isa = PBXFileReference; path = SwiftWriterTests.swift; sourceTree = ""; }; + OBJ_923 /* SwiftRewriterTests.swift */ = {isa = PBXFileReference; path = SwiftRewriterTests.swift; sourceTree = ""; }; + OBJ_925 /* BaseSyntaxRewriterPassTest.swift */ = {isa = PBXFileReference; path = BaseSyntaxRewriterPassTest.swift; sourceTree = ""; }; + OBJ_926 /* DefaultSyntaxPassProviderTests.swift */ = {isa = PBXFileReference; path = DefaultSyntaxPassProviderTests.swift; sourceTree = ""; }; + OBJ_927 /* StatementSpacingSyntaxPassTests.swift */ = {isa = PBXFileReference; path = StatementSpacingSyntaxPassTests.swift; sourceTree = ""; }; + OBJ_929 /* BaseSwiftSyntaxProducerTests.swift */ = {isa = PBXFileReference; path = BaseSwiftSyntaxProducerTests.swift; sourceTree = ""; }; OBJ_93 /* ASTVisitor.swift */ = {isa = PBXFileReference; path = ASTVisitor.swift; sourceTree = ""; }; - OBJ_930 /* DontRepeatTypeInStaticProperties.swift */ = {isa = PBXFileReference; path = DontRepeatTypeInStaticProperties.swift; sourceTree = ""; }; - OBJ_931 /* FileScopedDeclarationPrivacy.swift */ = {isa = PBXFileReference; path = FileScopedDeclarationPrivacy.swift; sourceTree = ""; }; - OBJ_932 /* FullyIndirectEnum.swift */ = {isa = PBXFileReference; path = FullyIndirectEnum.swift; sourceTree = ""; }; - OBJ_933 /* FunctionDeclSyntax+Convenience.swift */ = {isa = PBXFileReference; path = "FunctionDeclSyntax+Convenience.swift"; sourceTree = ""; }; - OBJ_934 /* GroupNumericLiterals.swift */ = {isa = PBXFileReference; path = GroupNumericLiterals.swift; sourceTree = ""; }; - OBJ_935 /* IdentifiersMustBeASCII.swift */ = {isa = PBXFileReference; path = IdentifiersMustBeASCII.swift; sourceTree = ""; }; - OBJ_936 /* ImportsXCTestVisitor.swift */ = {isa = PBXFileReference; path = ImportsXCTestVisitor.swift; sourceTree = ""; }; - OBJ_937 /* ModifierListSyntax+Convenience.swift */ = {isa = PBXFileReference; path = "ModifierListSyntax+Convenience.swift"; sourceTree = ""; }; - OBJ_938 /* NeverForceUnwrap.swift */ = {isa = PBXFileReference; path = NeverForceUnwrap.swift; sourceTree = ""; }; - OBJ_939 /* NeverUseForceTry.swift */ = {isa = PBXFileReference; path = NeverUseForceTry.swift; sourceTree = ""; }; + OBJ_930 /* ModifiersSyntaxDecoratorsTests.swift */ = {isa = PBXFileReference; path = ModifiersSyntaxDecoratorsTests.swift; sourceTree = ""; }; + OBJ_931 /* SwiftSyntaxProducer+ExpTests.swift */ = {isa = PBXFileReference; path = "SwiftSyntaxProducer+ExpTests.swift"; sourceTree = ""; }; + OBJ_932 /* SwiftSyntaxProducer+StmtTests.swift */ = {isa = PBXFileReference; path = "SwiftSyntaxProducer+StmtTests.swift"; sourceTree = ""; }; + OBJ_933 /* SwiftSyntaxProducerTests.swift */ = {isa = PBXFileReference; path = SwiftSyntaxProducerTests.swift; sourceTree = ""; }; + OBJ_934 /* SwiftTypeConversionTests.swift */ = {isa = PBXFileReference; path = SwiftTypeConversionTests.swift; sourceTree = ""; }; + OBJ_936 /* StringDiffTestingTests.swift */ = {isa = PBXFileReference; path = StringDiffTestingTests.swift; sourceTree = ""; }; + OBJ_937 /* VirtualFileDiskTests.swift */ = {isa = PBXFileReference; path = VirtualFileDiskTests.swift; sourceTree = ""; }; OBJ_94 /* CommentQuerier.swift */ = {isa = PBXFileReference; path = CommentQuerier.swift; sourceTree = ""; }; - OBJ_940 /* NeverUseImplicitlyUnwrappedOptionals.swift */ = {isa = PBXFileReference; path = NeverUseImplicitlyUnwrappedOptionals.swift; sourceTree = ""; }; - OBJ_941 /* NoAccessLevelOnExtensionDeclaration.swift */ = {isa = PBXFileReference; path = NoAccessLevelOnExtensionDeclaration.swift; sourceTree = ""; }; - OBJ_942 /* NoBlockComments.swift */ = {isa = PBXFileReference; path = NoBlockComments.swift; sourceTree = ""; }; - OBJ_943 /* NoCasesWithOnlyFallthrough.swift */ = {isa = PBXFileReference; path = NoCasesWithOnlyFallthrough.swift; sourceTree = ""; }; - OBJ_944 /* NoEmptyTrailingClosureParentheses.swift */ = {isa = PBXFileReference; path = NoEmptyTrailingClosureParentheses.swift; sourceTree = ""; }; - OBJ_945 /* NoLabelsInCasePatterns.swift */ = {isa = PBXFileReference; path = NoLabelsInCasePatterns.swift; sourceTree = ""; }; - OBJ_946 /* NoLeadingUnderscores.swift */ = {isa = PBXFileReference; path = NoLeadingUnderscores.swift; sourceTree = ""; }; - OBJ_947 /* NoParensAroundConditions.swift */ = {isa = PBXFileReference; path = NoParensAroundConditions.swift; sourceTree = ""; }; - OBJ_948 /* NoPlaygroundLiterals.swift */ = {isa = PBXFileReference; path = NoPlaygroundLiterals.swift; sourceTree = ""; }; - OBJ_949 /* NoVoidReturnOnFunctionSignature.swift */ = {isa = PBXFileReference; path = NoVoidReturnOnFunctionSignature.swift; sourceTree = ""; }; + OBJ_940 /* CodeDefinitionTests.swift */ = {isa = PBXFileReference; path = CodeDefinitionTests.swift; sourceTree = ""; }; + OBJ_942 /* DefaultCodeScopeTests.swift */ = {isa = PBXFileReference; path = DefaultCodeScopeTests.swift; sourceTree = ""; }; + OBJ_943 /* DefaultTypeMapperTests.swift */ = {isa = PBXFileReference; path = DefaultTypeMapperTests.swift; sourceTree = ""; }; + OBJ_944 /* DefaultTypeResolverInvokerTests.swift */ = {isa = PBXFileReference; path = DefaultTypeResolverInvokerTests.swift; sourceTree = ""; }; + OBJ_946 /* ExpressionTypeResolverTests+Fixtures.swift */ = {isa = PBXFileReference; path = "ExpressionTypeResolverTests+Fixtures.swift"; sourceTree = ""; }; + OBJ_947 /* IntentionCollectionTypeSystemTests.swift */ = {isa = PBXFileReference; path = IntentionCollectionTypeSystemTests.swift; sourceTree = ""; }; + OBJ_949 /* KnownTypeMemberLookupTests.swift */ = {isa = PBXFileReference; path = KnownTypeMemberLookupTests.swift; sourceTree = ""; }; OBJ_95 /* RawCodeComment.swift */ = {isa = PBXFileReference; path = RawCodeComment.swift; sourceTree = ""; }; - OBJ_950 /* OneCasePerLine.swift */ = {isa = PBXFileReference; path = OneCasePerLine.swift; sourceTree = ""; }; - OBJ_951 /* OneVariableDeclarationPerLine.swift */ = {isa = PBXFileReference; path = OneVariableDeclarationPerLine.swift; sourceTree = ""; }; - OBJ_952 /* OnlyOneTrailingClosureArgument.swift */ = {isa = PBXFileReference; path = OnlyOneTrailingClosureArgument.swift; sourceTree = ""; }; - OBJ_953 /* OrderedImports.swift */ = {isa = PBXFileReference; path = OrderedImports.swift; sourceTree = ""; }; - OBJ_954 /* ReplaceTrivia.swift */ = {isa = PBXFileReference; path = ReplaceTrivia.swift; sourceTree = ""; }; - OBJ_955 /* ReturnVoidInsteadOfEmptyTuple.swift */ = {isa = PBXFileReference; path = ReturnVoidInsteadOfEmptyTuple.swift; sourceTree = ""; }; - OBJ_956 /* RuleNameCache+Generated.swift */ = {isa = PBXFileReference; path = "RuleNameCache+Generated.swift"; sourceTree = ""; }; - OBJ_957 /* SemicolonSyntaxProtocol.swift */ = {isa = PBXFileReference; path = SemicolonSyntaxProtocol.swift; sourceTree = ""; }; - OBJ_958 /* TokenSyntax+Convenience.swift */ = {isa = PBXFileReference; path = "TokenSyntax+Convenience.swift"; sourceTree = ""; }; - OBJ_959 /* UseEarlyExits.swift */ = {isa = PBXFileReference; path = UseEarlyExits.swift; sourceTree = ""; }; - OBJ_960 /* UseLetInEveryBoundCaseVariable.swift */ = {isa = PBXFileReference; path = UseLetInEveryBoundCaseVariable.swift; sourceTree = ""; }; - OBJ_961 /* UseShorthandTypeNames.swift */ = {isa = PBXFileReference; path = UseShorthandTypeNames.swift; sourceTree = ""; }; - OBJ_962 /* UseSingleLinePropertyGetter.swift */ = {isa = PBXFileReference; path = UseSingleLinePropertyGetter.swift; sourceTree = ""; }; - OBJ_963 /* UseSynthesizedInitializer.swift */ = {isa = PBXFileReference; path = UseSynthesizedInitializer.swift; sourceTree = ""; }; - OBJ_964 /* UseTripleSlashForDocumentationComments.swift */ = {isa = PBXFileReference; path = UseTripleSlashForDocumentationComments.swift; sourceTree = ""; }; - OBJ_965 /* UseWhereClausesInForLoops.swift */ = {isa = PBXFileReference; path = UseWhereClausesInForLoops.swift; sourceTree = ""; }; - OBJ_966 /* ValidateDocumentationComments.swift */ = {isa = PBXFileReference; path = ValidateDocumentationComments.swift; sourceTree = ""; }; - OBJ_967 /* VarDeclSyntax+Convenience.swift */ = {isa = PBXFileReference; path = "VarDeclSyntax+Convenience.swift"; sourceTree = ""; }; - OBJ_969 /* LazySplitSequence.swift */ = {isa = PBXFileReference; path = LazySplitSequence.swift; sourceTree = ""; }; + OBJ_950 /* OverloadResolverTests.swift */ = {isa = PBXFileReference; path = OverloadResolverTests.swift; sourceTree = ""; }; + OBJ_952 /* CallableTypeResolverTests.swift */ = {isa = PBXFileReference; path = CallableTypeResolverTests.swift; sourceTree = ""; }; + OBJ_953 /* CoercionVerifierTests.swift */ = {isa = PBXFileReference; path = CoercionVerifierTests.swift; sourceTree = ""; }; + OBJ_954 /* ExpressionTypeResolverTests+DynamicMemberLookup.swift */ = {isa = PBXFileReference; path = "ExpressionTypeResolverTests+DynamicMemberLookup.swift"; sourceTree = ""; }; + OBJ_955 /* ExpressionTypeResolverTests.swift */ = {isa = PBXFileReference; path = ExpressionTypeResolverTests.swift; sourceTree = ""; }; + OBJ_956 /* IteratorTypeResolverTests.swift */ = {isa = PBXFileReference; path = IteratorTypeResolverTests.swift; sourceTree = ""; }; + OBJ_957 /* PatternMatcherTests.swift */ = {isa = PBXFileReference; path = PatternMatcherTests.swift; sourceTree = ""; }; + OBJ_958 /* TypeSystemTests.swift */ = {isa = PBXFileReference; path = TypeSystemTests.swift; sourceTree = ""; }; + OBJ_960 /* ConcurrentOperationQueueTests.swift */ = {isa = PBXFileReference; path = ConcurrentOperationQueueTests.swift; sourceTree = ""; }; + OBJ_961 /* ConcurrentValueTests.swift */ = {isa = PBXFileReference; path = ConcurrentValueTests.swift; sourceTree = ""; }; + OBJ_962 /* InvalidSourceTests.swift */ = {isa = PBXFileReference; path = InvalidSourceTests.swift; sourceTree = ""; }; + OBJ_963 /* MutexTests.swift */ = {isa = PBXFileReference; path = MutexTests.swift; sourceTree = ""; }; + OBJ_964 /* SourceRangeTests.swift */ = {isa = PBXFileReference; path = SourceRangeTests.swift; sourceTree = ""; }; + OBJ_965 /* StringCodeSourceTests.swift */ = {isa = PBXFileReference; path = StringCodeSourceTests.swift; sourceTree = ""; }; + OBJ_966 /* StringTests.swift */ = {isa = PBXFileReference; path = StringTests.swift; sourceTree = ""; }; + OBJ_968 /* RewriterOutputTarget.swift */ = {isa = PBXFileReference; path = RewriterOutputTarget.swift; sourceTree = ""; }; + OBJ_969 /* StringRewriterOutputTests.swift */ = {isa = PBXFileReference; path = StringRewriterOutputTests.swift; sourceTree = ""; }; OBJ_97 /* GraphViz+Attribute.swift */ = {isa = PBXFileReference; path = "GraphViz+Attribute.swift"; sourceTree = ""; }; - OBJ_970 /* RememberingIterator.swift */ = {isa = PBXFileReference; path = RememberingIterator.swift; sourceTree = ""; }; - OBJ_971 /* WhitespaceFindingCategory.swift */ = {isa = PBXFileReference; path = WhitespaceFindingCategory.swift; sourceTree = ""; }; - OBJ_972 /* WhitespaceLinter.swift */ = {isa = PBXFileReference; path = WhitespaceLinter.swift; sourceTree = ""; }; - OBJ_974 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; name = Package.swift; path = "/home/luiz/dev/SwiftRewriter/.build/checkouts/swift-format/Package.swift"; sourceTree = ""; }; - OBJ_977 /* AbsolutePosition.swift */ = {isa = PBXFileReference; path = AbsolutePosition.swift; sourceTree = ""; }; - OBJ_978 /* AtomicCounter.swift */ = {isa = PBXFileReference; path = AtomicCounter.swift; sourceTree = ""; }; - OBJ_979 /* CNodes.swift */ = {isa = PBXFileReference; path = CNodes.swift; sourceTree = ""; }; + OBJ_973 /* DebugOptions.swift */ = {isa = PBXFileReference; path = DebugOptions.swift; sourceTree = ""; }; + OBJ_974 /* Exports.swift */ = {isa = PBXFileReference; path = Exports.swift; sourceTree = ""; }; + OBJ_975 /* FormatPipeline.swift */ = {isa = PBXFileReference; path = FormatPipeline.swift; sourceTree = ""; }; + OBJ_976 /* LintPipeline.swift */ = {isa = PBXFileReference; path = LintPipeline.swift; sourceTree = ""; }; + OBJ_977 /* Pipelines+Generated.swift */ = {isa = PBXFileReference; path = "Pipelines+Generated.swift"; sourceTree = ""; }; + OBJ_978 /* SwiftFormatError.swift */ = {isa = PBXFileReference; path = SwiftFormatError.swift; sourceTree = ""; }; + OBJ_979 /* SwiftFormatter.swift */ = {isa = PBXFileReference; path = SwiftFormatter.swift; sourceTree = ""; }; OBJ_98 /* GraphViz+GraphAttributes.swift */ = {isa = PBXFileReference; path = "GraphViz+GraphAttributes.swift"; sourceTree = ""; }; - OBJ_980 /* IncrementalParseTransition.swift */ = {isa = PBXFileReference; path = IncrementalParseTransition.swift; sourceTree = ""; }; - OBJ_981 /* RawSyntax.swift */ = {isa = PBXFileReference; path = RawSyntax.swift; sourceTree = ""; }; - OBJ_982 /* SourceLength.swift */ = {isa = PBXFileReference; path = SourceLength.swift; sourceTree = ""; }; - OBJ_983 /* SourceLocation.swift */ = {isa = PBXFileReference; path = SourceLocation.swift; sourceTree = ""; }; - OBJ_984 /* SourcePresence.swift */ = {isa = PBXFileReference; path = SourcePresence.swift; sourceTree = ""; }; - OBJ_985 /* Syntax.swift */ = {isa = PBXFileReference; path = Syntax.swift; sourceTree = ""; }; - OBJ_986 /* SyntaxChildren.swift */ = {isa = PBXFileReference; path = SyntaxChildren.swift; sourceTree = ""; }; - OBJ_987 /* SyntaxClassifier.swift */ = {isa = PBXFileReference; path = SyntaxClassifier.swift; sourceTree = ""; }; - OBJ_988 /* SyntaxData.swift */ = {isa = PBXFileReference; path = SyntaxData.swift; sourceTree = ""; }; - OBJ_989 /* SyntaxOtherNodes.swift */ = {isa = PBXFileReference; path = SyntaxOtherNodes.swift; sourceTree = ""; }; + OBJ_980 /* SwiftLinter.swift */ = {isa = PBXFileReference; path = SwiftLinter.swift; sourceTree = ""; }; + OBJ_981 /* SyntaxValidatingVisitor.swift */ = {isa = PBXFileReference; path = SyntaxValidatingVisitor.swift; sourceTree = ""; }; + OBJ_983 /* Configuration.swift */ = {isa = PBXFileReference; path = Configuration.swift; sourceTree = ""; }; + OBJ_984 /* Indent.swift */ = {isa = PBXFileReference; path = Indent.swift; sourceTree = ""; }; + OBJ_985 /* RuleRegistry+Generated.swift */ = {isa = PBXFileReference; path = "RuleRegistry+Generated.swift"; sourceTree = ""; }; + OBJ_987 /* Context.swift */ = {isa = PBXFileReference; path = Context.swift; sourceTree = ""; }; + OBJ_988 /* Finding+Convenience.swift */ = {isa = PBXFileReference; path = "Finding+Convenience.swift"; sourceTree = ""; }; + OBJ_989 /* Finding.swift */ = {isa = PBXFileReference; path = Finding.swift; sourceTree = ""; }; OBJ_99 /* GraphViz.swift */ = {isa = PBXFileReference; path = GraphViz.swift; sourceTree = ""; }; - OBJ_990 /* SyntaxVerifier.swift */ = {isa = PBXFileReference; path = SyntaxVerifier.swift; sourceTree = ""; }; - OBJ_991 /* Utils.swift */ = {isa = PBXFileReference; path = Utils.swift; sourceTree = ""; }; - OBJ_992 /* _SyntaxParserInterop.swift */ = {isa = PBXFileReference; path = _SyntaxParserInterop.swift; sourceTree = ""; }; - OBJ_994 /* Misc.swift */ = {isa = PBXFileReference; path = Misc.swift; sourceTree = ""; }; - OBJ_995 /* SyntaxAnyVisitor.swift */ = {isa = PBXFileReference; path = SyntaxAnyVisitor.swift; sourceTree = ""; }; - OBJ_996 /* SyntaxBaseNodes.swift */ = {isa = PBXFileReference; path = SyntaxBaseNodes.swift; sourceTree = ""; }; - OBJ_997 /* SyntaxBuilders.swift */ = {isa = PBXFileReference; path = SyntaxBuilders.swift; sourceTree = ""; }; - OBJ_998 /* SyntaxClassification.swift */ = {isa = PBXFileReference; path = SyntaxClassification.swift; sourceTree = ""; }; - OBJ_999 /* SyntaxCollections.swift */ = {isa = PBXFileReference; path = SyntaxCollections.swift; sourceTree = ""; }; + OBJ_990 /* FindingCategorizing.swift */ = {isa = PBXFileReference; path = FindingCategorizing.swift; sourceTree = ""; }; + OBJ_991 /* FindingEmitter.swift */ = {isa = PBXFileReference; path = FindingEmitter.swift; sourceTree = ""; }; + OBJ_992 /* Rule.swift */ = {isa = PBXFileReference; path = Rule.swift; sourceTree = ""; }; + OBJ_993 /* RuleBasedFindingCategory.swift */ = {isa = PBXFileReference; path = RuleBasedFindingCategory.swift; sourceTree = ""; }; + OBJ_994 /* RuleMask.swift */ = {isa = PBXFileReference; path = RuleMask.swift; sourceTree = ""; }; + OBJ_995 /* RuleState.swift */ = {isa = PBXFileReference; path = RuleState.swift; sourceTree = ""; }; + OBJ_996 /* SyntaxFormatRule.swift */ = {isa = PBXFileReference; path = SyntaxFormatRule.swift; sourceTree = ""; }; + OBJ_997 /* SyntaxLintRule.swift */ = {isa = PBXFileReference; path = SyntaxLintRule.swift; sourceTree = ""; }; + OBJ_998 /* SyntaxProtocol+Convenience.swift */ = {isa = PBXFileReference; path = "SyntaxProtocol+Convenience.swift"; sourceTree = ""; }; + OBJ_999 /* Trivia+Convenience.swift */ = {isa = PBXFileReference; path = "Trivia+Convenience.swift"; sourceTree = ""; }; antlr4-swift::Antlr4::Product /* Antlr4.framework */ = {isa = PBXFileReference; path = Antlr4.framework; sourceTree = BUILT_PRODUCTS_DIR; }; antlr4-swift::CAntlrShims::Product /* CAntlrShims.framework */ = {isa = PBXFileReference; path = CAntlrShims.framework; sourceTree = BUILT_PRODUCTS_DIR; }; console::Console::Product /* Console.framework */ = {isa = PBXFileReference; path = Console.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -3442,6 +3810,12 @@ swiftrewriter::IntentionPassesTests::Product /* IntentionPassesTests.xctest */ = {isa = PBXFileReference; path = IntentionPassesTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; swiftrewriter::Intentions::Product /* Intentions.framework */ = {isa = PBXFileReference; path = Intentions.framework; sourceTree = BUILT_PRODUCTS_DIR; }; swiftrewriter::IntentionsTests::Product /* IntentionsTests.xctest */ = {isa = PBXFileReference; path = IntentionsTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + swiftrewriter::JavaScriptFrontend::Product /* JavaScriptFrontend.framework */ = {isa = PBXFileReference; path = JavaScriptFrontend.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + swiftrewriter::JavaScriptFrontendTests::Product /* JavaScriptFrontendTests.xctest */ = {isa = PBXFileReference; path = JavaScriptFrontendTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */ = {isa = PBXFileReference; path = JsGrammarModels.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + swiftrewriter::JsParser::Product /* JsParser.framework */ = {isa = PBXFileReference; path = JsParser.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */ = {isa = PBXFileReference; path = JsParserAntlr.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + swiftrewriter::JsParserTests::Product /* JsParserTests.xctest */ = {isa = PBXFileReference; path = JsParserTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; swiftrewriter::KnownType::Product /* KnownType.framework */ = {isa = PBXFileReference; path = KnownType.framework; sourceTree = BUILT_PRODUCTS_DIR; }; swiftrewriter::KnownTypeTests::Product /* KnownTypeTests.xctest */ = {isa = PBXFileReference; path = KnownTypeTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */ = {isa = PBXFileReference; path = ObjcGrammarModels.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -3476,1459 +3850,1704 @@ /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - OBJ_1381 /* Frameworks */ = { + OBJ_1474 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_1382 /* GraphvizLib.framework in Frameworks */, - OBJ_1383 /* Commons.framework in Frameworks */, - OBJ_1384 /* TypeSystem.framework in Frameworks */, - OBJ_1385 /* Intentions.framework in Frameworks */, - OBJ_1386 /* TypeDefinitions.framework in Frameworks */, - OBJ_1387 /* ObjcParser.framework in Frameworks */, - OBJ_1388 /* TypeLexing.framework in Frameworks */, - OBJ_1389 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_1390 /* GrammarModelBase.framework in Frameworks */, - OBJ_1391 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_1392 /* AntlrCommons.framework in Frameworks */, - OBJ_1393 /* Antlr4.framework in Frameworks */, - OBJ_1394 /* CAntlrShims.framework in Frameworks */, - OBJ_1395 /* KnownType.framework in Frameworks */, - OBJ_1396 /* SwiftAST.framework in Frameworks */, - OBJ_1397 /* MiniLexer.framework in Frameworks */, - OBJ_1398 /* WriterTargetOutput.framework in Frameworks */, - OBJ_1399 /* SwiftSyntax.framework in Frameworks */, - OBJ_1400 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_1401 /* Utils.framework in Frameworks */, - ); - }; - OBJ_1462 /* Frameworks */ = { + OBJ_1475 /* GraphvizLib.framework in Frameworks */, + OBJ_1476 /* Commons.framework in Frameworks */, + OBJ_1477 /* TypeSystem.framework in Frameworks */, + OBJ_1478 /* Intentions.framework in Frameworks */, + OBJ_1479 /* TypeDefinitions.framework in Frameworks */, + OBJ_1480 /* ObjcParser.framework in Frameworks */, + OBJ_1481 /* TypeLexing.framework in Frameworks */, + OBJ_1482 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_1483 /* GrammarModelBase.framework in Frameworks */, + OBJ_1484 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_1485 /* AntlrCommons.framework in Frameworks */, + OBJ_1486 /* Antlr4.framework in Frameworks */, + OBJ_1487 /* CAntlrShims.framework in Frameworks */, + OBJ_1488 /* KnownType.framework in Frameworks */, + OBJ_1489 /* SwiftAST.framework in Frameworks */, + OBJ_1490 /* MiniLexer.framework in Frameworks */, + OBJ_1491 /* WriterTargetOutput.framework in Frameworks */, + OBJ_1492 /* SwiftSyntax.framework in Frameworks */, + OBJ_1493 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_1494 /* Utils.framework in Frameworks */, + ); + }; + OBJ_1555 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_1463 /* TestCommons.framework in Frameworks */, - OBJ_1464 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_1465 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_1466 /* SwiftFormat.framework in Frameworks */, - OBJ_1467 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_1468 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_1469 /* SwiftFormatRules.framework in Frameworks */, - OBJ_1470 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_1471 /* SwiftFormatCore.framework in Frameworks */, - OBJ_1472 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_1473 /* Console.framework in Frameworks */, - OBJ_1474 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_1475 /* SourcePreprocessors.framework in Frameworks */, - OBJ_1476 /* ExpressionPasses.framework in Frameworks */, - OBJ_1477 /* GlobalsProviders.framework in Frameworks */, - OBJ_1478 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_1479 /* IntentionPasses.framework in Frameworks */, - OBJ_1480 /* Analysis.framework in Frameworks */, - OBJ_1481 /* GraphvizLib.framework in Frameworks */, - OBJ_1482 /* Commons.framework in Frameworks */, - OBJ_1483 /* TypeSystem.framework in Frameworks */, - OBJ_1484 /* Intentions.framework in Frameworks */, - OBJ_1485 /* TypeDefinitions.framework in Frameworks */, - OBJ_1486 /* ObjcParser.framework in Frameworks */, - OBJ_1487 /* TypeLexing.framework in Frameworks */, - OBJ_1488 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_1489 /* GrammarModelBase.framework in Frameworks */, - OBJ_1490 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_1491 /* AntlrCommons.framework in Frameworks */, - OBJ_1492 /* Antlr4.framework in Frameworks */, - OBJ_1493 /* CAntlrShims.framework in Frameworks */, - OBJ_1494 /* KnownType.framework in Frameworks */, - OBJ_1495 /* SwiftAST.framework in Frameworks */, - OBJ_1496 /* MiniLexer.framework in Frameworks */, - OBJ_1497 /* WriterTargetOutput.framework in Frameworks */, - OBJ_1498 /* SwiftSyntax.framework in Frameworks */, - OBJ_1499 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_1500 /* Utils.framework in Frameworks */, - ); - }; - OBJ_1715 /* Frameworks */ = { + OBJ_1556 /* TestCommons.framework in Frameworks */, + OBJ_1557 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_1558 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_1559 /* SwiftFormat.framework in Frameworks */, + OBJ_1560 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_1561 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_1562 /* SwiftFormatRules.framework in Frameworks */, + OBJ_1563 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_1564 /* SwiftFormatCore.framework in Frameworks */, + OBJ_1565 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_1566 /* Console.framework in Frameworks */, + OBJ_1567 /* JsParser.framework in Frameworks */, + OBJ_1568 /* JsGrammarModels.framework in Frameworks */, + OBJ_1569 /* JsParserAntlr.framework in Frameworks */, + OBJ_1570 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_1571 /* SourcePreprocessors.framework in Frameworks */, + OBJ_1572 /* ExpressionPasses.framework in Frameworks */, + OBJ_1573 /* GlobalsProviders.framework in Frameworks */, + OBJ_1574 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_1575 /* IntentionPasses.framework in Frameworks */, + OBJ_1576 /* Analysis.framework in Frameworks */, + OBJ_1577 /* GraphvizLib.framework in Frameworks */, + OBJ_1578 /* Commons.framework in Frameworks */, + OBJ_1579 /* TypeSystem.framework in Frameworks */, + OBJ_1580 /* Intentions.framework in Frameworks */, + OBJ_1581 /* TypeDefinitions.framework in Frameworks */, + OBJ_1582 /* ObjcParser.framework in Frameworks */, + OBJ_1583 /* TypeLexing.framework in Frameworks */, + OBJ_1584 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_1585 /* GrammarModelBase.framework in Frameworks */, + OBJ_1586 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_1587 /* AntlrCommons.framework in Frameworks */, + OBJ_1588 /* Antlr4.framework in Frameworks */, + OBJ_1589 /* CAntlrShims.framework in Frameworks */, + OBJ_1590 /* KnownType.framework in Frameworks */, + OBJ_1591 /* SwiftAST.framework in Frameworks */, + OBJ_1592 /* MiniLexer.framework in Frameworks */, + OBJ_1593 /* WriterTargetOutput.framework in Frameworks */, + OBJ_1594 /* SwiftSyntax.framework in Frameworks */, + OBJ_1595 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_1596 /* Utils.framework in Frameworks */, + ); + }; + OBJ_1817 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_1716 /* CAntlrShims.framework in Frameworks */, + OBJ_1818 /* CAntlrShims.framework in Frameworks */, ); }; - OBJ_1732 /* Frameworks */ = { + OBJ_1834 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_1733 /* Antlr4.framework in Frameworks */, - OBJ_1734 /* CAntlrShims.framework in Frameworks */, - OBJ_1735 /* Utils.framework in Frameworks */, + OBJ_1835 /* Antlr4.framework in Frameworks */, + OBJ_1836 /* CAntlrShims.framework in Frameworks */, + OBJ_1837 /* Utils.framework in Frameworks */, ); }; - OBJ_1783 /* Frameworks */ = { + OBJ_1885 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_1784 /* ArgumentParserToolInfo.framework in Frameworks */, + OBJ_1886 /* ArgumentParserToolInfo.framework in Frameworks */, ); }; - OBJ_1792 /* Frameworks */ = { + OBJ_1894 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( ); }; - OBJ_1798 /* Frameworks */ = { + OBJ_1900 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( ); }; - OBJ_1824 /* Frameworks */ = { + OBJ_1926 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_1825 /* TypeSystem.framework in Frameworks */, - OBJ_1826 /* Intentions.framework in Frameworks */, - OBJ_1827 /* KnownType.framework in Frameworks */, - OBJ_1828 /* TypeDefinitions.framework in Frameworks */, - OBJ_1829 /* ObjcParser.framework in Frameworks */, - OBJ_1830 /* TypeLexing.framework in Frameworks */, - OBJ_1831 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_1832 /* GrammarModelBase.framework in Frameworks */, - OBJ_1833 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_1834 /* AntlrCommons.framework in Frameworks */, - OBJ_1835 /* Antlr4.framework in Frameworks */, - OBJ_1836 /* CAntlrShims.framework in Frameworks */, - OBJ_1837 /* SwiftAST.framework in Frameworks */, - OBJ_1838 /* MiniLexer.framework in Frameworks */, - OBJ_1839 /* WriterTargetOutput.framework in Frameworks */, - OBJ_1840 /* SwiftSyntax.framework in Frameworks */, - OBJ_1841 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_1842 /* Utils.framework in Frameworks */, - ); - }; - OBJ_1877 /* Frameworks */ = { + OBJ_1927 /* TypeSystem.framework in Frameworks */, + OBJ_1928 /* Intentions.framework in Frameworks */, + OBJ_1929 /* KnownType.framework in Frameworks */, + OBJ_1930 /* TypeDefinitions.framework in Frameworks */, + OBJ_1931 /* ObjcParser.framework in Frameworks */, + OBJ_1932 /* TypeLexing.framework in Frameworks */, + OBJ_1933 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_1934 /* GrammarModelBase.framework in Frameworks */, + OBJ_1935 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_1936 /* AntlrCommons.framework in Frameworks */, + OBJ_1937 /* Antlr4.framework in Frameworks */, + OBJ_1938 /* CAntlrShims.framework in Frameworks */, + OBJ_1939 /* SwiftAST.framework in Frameworks */, + OBJ_1940 /* MiniLexer.framework in Frameworks */, + OBJ_1941 /* WriterTargetOutput.framework in Frameworks */, + OBJ_1942 /* SwiftSyntax.framework in Frameworks */, + OBJ_1943 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_1944 /* Utils.framework in Frameworks */, + ); + }; + OBJ_1979 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_1878 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_1879 /* SwiftFormat.framework in Frameworks */, - OBJ_1880 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_1881 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_1882 /* SwiftFormatRules.framework in Frameworks */, - OBJ_1883 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_1884 /* SwiftFormatCore.framework in Frameworks */, - OBJ_1885 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_1886 /* Console.framework in Frameworks */, - OBJ_1887 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_1888 /* SourcePreprocessors.framework in Frameworks */, - OBJ_1889 /* ExpressionPasses.framework in Frameworks */, - OBJ_1890 /* GlobalsProviders.framework in Frameworks */, - OBJ_1891 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_1892 /* IntentionPasses.framework in Frameworks */, - OBJ_1893 /* Analysis.framework in Frameworks */, - OBJ_1894 /* GraphvizLib.framework in Frameworks */, - OBJ_1895 /* Commons.framework in Frameworks */, - OBJ_1896 /* TypeSystem.framework in Frameworks */, - OBJ_1897 /* Intentions.framework in Frameworks */, - OBJ_1898 /* KnownType.framework in Frameworks */, - OBJ_1899 /* TypeDefinitions.framework in Frameworks */, - OBJ_1900 /* ObjcParser.framework in Frameworks */, - OBJ_1901 /* TypeLexing.framework in Frameworks */, - OBJ_1902 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_1903 /* GrammarModelBase.framework in Frameworks */, - OBJ_1904 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_1905 /* AntlrCommons.framework in Frameworks */, - OBJ_1906 /* Antlr4.framework in Frameworks */, - OBJ_1907 /* CAntlrShims.framework in Frameworks */, - OBJ_1908 /* SwiftAST.framework in Frameworks */, - OBJ_1909 /* MiniLexer.framework in Frameworks */, - OBJ_1910 /* WriterTargetOutput.framework in Frameworks */, - OBJ_1911 /* SwiftSyntax.framework in Frameworks */, - OBJ_1912 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_1913 /* Utils.framework in Frameworks */, - ); - }; - OBJ_1961 /* Frameworks */ = { + OBJ_1980 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_1981 /* SwiftFormat.framework in Frameworks */, + OBJ_1982 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_1983 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_1984 /* SwiftFormatRules.framework in Frameworks */, + OBJ_1985 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_1986 /* SwiftFormatCore.framework in Frameworks */, + OBJ_1987 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_1988 /* Console.framework in Frameworks */, + OBJ_1989 /* JsParser.framework in Frameworks */, + OBJ_1990 /* JsGrammarModels.framework in Frameworks */, + OBJ_1991 /* JsParserAntlr.framework in Frameworks */, + OBJ_1992 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_1993 /* SourcePreprocessors.framework in Frameworks */, + OBJ_1994 /* ExpressionPasses.framework in Frameworks */, + OBJ_1995 /* GlobalsProviders.framework in Frameworks */, + OBJ_1996 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_1997 /* IntentionPasses.framework in Frameworks */, + OBJ_1998 /* Analysis.framework in Frameworks */, + OBJ_1999 /* GraphvizLib.framework in Frameworks */, + OBJ_2000 /* Commons.framework in Frameworks */, + OBJ_2001 /* TypeSystem.framework in Frameworks */, + OBJ_2002 /* Intentions.framework in Frameworks */, + OBJ_2003 /* KnownType.framework in Frameworks */, + OBJ_2004 /* TypeDefinitions.framework in Frameworks */, + OBJ_2005 /* ObjcParser.framework in Frameworks */, + OBJ_2006 /* TypeLexing.framework in Frameworks */, + OBJ_2007 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_2008 /* GrammarModelBase.framework in Frameworks */, + OBJ_2009 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_2010 /* AntlrCommons.framework in Frameworks */, + OBJ_2011 /* Antlr4.framework in Frameworks */, + OBJ_2012 /* CAntlrShims.framework in Frameworks */, + OBJ_2013 /* SwiftAST.framework in Frameworks */, + OBJ_2014 /* MiniLexer.framework in Frameworks */, + OBJ_2015 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2016 /* SwiftSyntax.framework in Frameworks */, + OBJ_2017 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2018 /* Utils.framework in Frameworks */, + ); + }; + OBJ_2069 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( ); }; - OBJ_1995 /* Frameworks */ = { + OBJ_2103 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_1996 /* Analysis.framework in Frameworks */, - OBJ_1997 /* GraphvizLib.framework in Frameworks */, - OBJ_1998 /* Commons.framework in Frameworks */, - OBJ_1999 /* TypeSystem.framework in Frameworks */, - OBJ_2000 /* Intentions.framework in Frameworks */, - OBJ_2001 /* KnownType.framework in Frameworks */, - OBJ_2002 /* TypeDefinitions.framework in Frameworks */, - OBJ_2003 /* ObjcParser.framework in Frameworks */, - OBJ_2004 /* TypeLexing.framework in Frameworks */, - OBJ_2005 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_2006 /* GrammarModelBase.framework in Frameworks */, - OBJ_2007 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2008 /* AntlrCommons.framework in Frameworks */, - OBJ_2009 /* Antlr4.framework in Frameworks */, - OBJ_2010 /* CAntlrShims.framework in Frameworks */, - OBJ_2011 /* SwiftAST.framework in Frameworks */, - OBJ_2012 /* MiniLexer.framework in Frameworks */, - OBJ_2013 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2014 /* SwiftSyntax.framework in Frameworks */, - OBJ_2015 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2016 /* Utils.framework in Frameworks */, - ); - }; - OBJ_2060 /* Frameworks */ = { + OBJ_2104 /* Analysis.framework in Frameworks */, + OBJ_2105 /* GraphvizLib.framework in Frameworks */, + OBJ_2106 /* Commons.framework in Frameworks */, + OBJ_2107 /* TypeSystem.framework in Frameworks */, + OBJ_2108 /* Intentions.framework in Frameworks */, + OBJ_2109 /* KnownType.framework in Frameworks */, + OBJ_2110 /* TypeDefinitions.framework in Frameworks */, + OBJ_2111 /* ObjcParser.framework in Frameworks */, + OBJ_2112 /* TypeLexing.framework in Frameworks */, + OBJ_2113 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_2114 /* GrammarModelBase.framework in Frameworks */, + OBJ_2115 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_2116 /* AntlrCommons.framework in Frameworks */, + OBJ_2117 /* Antlr4.framework in Frameworks */, + OBJ_2118 /* CAntlrShims.framework in Frameworks */, + OBJ_2119 /* SwiftAST.framework in Frameworks */, + OBJ_2120 /* MiniLexer.framework in Frameworks */, + OBJ_2121 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2122 /* SwiftSyntax.framework in Frameworks */, + OBJ_2123 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2124 /* Utils.framework in Frameworks */, + ); + }; + OBJ_2168 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2061 /* TestCommons.framework in Frameworks */, - OBJ_2062 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_2063 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_2064 /* SwiftFormat.framework in Frameworks */, - OBJ_2065 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_2066 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_2067 /* SwiftFormatRules.framework in Frameworks */, - OBJ_2068 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_2069 /* SwiftFormatCore.framework in Frameworks */, - OBJ_2070 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_2071 /* Console.framework in Frameworks */, - OBJ_2072 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_2073 /* SourcePreprocessors.framework in Frameworks */, - OBJ_2074 /* GlobalsProviders.framework in Frameworks */, - OBJ_2075 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_2076 /* IntentionPasses.framework in Frameworks */, - OBJ_2077 /* ExpressionPasses.framework in Frameworks */, - OBJ_2078 /* Analysis.framework in Frameworks */, - OBJ_2079 /* GraphvizLib.framework in Frameworks */, - OBJ_2080 /* Commons.framework in Frameworks */, - OBJ_2081 /* TypeSystem.framework in Frameworks */, - OBJ_2082 /* Intentions.framework in Frameworks */, - OBJ_2083 /* KnownType.framework in Frameworks */, - OBJ_2084 /* TypeDefinitions.framework in Frameworks */, - OBJ_2085 /* ObjcParser.framework in Frameworks */, - OBJ_2086 /* TypeLexing.framework in Frameworks */, - OBJ_2087 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_2088 /* GrammarModelBase.framework in Frameworks */, - OBJ_2089 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2090 /* AntlrCommons.framework in Frameworks */, - OBJ_2091 /* Antlr4.framework in Frameworks */, - OBJ_2092 /* CAntlrShims.framework in Frameworks */, - OBJ_2093 /* SwiftAST.framework in Frameworks */, - OBJ_2094 /* MiniLexer.framework in Frameworks */, - OBJ_2095 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2096 /* SwiftSyntax.framework in Frameworks */, - OBJ_2097 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2098 /* Utils.framework in Frameworks */, - ); - }; - OBJ_2147 /* Frameworks */ = { + OBJ_2169 /* TestCommons.framework in Frameworks */, + OBJ_2170 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_2171 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_2172 /* SwiftFormat.framework in Frameworks */, + OBJ_2173 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_2174 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_2175 /* SwiftFormatRules.framework in Frameworks */, + OBJ_2176 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_2177 /* SwiftFormatCore.framework in Frameworks */, + OBJ_2178 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_2179 /* Console.framework in Frameworks */, + OBJ_2180 /* JsParser.framework in Frameworks */, + OBJ_2181 /* JsGrammarModels.framework in Frameworks */, + OBJ_2182 /* JsParserAntlr.framework in Frameworks */, + OBJ_2183 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_2184 /* SourcePreprocessors.framework in Frameworks */, + OBJ_2185 /* GlobalsProviders.framework in Frameworks */, + OBJ_2186 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_2187 /* IntentionPasses.framework in Frameworks */, + OBJ_2188 /* ExpressionPasses.framework in Frameworks */, + OBJ_2189 /* Analysis.framework in Frameworks */, + OBJ_2190 /* GraphvizLib.framework in Frameworks */, + OBJ_2191 /* Commons.framework in Frameworks */, + OBJ_2192 /* TypeSystem.framework in Frameworks */, + OBJ_2193 /* Intentions.framework in Frameworks */, + OBJ_2194 /* KnownType.framework in Frameworks */, + OBJ_2195 /* TypeDefinitions.framework in Frameworks */, + OBJ_2196 /* ObjcParser.framework in Frameworks */, + OBJ_2197 /* TypeLexing.framework in Frameworks */, + OBJ_2198 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_2199 /* GrammarModelBase.framework in Frameworks */, + OBJ_2200 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_2201 /* AntlrCommons.framework in Frameworks */, + OBJ_2202 /* Antlr4.framework in Frameworks */, + OBJ_2203 /* CAntlrShims.framework in Frameworks */, + OBJ_2204 /* SwiftAST.framework in Frameworks */, + OBJ_2205 /* MiniLexer.framework in Frameworks */, + OBJ_2206 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2207 /* SwiftSyntax.framework in Frameworks */, + OBJ_2208 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2209 /* Utils.framework in Frameworks */, + ); + }; + OBJ_2261 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2148 /* Commons.framework in Frameworks */, - OBJ_2149 /* TypeSystem.framework in Frameworks */, - OBJ_2150 /* Intentions.framework in Frameworks */, - OBJ_2151 /* KnownType.framework in Frameworks */, - OBJ_2152 /* TypeDefinitions.framework in Frameworks */, - OBJ_2153 /* ObjcParser.framework in Frameworks */, - OBJ_2154 /* TypeLexing.framework in Frameworks */, - OBJ_2155 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_2156 /* GrammarModelBase.framework in Frameworks */, - OBJ_2157 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2158 /* AntlrCommons.framework in Frameworks */, - OBJ_2159 /* Antlr4.framework in Frameworks */, - OBJ_2160 /* CAntlrShims.framework in Frameworks */, - OBJ_2161 /* SwiftAST.framework in Frameworks */, - OBJ_2162 /* MiniLexer.framework in Frameworks */, - OBJ_2163 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2164 /* SwiftSyntax.framework in Frameworks */, - OBJ_2165 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2166 /* Utils.framework in Frameworks */, - ); - }; - OBJ_2196 /* Frameworks */ = { + OBJ_2262 /* Commons.framework in Frameworks */, + OBJ_2263 /* TypeSystem.framework in Frameworks */, + OBJ_2264 /* Intentions.framework in Frameworks */, + OBJ_2265 /* KnownType.framework in Frameworks */, + OBJ_2266 /* TypeDefinitions.framework in Frameworks */, + OBJ_2267 /* ObjcParser.framework in Frameworks */, + OBJ_2268 /* TypeLexing.framework in Frameworks */, + OBJ_2269 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_2270 /* GrammarModelBase.framework in Frameworks */, + OBJ_2271 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_2272 /* AntlrCommons.framework in Frameworks */, + OBJ_2273 /* Antlr4.framework in Frameworks */, + OBJ_2274 /* CAntlrShims.framework in Frameworks */, + OBJ_2275 /* SwiftAST.framework in Frameworks */, + OBJ_2276 /* MiniLexer.framework in Frameworks */, + OBJ_2277 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2278 /* SwiftSyntax.framework in Frameworks */, + OBJ_2279 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2280 /* Utils.framework in Frameworks */, + ); + }; + OBJ_2310 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2197 /* TestCommons.framework in Frameworks */, - OBJ_2198 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_2199 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_2200 /* SwiftFormat.framework in Frameworks */, - OBJ_2201 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_2202 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_2203 /* SwiftFormatRules.framework in Frameworks */, - OBJ_2204 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_2205 /* SwiftFormatCore.framework in Frameworks */, - OBJ_2206 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_2207 /* Console.framework in Frameworks */, - OBJ_2208 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_2209 /* SourcePreprocessors.framework in Frameworks */, - OBJ_2210 /* ExpressionPasses.framework in Frameworks */, - OBJ_2211 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_2212 /* IntentionPasses.framework in Frameworks */, - OBJ_2213 /* Analysis.framework in Frameworks */, - OBJ_2214 /* GraphvizLib.framework in Frameworks */, - OBJ_2215 /* GlobalsProviders.framework in Frameworks */, - OBJ_2216 /* Commons.framework in Frameworks */, - OBJ_2217 /* TypeSystem.framework in Frameworks */, - OBJ_2218 /* Intentions.framework in Frameworks */, - OBJ_2219 /* KnownType.framework in Frameworks */, - OBJ_2220 /* TypeDefinitions.framework in Frameworks */, - OBJ_2221 /* ObjcParser.framework in Frameworks */, - OBJ_2222 /* TypeLexing.framework in Frameworks */, - OBJ_2223 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_2224 /* GrammarModelBase.framework in Frameworks */, - OBJ_2225 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2226 /* AntlrCommons.framework in Frameworks */, - OBJ_2227 /* Antlr4.framework in Frameworks */, - OBJ_2228 /* CAntlrShims.framework in Frameworks */, - OBJ_2229 /* SwiftAST.framework in Frameworks */, - OBJ_2230 /* MiniLexer.framework in Frameworks */, - OBJ_2231 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2232 /* SwiftSyntax.framework in Frameworks */, - OBJ_2233 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2234 /* Utils.framework in Frameworks */, - ); - }; - OBJ_2281 /* Frameworks */ = { + OBJ_2311 /* TestCommons.framework in Frameworks */, + OBJ_2312 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_2313 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_2314 /* SwiftFormat.framework in Frameworks */, + OBJ_2315 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_2316 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_2317 /* SwiftFormatRules.framework in Frameworks */, + OBJ_2318 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_2319 /* SwiftFormatCore.framework in Frameworks */, + OBJ_2320 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_2321 /* Console.framework in Frameworks */, + OBJ_2322 /* JsParser.framework in Frameworks */, + OBJ_2323 /* JsGrammarModels.framework in Frameworks */, + OBJ_2324 /* JsParserAntlr.framework in Frameworks */, + OBJ_2325 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_2326 /* SourcePreprocessors.framework in Frameworks */, + OBJ_2327 /* ExpressionPasses.framework in Frameworks */, + OBJ_2328 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_2329 /* IntentionPasses.framework in Frameworks */, + OBJ_2330 /* Analysis.framework in Frameworks */, + OBJ_2331 /* GraphvizLib.framework in Frameworks */, + OBJ_2332 /* GlobalsProviders.framework in Frameworks */, + OBJ_2333 /* Commons.framework in Frameworks */, + OBJ_2334 /* TypeSystem.framework in Frameworks */, + OBJ_2335 /* Intentions.framework in Frameworks */, + OBJ_2336 /* KnownType.framework in Frameworks */, + OBJ_2337 /* TypeDefinitions.framework in Frameworks */, + OBJ_2338 /* ObjcParser.framework in Frameworks */, + OBJ_2339 /* TypeLexing.framework in Frameworks */, + OBJ_2340 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_2341 /* GrammarModelBase.framework in Frameworks */, + OBJ_2342 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_2343 /* AntlrCommons.framework in Frameworks */, + OBJ_2344 /* Antlr4.framework in Frameworks */, + OBJ_2345 /* CAntlrShims.framework in Frameworks */, + OBJ_2346 /* SwiftAST.framework in Frameworks */, + OBJ_2347 /* MiniLexer.framework in Frameworks */, + OBJ_2348 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2349 /* SwiftSyntax.framework in Frameworks */, + OBJ_2350 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2351 /* Utils.framework in Frameworks */, + ); + }; + OBJ_2401 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2282 /* Antlr4.framework in Frameworks */, - OBJ_2283 /* CAntlrShims.framework in Frameworks */, - OBJ_2284 /* Utils.framework in Frameworks */, + OBJ_2402 /* Antlr4.framework in Frameworks */, + OBJ_2403 /* CAntlrShims.framework in Frameworks */, + OBJ_2404 /* Utils.framework in Frameworks */, ); }; - OBJ_2294 /* Frameworks */ = { + OBJ_2414 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2295 /* GrammarModelBase.framework in Frameworks */, - OBJ_2296 /* Antlr4.framework in Frameworks */, - OBJ_2297 /* CAntlrShims.framework in Frameworks */, - OBJ_2298 /* Utils.framework in Frameworks */, + OBJ_2415 /* GrammarModelBase.framework in Frameworks */, + OBJ_2416 /* Antlr4.framework in Frameworks */, + OBJ_2417 /* CAntlrShims.framework in Frameworks */, + OBJ_2418 /* Utils.framework in Frameworks */, ); }; - OBJ_2310 /* Frameworks */ = { + OBJ_2430 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( ); }; - OBJ_2318 /* Frameworks */ = { + OBJ_2438 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2319 /* TestCommons.framework in Frameworks */, - OBJ_2320 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_2321 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_2322 /* SwiftFormat.framework in Frameworks */, - OBJ_2323 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_2324 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_2325 /* SwiftFormatRules.framework in Frameworks */, - OBJ_2326 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_2327 /* SwiftFormatCore.framework in Frameworks */, - OBJ_2328 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_2329 /* Console.framework in Frameworks */, - OBJ_2330 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_2331 /* SourcePreprocessors.framework in Frameworks */, - OBJ_2332 /* ExpressionPasses.framework in Frameworks */, - OBJ_2333 /* GlobalsProviders.framework in Frameworks */, - OBJ_2334 /* IntentionPasses.framework in Frameworks */, - OBJ_2335 /* Analysis.framework in Frameworks */, - OBJ_2336 /* Commons.framework in Frameworks */, - OBJ_2337 /* TypeSystem.framework in Frameworks */, - OBJ_2338 /* TypeDefinitions.framework in Frameworks */, - OBJ_2339 /* ObjcParser.framework in Frameworks */, - OBJ_2340 /* TypeLexing.framework in Frameworks */, - OBJ_2341 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_2342 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2343 /* AntlrCommons.framework in Frameworks */, - OBJ_2344 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_2345 /* Intentions.framework in Frameworks */, - OBJ_2346 /* GrammarModelBase.framework in Frameworks */, - OBJ_2347 /* Antlr4.framework in Frameworks */, - OBJ_2348 /* CAntlrShims.framework in Frameworks */, - OBJ_2349 /* KnownType.framework in Frameworks */, - OBJ_2350 /* SwiftAST.framework in Frameworks */, - OBJ_2351 /* MiniLexer.framework in Frameworks */, - OBJ_2352 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2353 /* SwiftSyntax.framework in Frameworks */, - OBJ_2354 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2355 /* Utils.framework in Frameworks */, - OBJ_2356 /* GraphvizLib.framework in Frameworks */, - ); - }; - OBJ_2420 /* Frameworks */ = { + OBJ_2439 /* TestCommons.framework in Frameworks */, + OBJ_2440 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_2441 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_2442 /* SwiftFormat.framework in Frameworks */, + OBJ_2443 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_2444 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_2445 /* SwiftFormatRules.framework in Frameworks */, + OBJ_2446 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_2447 /* SwiftFormatCore.framework in Frameworks */, + OBJ_2448 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_2449 /* Console.framework in Frameworks */, + OBJ_2450 /* JsParser.framework in Frameworks */, + OBJ_2451 /* JsGrammarModels.framework in Frameworks */, + OBJ_2452 /* JsParserAntlr.framework in Frameworks */, + OBJ_2453 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_2454 /* SourcePreprocessors.framework in Frameworks */, + OBJ_2455 /* ExpressionPasses.framework in Frameworks */, + OBJ_2456 /* GlobalsProviders.framework in Frameworks */, + OBJ_2457 /* IntentionPasses.framework in Frameworks */, + OBJ_2458 /* Analysis.framework in Frameworks */, + OBJ_2459 /* Commons.framework in Frameworks */, + OBJ_2460 /* TypeSystem.framework in Frameworks */, + OBJ_2461 /* TypeDefinitions.framework in Frameworks */, + OBJ_2462 /* ObjcParser.framework in Frameworks */, + OBJ_2463 /* TypeLexing.framework in Frameworks */, + OBJ_2464 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_2465 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_2466 /* AntlrCommons.framework in Frameworks */, + OBJ_2467 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_2468 /* Intentions.framework in Frameworks */, + OBJ_2469 /* GrammarModelBase.framework in Frameworks */, + OBJ_2470 /* Antlr4.framework in Frameworks */, + OBJ_2471 /* CAntlrShims.framework in Frameworks */, + OBJ_2472 /* KnownType.framework in Frameworks */, + OBJ_2473 /* SwiftAST.framework in Frameworks */, + OBJ_2474 /* MiniLexer.framework in Frameworks */, + OBJ_2475 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2476 /* SwiftSyntax.framework in Frameworks */, + OBJ_2477 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2478 /* Utils.framework in Frameworks */, + OBJ_2479 /* GraphvizLib.framework in Frameworks */, + ); + }; + OBJ_2546 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + files = ( + OBJ_2547 /* Analysis.framework in Frameworks */, + OBJ_2548 /* GraphvizLib.framework in Frameworks */, + OBJ_2549 /* Commons.framework in Frameworks */, + OBJ_2550 /* TypeSystem.framework in Frameworks */, + OBJ_2551 /* Intentions.framework in Frameworks */, + OBJ_2552 /* KnownType.framework in Frameworks */, + OBJ_2553 /* TypeDefinitions.framework in Frameworks */, + OBJ_2554 /* ObjcParser.framework in Frameworks */, + OBJ_2555 /* TypeLexing.framework in Frameworks */, + OBJ_2556 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_2557 /* GrammarModelBase.framework in Frameworks */, + OBJ_2558 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_2559 /* AntlrCommons.framework in Frameworks */, + OBJ_2560 /* Antlr4.framework in Frameworks */, + OBJ_2561 /* CAntlrShims.framework in Frameworks */, + OBJ_2562 /* SwiftAST.framework in Frameworks */, + OBJ_2563 /* MiniLexer.framework in Frameworks */, + OBJ_2564 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2565 /* SwiftSyntax.framework in Frameworks */, + OBJ_2566 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2567 /* Utils.framework in Frameworks */, + ); + }; + OBJ_2608 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2421 /* Analysis.framework in Frameworks */, - OBJ_2422 /* GraphvizLib.framework in Frameworks */, - OBJ_2423 /* Commons.framework in Frameworks */, - OBJ_2424 /* TypeSystem.framework in Frameworks */, - OBJ_2425 /* Intentions.framework in Frameworks */, - OBJ_2426 /* KnownType.framework in Frameworks */, - OBJ_2427 /* TypeDefinitions.framework in Frameworks */, - OBJ_2428 /* ObjcParser.framework in Frameworks */, - OBJ_2429 /* TypeLexing.framework in Frameworks */, - OBJ_2430 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_2431 /* GrammarModelBase.framework in Frameworks */, - OBJ_2432 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2433 /* AntlrCommons.framework in Frameworks */, - OBJ_2434 /* Antlr4.framework in Frameworks */, - OBJ_2435 /* CAntlrShims.framework in Frameworks */, - OBJ_2436 /* SwiftAST.framework in Frameworks */, - OBJ_2437 /* MiniLexer.framework in Frameworks */, - OBJ_2438 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2439 /* SwiftSyntax.framework in Frameworks */, - OBJ_2440 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2441 /* Utils.framework in Frameworks */, - ); - }; - OBJ_2482 /* Frameworks */ = { + OBJ_2609 /* TestCommons.framework in Frameworks */, + OBJ_2610 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_2611 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_2612 /* SwiftFormat.framework in Frameworks */, + OBJ_2613 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_2614 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_2615 /* SwiftFormatRules.framework in Frameworks */, + OBJ_2616 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_2617 /* SwiftFormatCore.framework in Frameworks */, + OBJ_2618 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_2619 /* Console.framework in Frameworks */, + OBJ_2620 /* JsParser.framework in Frameworks */, + OBJ_2621 /* JsGrammarModels.framework in Frameworks */, + OBJ_2622 /* JsParserAntlr.framework in Frameworks */, + OBJ_2623 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_2624 /* SourcePreprocessors.framework in Frameworks */, + OBJ_2625 /* ExpressionPasses.framework in Frameworks */, + OBJ_2626 /* GlobalsProviders.framework in Frameworks */, + OBJ_2627 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_2628 /* IntentionPasses.framework in Frameworks */, + OBJ_2629 /* Analysis.framework in Frameworks */, + OBJ_2630 /* GraphvizLib.framework in Frameworks */, + OBJ_2631 /* Commons.framework in Frameworks */, + OBJ_2632 /* TypeSystem.framework in Frameworks */, + OBJ_2633 /* Intentions.framework in Frameworks */, + OBJ_2634 /* KnownType.framework in Frameworks */, + OBJ_2635 /* TypeDefinitions.framework in Frameworks */, + OBJ_2636 /* ObjcParser.framework in Frameworks */, + OBJ_2637 /* TypeLexing.framework in Frameworks */, + OBJ_2638 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_2639 /* GrammarModelBase.framework in Frameworks */, + OBJ_2640 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_2641 /* AntlrCommons.framework in Frameworks */, + OBJ_2642 /* Antlr4.framework in Frameworks */, + OBJ_2643 /* CAntlrShims.framework in Frameworks */, + OBJ_2644 /* SwiftAST.framework in Frameworks */, + OBJ_2645 /* MiniLexer.framework in Frameworks */, + OBJ_2646 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2647 /* SwiftSyntax.framework in Frameworks */, + OBJ_2648 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2649 /* Utils.framework in Frameworks */, + ); + }; + OBJ_2750 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2483 /* TestCommons.framework in Frameworks */, - OBJ_2484 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_2485 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_2486 /* SwiftFormat.framework in Frameworks */, - OBJ_2487 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_2488 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_2489 /* SwiftFormatRules.framework in Frameworks */, - OBJ_2490 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_2491 /* SwiftFormatCore.framework in Frameworks */, - OBJ_2492 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_2493 /* Console.framework in Frameworks */, - OBJ_2494 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_2495 /* SourcePreprocessors.framework in Frameworks */, - OBJ_2496 /* ExpressionPasses.framework in Frameworks */, - OBJ_2497 /* GlobalsProviders.framework in Frameworks */, - OBJ_2498 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_2499 /* IntentionPasses.framework in Frameworks */, - OBJ_2500 /* Analysis.framework in Frameworks */, - OBJ_2501 /* GraphvizLib.framework in Frameworks */, - OBJ_2502 /* Commons.framework in Frameworks */, - OBJ_2503 /* TypeSystem.framework in Frameworks */, - OBJ_2504 /* Intentions.framework in Frameworks */, - OBJ_2505 /* KnownType.framework in Frameworks */, - OBJ_2506 /* TypeDefinitions.framework in Frameworks */, - OBJ_2507 /* ObjcParser.framework in Frameworks */, - OBJ_2508 /* TypeLexing.framework in Frameworks */, - OBJ_2509 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_2510 /* GrammarModelBase.framework in Frameworks */, - OBJ_2511 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2512 /* AntlrCommons.framework in Frameworks */, - OBJ_2513 /* Antlr4.framework in Frameworks */, - OBJ_2514 /* CAntlrShims.framework in Frameworks */, - OBJ_2515 /* SwiftAST.framework in Frameworks */, - OBJ_2516 /* MiniLexer.framework in Frameworks */, - OBJ_2517 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2518 /* SwiftSyntax.framework in Frameworks */, - OBJ_2519 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2520 /* Utils.framework in Frameworks */, - ); - }; - OBJ_2618 /* Frameworks */ = { + OBJ_2751 /* KnownType.framework in Frameworks */, + OBJ_2752 /* GrammarModelBase.framework in Frameworks */, + OBJ_2753 /* Antlr4.framework in Frameworks */, + OBJ_2754 /* CAntlrShims.framework in Frameworks */, + OBJ_2755 /* SwiftAST.framework in Frameworks */, + OBJ_2756 /* MiniLexer.framework in Frameworks */, + OBJ_2757 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2758 /* SwiftSyntax.framework in Frameworks */, + OBJ_2759 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2760 /* Utils.framework in Frameworks */, + ); + }; + OBJ_2804 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2619 /* KnownType.framework in Frameworks */, - OBJ_2620 /* GrammarModelBase.framework in Frameworks */, - OBJ_2621 /* Antlr4.framework in Frameworks */, - OBJ_2622 /* CAntlrShims.framework in Frameworks */, - OBJ_2623 /* SwiftAST.framework in Frameworks */, - OBJ_2624 /* MiniLexer.framework in Frameworks */, - OBJ_2625 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2626 /* SwiftSyntax.framework in Frameworks */, - OBJ_2627 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2628 /* Utils.framework in Frameworks */, - ); - }; - OBJ_2672 /* Frameworks */ = { + OBJ_2805 /* TestCommons.framework in Frameworks */, + OBJ_2806 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_2807 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_2808 /* SwiftFormat.framework in Frameworks */, + OBJ_2809 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_2810 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_2811 /* SwiftFormatRules.framework in Frameworks */, + OBJ_2812 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_2813 /* SwiftFormatCore.framework in Frameworks */, + OBJ_2814 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_2815 /* Console.framework in Frameworks */, + OBJ_2816 /* JsParser.framework in Frameworks */, + OBJ_2817 /* JsGrammarModels.framework in Frameworks */, + OBJ_2818 /* JsParserAntlr.framework in Frameworks */, + OBJ_2819 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_2820 /* SourcePreprocessors.framework in Frameworks */, + OBJ_2821 /* ExpressionPasses.framework in Frameworks */, + OBJ_2822 /* GlobalsProviders.framework in Frameworks */, + OBJ_2823 /* IntentionPasses.framework in Frameworks */, + OBJ_2824 /* Analysis.framework in Frameworks */, + OBJ_2825 /* GraphvizLib.framework in Frameworks */, + OBJ_2826 /* Commons.framework in Frameworks */, + OBJ_2827 /* TypeSystem.framework in Frameworks */, + OBJ_2828 /* TypeDefinitions.framework in Frameworks */, + OBJ_2829 /* ObjcParser.framework in Frameworks */, + OBJ_2830 /* TypeLexing.framework in Frameworks */, + OBJ_2831 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_2832 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_2833 /* AntlrCommons.framework in Frameworks */, + OBJ_2834 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_2835 /* Intentions.framework in Frameworks */, + OBJ_2836 /* KnownType.framework in Frameworks */, + OBJ_2837 /* GrammarModelBase.framework in Frameworks */, + OBJ_2838 /* Antlr4.framework in Frameworks */, + OBJ_2839 /* CAntlrShims.framework in Frameworks */, + OBJ_2840 /* SwiftAST.framework in Frameworks */, + OBJ_2841 /* MiniLexer.framework in Frameworks */, + OBJ_2842 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2843 /* SwiftSyntax.framework in Frameworks */, + OBJ_2844 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2845 /* Utils.framework in Frameworks */, + ); + }; + OBJ_2912 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2673 /* TestCommons.framework in Frameworks */, - OBJ_2674 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_2675 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_2676 /* SwiftFormat.framework in Frameworks */, - OBJ_2677 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_2678 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_2679 /* SwiftFormatRules.framework in Frameworks */, - OBJ_2680 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_2681 /* SwiftFormatCore.framework in Frameworks */, - OBJ_2682 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_2683 /* Console.framework in Frameworks */, - OBJ_2684 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_2685 /* SourcePreprocessors.framework in Frameworks */, - OBJ_2686 /* ExpressionPasses.framework in Frameworks */, - OBJ_2687 /* GlobalsProviders.framework in Frameworks */, - OBJ_2688 /* IntentionPasses.framework in Frameworks */, - OBJ_2689 /* Analysis.framework in Frameworks */, - OBJ_2690 /* GraphvizLib.framework in Frameworks */, - OBJ_2691 /* Commons.framework in Frameworks */, - OBJ_2692 /* TypeSystem.framework in Frameworks */, - OBJ_2693 /* TypeDefinitions.framework in Frameworks */, - OBJ_2694 /* ObjcParser.framework in Frameworks */, - OBJ_2695 /* TypeLexing.framework in Frameworks */, - OBJ_2696 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_2697 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2698 /* AntlrCommons.framework in Frameworks */, - OBJ_2699 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_2700 /* Intentions.framework in Frameworks */, - OBJ_2701 /* KnownType.framework in Frameworks */, - OBJ_2702 /* GrammarModelBase.framework in Frameworks */, - OBJ_2703 /* Antlr4.framework in Frameworks */, - OBJ_2704 /* CAntlrShims.framework in Frameworks */, - OBJ_2705 /* SwiftAST.framework in Frameworks */, - OBJ_2706 /* MiniLexer.framework in Frameworks */, - OBJ_2707 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2708 /* SwiftSyntax.framework in Frameworks */, - OBJ_2709 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2710 /* Utils.framework in Frameworks */, - ); - }; - OBJ_2767 /* Frameworks */ = { + OBJ_2913 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_2914 /* SwiftFormat.framework in Frameworks */, + OBJ_2915 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_2916 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_2917 /* SwiftFormatRules.framework in Frameworks */, + OBJ_2918 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_2919 /* SwiftFormatCore.framework in Frameworks */, + OBJ_2920 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_2921 /* Console.framework in Frameworks */, + OBJ_2922 /* JsParser.framework in Frameworks */, + OBJ_2923 /* JsGrammarModels.framework in Frameworks */, + OBJ_2924 /* JsParserAntlr.framework in Frameworks */, + OBJ_2925 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_2926 /* SourcePreprocessors.framework in Frameworks */, + OBJ_2927 /* ExpressionPasses.framework in Frameworks */, + OBJ_2928 /* GlobalsProviders.framework in Frameworks */, + OBJ_2929 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_2930 /* IntentionPasses.framework in Frameworks */, + OBJ_2931 /* Analysis.framework in Frameworks */, + OBJ_2932 /* GraphvizLib.framework in Frameworks */, + OBJ_2933 /* Commons.framework in Frameworks */, + OBJ_2934 /* TypeSystem.framework in Frameworks */, + OBJ_2935 /* Intentions.framework in Frameworks */, + OBJ_2936 /* TypeDefinitions.framework in Frameworks */, + OBJ_2937 /* ObjcParser.framework in Frameworks */, + OBJ_2938 /* TypeLexing.framework in Frameworks */, + OBJ_2939 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_2940 /* GrammarModelBase.framework in Frameworks */, + OBJ_2941 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_2942 /* AntlrCommons.framework in Frameworks */, + OBJ_2943 /* Antlr4.framework in Frameworks */, + OBJ_2944 /* CAntlrShims.framework in Frameworks */, + OBJ_2945 /* KnownType.framework in Frameworks */, + OBJ_2946 /* SwiftAST.framework in Frameworks */, + OBJ_2947 /* MiniLexer.framework in Frameworks */, + OBJ_2948 /* WriterTargetOutput.framework in Frameworks */, + OBJ_2949 /* SwiftSyntax.framework in Frameworks */, + OBJ_2950 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_2951 /* Utils.framework in Frameworks */, + ); + }; + OBJ_3011 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2768 /* SwiftAST.framework in Frameworks */, - OBJ_2769 /* MiniLexer.framework in Frameworks */, - OBJ_2770 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2771 /* SwiftSyntax.framework in Frameworks */, - OBJ_2772 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2773 /* Utils.framework in Frameworks */, + OBJ_3012 /* TestCommons.framework in Frameworks */, + OBJ_3013 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_3014 /* JavaScriptFrontend.framework in Frameworks */, + OBJ_3015 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_3016 /* SwiftFormat.framework in Frameworks */, + OBJ_3017 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_3018 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_3019 /* SwiftFormatRules.framework in Frameworks */, + OBJ_3020 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_3021 /* SwiftFormatCore.framework in Frameworks */, + OBJ_3022 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_3023 /* Console.framework in Frameworks */, + OBJ_3024 /* JsParser.framework in Frameworks */, + OBJ_3025 /* JsGrammarModels.framework in Frameworks */, + OBJ_3026 /* JsParserAntlr.framework in Frameworks */, + OBJ_3027 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_3028 /* SourcePreprocessors.framework in Frameworks */, + OBJ_3029 /* ExpressionPasses.framework in Frameworks */, + OBJ_3030 /* GlobalsProviders.framework in Frameworks */, + OBJ_3031 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_3032 /* IntentionPasses.framework in Frameworks */, + OBJ_3033 /* Analysis.framework in Frameworks */, + OBJ_3034 /* GraphvizLib.framework in Frameworks */, + OBJ_3035 /* Commons.framework in Frameworks */, + OBJ_3036 /* TypeSystem.framework in Frameworks */, + OBJ_3037 /* Intentions.framework in Frameworks */, + OBJ_3038 /* TypeDefinitions.framework in Frameworks */, + OBJ_3039 /* ObjcParser.framework in Frameworks */, + OBJ_3040 /* TypeLexing.framework in Frameworks */, + OBJ_3041 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_3042 /* GrammarModelBase.framework in Frameworks */, + OBJ_3043 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_3044 /* AntlrCommons.framework in Frameworks */, + OBJ_3045 /* Antlr4.framework in Frameworks */, + OBJ_3046 /* CAntlrShims.framework in Frameworks */, + OBJ_3047 /* KnownType.framework in Frameworks */, + OBJ_3048 /* SwiftAST.framework in Frameworks */, + OBJ_3049 /* MiniLexer.framework in Frameworks */, + OBJ_3050 /* WriterTargetOutput.framework in Frameworks */, + OBJ_3051 /* SwiftSyntax.framework in Frameworks */, + OBJ_3052 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_3053 /* Utils.framework in Frameworks */, + ); + }; + OBJ_3116 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + files = ( + OBJ_3117 /* GrammarModelBase.framework in Frameworks */, + OBJ_3118 /* JsParserAntlr.framework in Frameworks */, + OBJ_3119 /* AntlrCommons.framework in Frameworks */, + OBJ_3120 /* Antlr4.framework in Frameworks */, + OBJ_3121 /* CAntlrShims.framework in Frameworks */, + OBJ_3122 /* Utils.framework in Frameworks */, ); }; - OBJ_2788 /* Frameworks */ = { + OBJ_3140 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2789 /* TestCommons.framework in Frameworks */, - OBJ_2790 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_2791 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_2792 /* SwiftFormat.framework in Frameworks */, - OBJ_2793 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_2794 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_2795 /* SwiftFormatRules.framework in Frameworks */, - OBJ_2796 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_2797 /* SwiftFormatCore.framework in Frameworks */, - OBJ_2798 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_2799 /* Console.framework in Frameworks */, - OBJ_2800 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_2801 /* SourcePreprocessors.framework in Frameworks */, - OBJ_2802 /* ExpressionPasses.framework in Frameworks */, - OBJ_2803 /* GlobalsProviders.framework in Frameworks */, - OBJ_2804 /* IntentionPasses.framework in Frameworks */, - OBJ_2805 /* Analysis.framework in Frameworks */, - OBJ_2806 /* GraphvizLib.framework in Frameworks */, - OBJ_2807 /* Commons.framework in Frameworks */, - OBJ_2808 /* TypeSystem.framework in Frameworks */, - OBJ_2809 /* TypeDefinitions.framework in Frameworks */, - OBJ_2810 /* ObjcParser.framework in Frameworks */, - OBJ_2811 /* TypeLexing.framework in Frameworks */, - OBJ_2812 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_2813 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2814 /* AntlrCommons.framework in Frameworks */, - OBJ_2815 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_2816 /* Intentions.framework in Frameworks */, - OBJ_2817 /* GrammarModelBase.framework in Frameworks */, - OBJ_2818 /* Antlr4.framework in Frameworks */, - OBJ_2819 /* CAntlrShims.framework in Frameworks */, - OBJ_2820 /* KnownType.framework in Frameworks */, - OBJ_2821 /* SwiftAST.framework in Frameworks */, - OBJ_2822 /* MiniLexer.framework in Frameworks */, - OBJ_2823 /* WriterTargetOutput.framework in Frameworks */, - OBJ_2824 /* SwiftSyntax.framework in Frameworks */, - OBJ_2825 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_2826 /* Utils.framework in Frameworks */, - ); - }; - OBJ_2877 /* Frameworks */ = { + OBJ_3141 /* TypeLexing.framework in Frameworks */, + OBJ_3142 /* MiniLexer.framework in Frameworks */, + OBJ_3143 /* JsGrammarModels.framework in Frameworks */, + OBJ_3144 /* GrammarModelBase.framework in Frameworks */, + OBJ_3145 /* JsParserAntlr.framework in Frameworks */, + OBJ_3146 /* AntlrCommons.framework in Frameworks */, + OBJ_3147 /* Antlr4.framework in Frameworks */, + OBJ_3148 /* CAntlrShims.framework in Frameworks */, + OBJ_3149 /* Utils.framework in Frameworks */, + ); + }; + OBJ_3172 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( + OBJ_3173 /* AntlrCommons.framework in Frameworks */, + OBJ_3174 /* Antlr4.framework in Frameworks */, + OBJ_3175 /* CAntlrShims.framework in Frameworks */, + OBJ_3176 /* Utils.framework in Frameworks */, ); }; - OBJ_2915 /* Frameworks */ = { + OBJ_3189 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + files = ( + OBJ_3190 /* TestCommons.framework in Frameworks */, + OBJ_3191 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_3192 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_3193 /* SwiftFormat.framework in Frameworks */, + OBJ_3194 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_3195 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_3196 /* SwiftFormatRules.framework in Frameworks */, + OBJ_3197 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_3198 /* SwiftFormatCore.framework in Frameworks */, + OBJ_3199 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_3200 /* Console.framework in Frameworks */, + OBJ_3201 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_3202 /* SourcePreprocessors.framework in Frameworks */, + OBJ_3203 /* ExpressionPasses.framework in Frameworks */, + OBJ_3204 /* GlobalsProviders.framework in Frameworks */, + OBJ_3205 /* IntentionPasses.framework in Frameworks */, + OBJ_3206 /* Analysis.framework in Frameworks */, + OBJ_3207 /* GraphvizLib.framework in Frameworks */, + OBJ_3208 /* Commons.framework in Frameworks */, + OBJ_3209 /* TypeSystem.framework in Frameworks */, + OBJ_3210 /* TypeDefinitions.framework in Frameworks */, + OBJ_3211 /* ObjcParser.framework in Frameworks */, + OBJ_3212 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_3213 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_3214 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_3215 /* Intentions.framework in Frameworks */, + OBJ_3216 /* KnownType.framework in Frameworks */, + OBJ_3217 /* SwiftAST.framework in Frameworks */, + OBJ_3218 /* WriterTargetOutput.framework in Frameworks */, + OBJ_3219 /* SwiftSyntax.framework in Frameworks */, + OBJ_3220 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_3221 /* JsParser.framework in Frameworks */, + OBJ_3222 /* TypeLexing.framework in Frameworks */, + OBJ_3223 /* MiniLexer.framework in Frameworks */, + OBJ_3224 /* JsGrammarModels.framework in Frameworks */, + OBJ_3225 /* GrammarModelBase.framework in Frameworks */, + OBJ_3226 /* JsParserAntlr.framework in Frameworks */, + OBJ_3227 /* AntlrCommons.framework in Frameworks */, + OBJ_3228 /* Antlr4.framework in Frameworks */, + OBJ_3229 /* CAntlrShims.framework in Frameworks */, + OBJ_3230 /* Utils.framework in Frameworks */, + ); + }; + OBJ_3290 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2916 /* GrammarModelBase.framework in Frameworks */, - OBJ_2917 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2918 /* AntlrCommons.framework in Frameworks */, - OBJ_2919 /* Antlr4.framework in Frameworks */, - OBJ_2920 /* CAntlrShims.framework in Frameworks */, - OBJ_2921 /* Utils.framework in Frameworks */, + OBJ_3291 /* SwiftAST.framework in Frameworks */, + OBJ_3292 /* MiniLexer.framework in Frameworks */, + OBJ_3293 /* WriterTargetOutput.framework in Frameworks */, + OBJ_3294 /* SwiftSyntax.framework in Frameworks */, + OBJ_3295 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_3296 /* Utils.framework in Frameworks */, ); }; - OBJ_2934 /* Frameworks */ = { + OBJ_3311 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + files = ( + OBJ_3312 /* TestCommons.framework in Frameworks */, + OBJ_3313 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_3314 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_3315 /* SwiftFormat.framework in Frameworks */, + OBJ_3316 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_3317 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_3318 /* SwiftFormatRules.framework in Frameworks */, + OBJ_3319 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_3320 /* SwiftFormatCore.framework in Frameworks */, + OBJ_3321 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_3322 /* Console.framework in Frameworks */, + OBJ_3323 /* JsParser.framework in Frameworks */, + OBJ_3324 /* JsGrammarModels.framework in Frameworks */, + OBJ_3325 /* JsParserAntlr.framework in Frameworks */, + OBJ_3326 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_3327 /* SourcePreprocessors.framework in Frameworks */, + OBJ_3328 /* ExpressionPasses.framework in Frameworks */, + OBJ_3329 /* GlobalsProviders.framework in Frameworks */, + OBJ_3330 /* IntentionPasses.framework in Frameworks */, + OBJ_3331 /* Analysis.framework in Frameworks */, + OBJ_3332 /* GraphvizLib.framework in Frameworks */, + OBJ_3333 /* Commons.framework in Frameworks */, + OBJ_3334 /* TypeSystem.framework in Frameworks */, + OBJ_3335 /* TypeDefinitions.framework in Frameworks */, + OBJ_3336 /* ObjcParser.framework in Frameworks */, + OBJ_3337 /* TypeLexing.framework in Frameworks */, + OBJ_3338 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_3339 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_3340 /* AntlrCommons.framework in Frameworks */, + OBJ_3341 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_3342 /* Intentions.framework in Frameworks */, + OBJ_3343 /* GrammarModelBase.framework in Frameworks */, + OBJ_3344 /* Antlr4.framework in Frameworks */, + OBJ_3345 /* CAntlrShims.framework in Frameworks */, + OBJ_3346 /* KnownType.framework in Frameworks */, + OBJ_3347 /* SwiftAST.framework in Frameworks */, + OBJ_3348 /* MiniLexer.framework in Frameworks */, + OBJ_3349 /* WriterTargetOutput.framework in Frameworks */, + OBJ_3350 /* SwiftSyntax.framework in Frameworks */, + OBJ_3351 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_3352 /* Utils.framework in Frameworks */, + ); + }; + OBJ_3406 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_2935 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_2936 /* GrammarModelBase.framework in Frameworks */, - OBJ_2937 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_2938 /* AntlrCommons.framework in Frameworks */, - OBJ_2939 /* Antlr4.framework in Frameworks */, - OBJ_2940 /* CAntlrShims.framework in Frameworks */, - OBJ_2941 /* Utils.framework in Frameworks */, ); }; - OBJ_3023 /* Frameworks */ = { + OBJ_3444 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3024 /* TypeLexing.framework in Frameworks */, - OBJ_3025 /* MiniLexer.framework in Frameworks */, - OBJ_3026 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_3027 /* GrammarModelBase.framework in Frameworks */, - OBJ_3028 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_3029 /* AntlrCommons.framework in Frameworks */, - OBJ_3030 /* Antlr4.framework in Frameworks */, - OBJ_3031 /* CAntlrShims.framework in Frameworks */, - OBJ_3032 /* Utils.framework in Frameworks */, - ); - }; - OBJ_3059 /* Frameworks */ = { + OBJ_3445 /* GrammarModelBase.framework in Frameworks */, + OBJ_3446 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_3447 /* AntlrCommons.framework in Frameworks */, + OBJ_3448 /* Antlr4.framework in Frameworks */, + OBJ_3449 /* CAntlrShims.framework in Frameworks */, + OBJ_3450 /* Utils.framework in Frameworks */, + ); + }; + OBJ_3463 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3060 /* AntlrCommons.framework in Frameworks */, - OBJ_3061 /* Antlr4.framework in Frameworks */, - OBJ_3062 /* CAntlrShims.framework in Frameworks */, - OBJ_3063 /* Utils.framework in Frameworks */, + OBJ_3464 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_3465 /* GrammarModelBase.framework in Frameworks */, + OBJ_3466 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_3467 /* AntlrCommons.framework in Frameworks */, + OBJ_3468 /* Antlr4.framework in Frameworks */, + OBJ_3469 /* CAntlrShims.framework in Frameworks */, + OBJ_3470 /* Utils.framework in Frameworks */, ); }; - OBJ_3084 /* Frameworks */ = { + OBJ_3552 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3085 /* TestCommons.framework in Frameworks */, - OBJ_3086 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_3087 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_3088 /* SwiftFormat.framework in Frameworks */, - OBJ_3089 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_3090 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_3091 /* SwiftFormatRules.framework in Frameworks */, - OBJ_3092 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_3093 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3094 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_3095 /* Console.framework in Frameworks */, - OBJ_3096 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_3097 /* SourcePreprocessors.framework in Frameworks */, - OBJ_3098 /* ExpressionPasses.framework in Frameworks */, - OBJ_3099 /* GlobalsProviders.framework in Frameworks */, - OBJ_3100 /* IntentionPasses.framework in Frameworks */, - OBJ_3101 /* Analysis.framework in Frameworks */, - OBJ_3102 /* GraphvizLib.framework in Frameworks */, - OBJ_3103 /* Commons.framework in Frameworks */, - OBJ_3104 /* TypeSystem.framework in Frameworks */, - OBJ_3105 /* TypeDefinitions.framework in Frameworks */, - OBJ_3106 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_3107 /* Intentions.framework in Frameworks */, - OBJ_3108 /* KnownType.framework in Frameworks */, - OBJ_3109 /* SwiftAST.framework in Frameworks */, - OBJ_3110 /* WriterTargetOutput.framework in Frameworks */, - OBJ_3111 /* SwiftSyntax.framework in Frameworks */, - OBJ_3112 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3113 /* ObjcParser.framework in Frameworks */, - OBJ_3114 /* TypeLexing.framework in Frameworks */, - OBJ_3115 /* MiniLexer.framework in Frameworks */, - OBJ_3116 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_3117 /* GrammarModelBase.framework in Frameworks */, - OBJ_3118 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_3119 /* AntlrCommons.framework in Frameworks */, - OBJ_3120 /* Antlr4.framework in Frameworks */, - OBJ_3121 /* CAntlrShims.framework in Frameworks */, - OBJ_3122 /* Utils.framework in Frameworks */, + OBJ_3553 /* TypeLexing.framework in Frameworks */, + OBJ_3554 /* MiniLexer.framework in Frameworks */, + OBJ_3555 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_3556 /* GrammarModelBase.framework in Frameworks */, + OBJ_3557 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_3558 /* AntlrCommons.framework in Frameworks */, + OBJ_3559 /* Antlr4.framework in Frameworks */, + OBJ_3560 /* CAntlrShims.framework in Frameworks */, + OBJ_3561 /* Utils.framework in Frameworks */, + ); + }; + OBJ_3588 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + files = ( + OBJ_3589 /* AntlrCommons.framework in Frameworks */, + OBJ_3590 /* Antlr4.framework in Frameworks */, + OBJ_3591 /* CAntlrShims.framework in Frameworks */, + OBJ_3592 /* Utils.framework in Frameworks */, ); }; - OBJ_3188 /* Frameworks */ = { + OBJ_3613 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3189 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_3190 /* SwiftFormat.framework in Frameworks */, - OBJ_3191 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_3192 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_3193 /* SwiftFormatRules.framework in Frameworks */, - OBJ_3194 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_3195 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3196 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_3197 /* Console.framework in Frameworks */, - OBJ_3198 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_3199 /* SourcePreprocessors.framework in Frameworks */, - OBJ_3200 /* ExpressionPasses.framework in Frameworks */, - OBJ_3201 /* GlobalsProviders.framework in Frameworks */, - OBJ_3202 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_3203 /* IntentionPasses.framework in Frameworks */, - OBJ_3204 /* Analysis.framework in Frameworks */, - OBJ_3205 /* GraphvizLib.framework in Frameworks */, - OBJ_3206 /* Commons.framework in Frameworks */, - OBJ_3207 /* TypeSystem.framework in Frameworks */, - OBJ_3208 /* Intentions.framework in Frameworks */, - OBJ_3209 /* TypeDefinitions.framework in Frameworks */, - OBJ_3210 /* KnownType.framework in Frameworks */, - OBJ_3211 /* SwiftAST.framework in Frameworks */, - OBJ_3212 /* WriterTargetOutput.framework in Frameworks */, - OBJ_3213 /* SwiftSyntax.framework in Frameworks */, - OBJ_3214 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3215 /* ObjcParser.framework in Frameworks */, - OBJ_3216 /* TypeLexing.framework in Frameworks */, - OBJ_3217 /* MiniLexer.framework in Frameworks */, - OBJ_3218 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_3219 /* GrammarModelBase.framework in Frameworks */, - OBJ_3220 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_3221 /* AntlrCommons.framework in Frameworks */, - OBJ_3222 /* Antlr4.framework in Frameworks */, - OBJ_3223 /* CAntlrShims.framework in Frameworks */, - OBJ_3224 /* Utils.framework in Frameworks */, - ); - }; - OBJ_3294 /* Frameworks */ = { + OBJ_3614 /* TestCommons.framework in Frameworks */, + OBJ_3615 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_3616 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_3617 /* SwiftFormat.framework in Frameworks */, + OBJ_3618 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_3619 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_3620 /* SwiftFormatRules.framework in Frameworks */, + OBJ_3621 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_3622 /* SwiftFormatCore.framework in Frameworks */, + OBJ_3623 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_3624 /* Console.framework in Frameworks */, + OBJ_3625 /* JsParser.framework in Frameworks */, + OBJ_3626 /* JsGrammarModels.framework in Frameworks */, + OBJ_3627 /* JsParserAntlr.framework in Frameworks */, + OBJ_3628 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_3629 /* SourcePreprocessors.framework in Frameworks */, + OBJ_3630 /* ExpressionPasses.framework in Frameworks */, + OBJ_3631 /* GlobalsProviders.framework in Frameworks */, + OBJ_3632 /* IntentionPasses.framework in Frameworks */, + OBJ_3633 /* Analysis.framework in Frameworks */, + OBJ_3634 /* GraphvizLib.framework in Frameworks */, + OBJ_3635 /* Commons.framework in Frameworks */, + OBJ_3636 /* TypeSystem.framework in Frameworks */, + OBJ_3637 /* TypeDefinitions.framework in Frameworks */, + OBJ_3638 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_3639 /* Intentions.framework in Frameworks */, + OBJ_3640 /* KnownType.framework in Frameworks */, + OBJ_3641 /* SwiftAST.framework in Frameworks */, + OBJ_3642 /* WriterTargetOutput.framework in Frameworks */, + OBJ_3643 /* SwiftSyntax.framework in Frameworks */, + OBJ_3644 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_3645 /* ObjcParser.framework in Frameworks */, + OBJ_3646 /* TypeLexing.framework in Frameworks */, + OBJ_3647 /* MiniLexer.framework in Frameworks */, + OBJ_3648 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_3649 /* GrammarModelBase.framework in Frameworks */, + OBJ_3650 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_3651 /* AntlrCommons.framework in Frameworks */, + OBJ_3652 /* Antlr4.framework in Frameworks */, + OBJ_3653 /* CAntlrShims.framework in Frameworks */, + OBJ_3654 /* Utils.framework in Frameworks */, + ); + }; + OBJ_3723 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3295 /* TestCommons.framework in Frameworks */, - OBJ_3296 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_3297 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_3298 /* SwiftFormat.framework in Frameworks */, - OBJ_3299 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_3300 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_3301 /* SwiftFormatRules.framework in Frameworks */, - OBJ_3302 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_3303 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3304 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_3305 /* Console.framework in Frameworks */, - OBJ_3306 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_3307 /* SourcePreprocessors.framework in Frameworks */, - OBJ_3308 /* ExpressionPasses.framework in Frameworks */, - OBJ_3309 /* GlobalsProviders.framework in Frameworks */, - OBJ_3310 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_3311 /* IntentionPasses.framework in Frameworks */, - OBJ_3312 /* Analysis.framework in Frameworks */, - OBJ_3313 /* GraphvizLib.framework in Frameworks */, - OBJ_3314 /* Commons.framework in Frameworks */, - OBJ_3315 /* TypeSystem.framework in Frameworks */, - OBJ_3316 /* Intentions.framework in Frameworks */, - OBJ_3317 /* TypeDefinitions.framework in Frameworks */, - OBJ_3318 /* KnownType.framework in Frameworks */, - OBJ_3319 /* SwiftAST.framework in Frameworks */, - OBJ_3320 /* WriterTargetOutput.framework in Frameworks */, - OBJ_3321 /* SwiftSyntax.framework in Frameworks */, - OBJ_3322 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3323 /* ObjcParser.framework in Frameworks */, - OBJ_3324 /* TypeLexing.framework in Frameworks */, - OBJ_3325 /* MiniLexer.framework in Frameworks */, - OBJ_3326 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_3327 /* GrammarModelBase.framework in Frameworks */, - OBJ_3328 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_3329 /* AntlrCommons.framework in Frameworks */, - OBJ_3330 /* Antlr4.framework in Frameworks */, - OBJ_3331 /* CAntlrShims.framework in Frameworks */, - OBJ_3332 /* Utils.framework in Frameworks */, - ); - }; - OBJ_3377 /* Frameworks */ = { + OBJ_3724 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_3725 /* SwiftFormat.framework in Frameworks */, + OBJ_3726 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_3727 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_3728 /* SwiftFormatRules.framework in Frameworks */, + OBJ_3729 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_3730 /* SwiftFormatCore.framework in Frameworks */, + OBJ_3731 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_3732 /* Console.framework in Frameworks */, + OBJ_3733 /* JsParser.framework in Frameworks */, + OBJ_3734 /* JsGrammarModels.framework in Frameworks */, + OBJ_3735 /* JsParserAntlr.framework in Frameworks */, + OBJ_3736 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_3737 /* SourcePreprocessors.framework in Frameworks */, + OBJ_3738 /* ExpressionPasses.framework in Frameworks */, + OBJ_3739 /* GlobalsProviders.framework in Frameworks */, + OBJ_3740 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_3741 /* IntentionPasses.framework in Frameworks */, + OBJ_3742 /* Analysis.framework in Frameworks */, + OBJ_3743 /* GraphvizLib.framework in Frameworks */, + OBJ_3744 /* Commons.framework in Frameworks */, + OBJ_3745 /* TypeSystem.framework in Frameworks */, + OBJ_3746 /* Intentions.framework in Frameworks */, + OBJ_3747 /* TypeDefinitions.framework in Frameworks */, + OBJ_3748 /* ObjcParser.framework in Frameworks */, + OBJ_3749 /* TypeLexing.framework in Frameworks */, + OBJ_3750 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_3751 /* GrammarModelBase.framework in Frameworks */, + OBJ_3752 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_3753 /* AntlrCommons.framework in Frameworks */, + OBJ_3754 /* Antlr4.framework in Frameworks */, + OBJ_3755 /* CAntlrShims.framework in Frameworks */, + OBJ_3756 /* KnownType.framework in Frameworks */, + OBJ_3757 /* SwiftAST.framework in Frameworks */, + OBJ_3758 /* MiniLexer.framework in Frameworks */, + OBJ_3759 /* WriterTargetOutput.framework in Frameworks */, + OBJ_3760 /* SwiftSyntax.framework in Frameworks */, + OBJ_3761 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_3762 /* Utils.framework in Frameworks */, + ); + }; + OBJ_3835 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + files = ( + OBJ_3836 /* TestCommons.framework in Frameworks */, + OBJ_3837 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_3838 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_3839 /* SwiftFormat.framework in Frameworks */, + OBJ_3840 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_3841 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_3842 /* SwiftFormatRules.framework in Frameworks */, + OBJ_3843 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_3844 /* SwiftFormatCore.framework in Frameworks */, + OBJ_3845 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_3846 /* Console.framework in Frameworks */, + OBJ_3847 /* JsParser.framework in Frameworks */, + OBJ_3848 /* JsGrammarModels.framework in Frameworks */, + OBJ_3849 /* JsParserAntlr.framework in Frameworks */, + OBJ_3850 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_3851 /* SourcePreprocessors.framework in Frameworks */, + OBJ_3852 /* ExpressionPasses.framework in Frameworks */, + OBJ_3853 /* GlobalsProviders.framework in Frameworks */, + OBJ_3854 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_3855 /* IntentionPasses.framework in Frameworks */, + OBJ_3856 /* Analysis.framework in Frameworks */, + OBJ_3857 /* GraphvizLib.framework in Frameworks */, + OBJ_3858 /* Commons.framework in Frameworks */, + OBJ_3859 /* TypeSystem.framework in Frameworks */, + OBJ_3860 /* Intentions.framework in Frameworks */, + OBJ_3861 /* TypeDefinitions.framework in Frameworks */, + OBJ_3862 /* ObjcParser.framework in Frameworks */, + OBJ_3863 /* TypeLexing.framework in Frameworks */, + OBJ_3864 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_3865 /* GrammarModelBase.framework in Frameworks */, + OBJ_3866 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_3867 /* AntlrCommons.framework in Frameworks */, + OBJ_3868 /* Antlr4.framework in Frameworks */, + OBJ_3869 /* CAntlrShims.framework in Frameworks */, + OBJ_3870 /* KnownType.framework in Frameworks */, + OBJ_3871 /* SwiftAST.framework in Frameworks */, + OBJ_3872 /* MiniLexer.framework in Frameworks */, + OBJ_3873 /* WriterTargetOutput.framework in Frameworks */, + OBJ_3874 /* SwiftSyntax.framework in Frameworks */, + OBJ_3875 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_3876 /* Utils.framework in Frameworks */, + ); + }; + OBJ_3924 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3378 /* MiniLexer.framework in Frameworks */, - OBJ_3379 /* Utils.framework in Frameworks */, + OBJ_3925 /* MiniLexer.framework in Frameworks */, + OBJ_3926 /* Utils.framework in Frameworks */, ); }; - OBJ_3388 /* Frameworks */ = { + OBJ_3935 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3389 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_3390 /* SwiftFormat.framework in Frameworks */, - OBJ_3391 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_3392 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_3393 /* SwiftFormatRules.framework in Frameworks */, - OBJ_3394 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_3395 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3396 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_3397 /* Console.framework in Frameworks */, - OBJ_3398 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_3399 /* ExpressionPasses.framework in Frameworks */, - OBJ_3400 /* GlobalsProviders.framework in Frameworks */, - OBJ_3401 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_3402 /* IntentionPasses.framework in Frameworks */, - OBJ_3403 /* Analysis.framework in Frameworks */, - OBJ_3404 /* GraphvizLib.framework in Frameworks */, - OBJ_3405 /* Commons.framework in Frameworks */, - OBJ_3406 /* TypeSystem.framework in Frameworks */, - OBJ_3407 /* Intentions.framework in Frameworks */, - OBJ_3408 /* TypeDefinitions.framework in Frameworks */, - OBJ_3409 /* KnownType.framework in Frameworks */, - OBJ_3410 /* SwiftAST.framework in Frameworks */, - OBJ_3411 /* WriterTargetOutput.framework in Frameworks */, - OBJ_3412 /* SwiftSyntax.framework in Frameworks */, - OBJ_3413 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3414 /* ObjcParser.framework in Frameworks */, - OBJ_3415 /* TypeLexing.framework in Frameworks */, - OBJ_3416 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_3417 /* GrammarModelBase.framework in Frameworks */, - OBJ_3418 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_3419 /* AntlrCommons.framework in Frameworks */, - OBJ_3420 /* Antlr4.framework in Frameworks */, - OBJ_3421 /* CAntlrShims.framework in Frameworks */, - OBJ_3422 /* SourcePreprocessors.framework in Frameworks */, - OBJ_3423 /* MiniLexer.framework in Frameworks */, - OBJ_3424 /* Utils.framework in Frameworks */, - ); - }; - OBJ_3558 /* Frameworks */ = { + OBJ_3936 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_3937 /* SwiftFormat.framework in Frameworks */, + OBJ_3938 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_3939 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_3940 /* SwiftFormatRules.framework in Frameworks */, + OBJ_3941 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_3942 /* SwiftFormatCore.framework in Frameworks */, + OBJ_3943 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_3944 /* Console.framework in Frameworks */, + OBJ_3945 /* JsParser.framework in Frameworks */, + OBJ_3946 /* JsGrammarModels.framework in Frameworks */, + OBJ_3947 /* JsParserAntlr.framework in Frameworks */, + OBJ_3948 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_3949 /* ExpressionPasses.framework in Frameworks */, + OBJ_3950 /* GlobalsProviders.framework in Frameworks */, + OBJ_3951 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_3952 /* IntentionPasses.framework in Frameworks */, + OBJ_3953 /* Analysis.framework in Frameworks */, + OBJ_3954 /* GraphvizLib.framework in Frameworks */, + OBJ_3955 /* Commons.framework in Frameworks */, + OBJ_3956 /* TypeSystem.framework in Frameworks */, + OBJ_3957 /* Intentions.framework in Frameworks */, + OBJ_3958 /* TypeDefinitions.framework in Frameworks */, + OBJ_3959 /* ObjcParser.framework in Frameworks */, + OBJ_3960 /* TypeLexing.framework in Frameworks */, + OBJ_3961 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_3962 /* GrammarModelBase.framework in Frameworks */, + OBJ_3963 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_3964 /* AntlrCommons.framework in Frameworks */, + OBJ_3965 /* Antlr4.framework in Frameworks */, + OBJ_3966 /* CAntlrShims.framework in Frameworks */, + OBJ_3967 /* KnownType.framework in Frameworks */, + OBJ_3968 /* SwiftAST.framework in Frameworks */, + OBJ_3969 /* WriterTargetOutput.framework in Frameworks */, + OBJ_3970 /* SwiftSyntax.framework in Frameworks */, + OBJ_3971 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_3972 /* SourcePreprocessors.framework in Frameworks */, + OBJ_3973 /* MiniLexer.framework in Frameworks */, + OBJ_3974 /* Utils.framework in Frameworks */, + ); + }; + OBJ_4111 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3559 /* MiniLexer.framework in Frameworks */, - OBJ_3560 /* WriterTargetOutput.framework in Frameworks */, - OBJ_3561 /* SwiftSyntax.framework in Frameworks */, - OBJ_3562 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3563 /* Utils.framework in Frameworks */, + OBJ_4112 /* MiniLexer.framework in Frameworks */, + OBJ_4113 /* WriterTargetOutput.framework in Frameworks */, + OBJ_4114 /* SwiftSyntax.framework in Frameworks */, + OBJ_4115 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4116 /* Utils.framework in Frameworks */, ); }; - OBJ_3595 /* Frameworks */ = { + OBJ_4148 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3596 /* TestCommons.framework in Frameworks */, - OBJ_3597 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_3598 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_3599 /* SwiftFormat.framework in Frameworks */, - OBJ_3600 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_3601 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_3602 /* SwiftFormatRules.framework in Frameworks */, - OBJ_3603 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_3604 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3605 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_3606 /* Console.framework in Frameworks */, - OBJ_3607 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_3608 /* SourcePreprocessors.framework in Frameworks */, - OBJ_3609 /* ExpressionPasses.framework in Frameworks */, - OBJ_3610 /* GlobalsProviders.framework in Frameworks */, - OBJ_3611 /* IntentionPasses.framework in Frameworks */, - OBJ_3612 /* Analysis.framework in Frameworks */, - OBJ_3613 /* GraphvizLib.framework in Frameworks */, - OBJ_3614 /* Commons.framework in Frameworks */, - OBJ_3615 /* TypeSystem.framework in Frameworks */, - OBJ_3616 /* TypeDefinitions.framework in Frameworks */, - OBJ_3617 /* ObjcParser.framework in Frameworks */, - OBJ_3618 /* TypeLexing.framework in Frameworks */, - OBJ_3619 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_3620 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_3621 /* AntlrCommons.framework in Frameworks */, - OBJ_3622 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_3623 /* Intentions.framework in Frameworks */, - OBJ_3624 /* GrammarModelBase.framework in Frameworks */, - OBJ_3625 /* Antlr4.framework in Frameworks */, - OBJ_3626 /* CAntlrShims.framework in Frameworks */, - OBJ_3627 /* KnownType.framework in Frameworks */, - OBJ_3628 /* SwiftAST.framework in Frameworks */, - OBJ_3629 /* MiniLexer.framework in Frameworks */, - OBJ_3630 /* WriterTargetOutput.framework in Frameworks */, - OBJ_3631 /* SwiftSyntax.framework in Frameworks */, - OBJ_3632 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3633 /* Utils.framework in Frameworks */, - ); - }; - OBJ_3685 /* Frameworks */ = { + OBJ_4149 /* TestCommons.framework in Frameworks */, + OBJ_4150 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_4151 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_4152 /* SwiftFormat.framework in Frameworks */, + OBJ_4153 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_4154 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_4155 /* SwiftFormatRules.framework in Frameworks */, + OBJ_4156 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_4157 /* SwiftFormatCore.framework in Frameworks */, + OBJ_4158 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4159 /* Console.framework in Frameworks */, + OBJ_4160 /* JsParser.framework in Frameworks */, + OBJ_4161 /* JsGrammarModels.framework in Frameworks */, + OBJ_4162 /* JsParserAntlr.framework in Frameworks */, + OBJ_4163 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_4164 /* SourcePreprocessors.framework in Frameworks */, + OBJ_4165 /* ExpressionPasses.framework in Frameworks */, + OBJ_4166 /* GlobalsProviders.framework in Frameworks */, + OBJ_4167 /* IntentionPasses.framework in Frameworks */, + OBJ_4168 /* Analysis.framework in Frameworks */, + OBJ_4169 /* GraphvizLib.framework in Frameworks */, + OBJ_4170 /* Commons.framework in Frameworks */, + OBJ_4171 /* TypeSystem.framework in Frameworks */, + OBJ_4172 /* TypeDefinitions.framework in Frameworks */, + OBJ_4173 /* ObjcParser.framework in Frameworks */, + OBJ_4174 /* TypeLexing.framework in Frameworks */, + OBJ_4175 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_4176 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_4177 /* AntlrCommons.framework in Frameworks */, + OBJ_4178 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_4179 /* Intentions.framework in Frameworks */, + OBJ_4180 /* GrammarModelBase.framework in Frameworks */, + OBJ_4181 /* Antlr4.framework in Frameworks */, + OBJ_4182 /* CAntlrShims.framework in Frameworks */, + OBJ_4183 /* KnownType.framework in Frameworks */, + OBJ_4184 /* SwiftAST.framework in Frameworks */, + OBJ_4185 /* MiniLexer.framework in Frameworks */, + OBJ_4186 /* WriterTargetOutput.framework in Frameworks */, + OBJ_4187 /* SwiftSyntax.framework in Frameworks */, + OBJ_4188 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4189 /* Utils.framework in Frameworks */, + ); + }; + OBJ_4244 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3686 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_3687 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_3688 /* SwiftFormatRules.framework in Frameworks */, - OBJ_3689 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_3690 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3691 /* SwiftSyntax.framework in Frameworks */, - OBJ_3692 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3693 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4245 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_4246 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_4247 /* SwiftFormatRules.framework in Frameworks */, + OBJ_4248 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_4249 /* SwiftFormatCore.framework in Frameworks */, + OBJ_4250 /* SwiftSyntax.framework in Frameworks */, + OBJ_4251 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4252 /* SwiftFormatConfiguration.framework in Frameworks */, ); }; - OBJ_3709 /* Frameworks */ = { + OBJ_4268 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( ); }; - OBJ_3727 /* Frameworks */ = { + OBJ_4286 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3728 /* SwiftSyntax.framework in Frameworks */, - OBJ_3729 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3730 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4287 /* SwiftSyntax.framework in Frameworks */, + OBJ_4288 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4289 /* SwiftFormatConfiguration.framework in Frameworks */, ); }; - OBJ_3747 /* Frameworks */ = { + OBJ_4306 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3748 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3749 /* SwiftSyntax.framework in Frameworks */, - OBJ_3750 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3751 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4307 /* SwiftFormatCore.framework in Frameworks */, + OBJ_4308 /* SwiftSyntax.framework in Frameworks */, + OBJ_4309 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4310 /* SwiftFormatConfiguration.framework in Frameworks */, ); }; - OBJ_3805 /* Frameworks */ = { + OBJ_4364 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3806 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3807 /* SwiftSyntax.framework in Frameworks */, - OBJ_3808 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3809 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4365 /* SwiftFormatCore.framework in Frameworks */, + OBJ_4366 /* SwiftSyntax.framework in Frameworks */, + OBJ_4367 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4368 /* SwiftFormatConfiguration.framework in Frameworks */, ); }; - OBJ_3822 /* Frameworks */ = { + OBJ_4381 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3823 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3824 /* SwiftSyntax.framework in Frameworks */, - OBJ_3825 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3826 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4382 /* SwiftFormatCore.framework in Frameworks */, + OBJ_4383 /* SwiftSyntax.framework in Frameworks */, + OBJ_4384 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4385 /* SwiftFormatConfiguration.framework in Frameworks */, ); }; - OBJ_3844 /* Frameworks */ = { + OBJ_4406 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3845 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_3846 /* SwiftRewriterCLI.framework in Frameworks */, - OBJ_3847 /* ArgumentParser.framework in Frameworks */, - OBJ_3848 /* ArgumentParserToolInfo.framework in Frameworks */, - OBJ_3849 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_3850 /* SwiftFormat.framework in Frameworks */, - OBJ_3851 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_3852 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_3853 /* SwiftFormatRules.framework in Frameworks */, - OBJ_3854 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_3855 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3856 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_3857 /* Console.framework in Frameworks */, - OBJ_3858 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_3859 /* SourcePreprocessors.framework in Frameworks */, - OBJ_3860 /* ExpressionPasses.framework in Frameworks */, - OBJ_3861 /* GlobalsProviders.framework in Frameworks */, - OBJ_3862 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_3863 /* IntentionPasses.framework in Frameworks */, - OBJ_3864 /* Analysis.framework in Frameworks */, - OBJ_3865 /* GraphvizLib.framework in Frameworks */, - OBJ_3866 /* Commons.framework in Frameworks */, - OBJ_3867 /* TypeSystem.framework in Frameworks */, - OBJ_3868 /* Intentions.framework in Frameworks */, - OBJ_3869 /* TypeDefinitions.framework in Frameworks */, - OBJ_3870 /* KnownType.framework in Frameworks */, - OBJ_3871 /* SwiftAST.framework in Frameworks */, - OBJ_3872 /* WriterTargetOutput.framework in Frameworks */, - OBJ_3873 /* SwiftSyntax.framework in Frameworks */, - OBJ_3874 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3875 /* ObjcParser.framework in Frameworks */, - OBJ_3876 /* TypeLexing.framework in Frameworks */, - OBJ_3877 /* MiniLexer.framework in Frameworks */, - OBJ_3878 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_3879 /* GrammarModelBase.framework in Frameworks */, - OBJ_3880 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_3881 /* AntlrCommons.framework in Frameworks */, - OBJ_3882 /* Antlr4.framework in Frameworks */, - OBJ_3883 /* CAntlrShims.framework in Frameworks */, - OBJ_3884 /* Utils.framework in Frameworks */, - ); - }; - OBJ_3934 /* Frameworks */ = { + OBJ_4407 /* JavaScriptFrontend.framework in Frameworks */, + OBJ_4408 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_4409 /* SwiftRewriterCLI.framework in Frameworks */, + OBJ_4410 /* ArgumentParser.framework in Frameworks */, + OBJ_4411 /* ArgumentParserToolInfo.framework in Frameworks */, + OBJ_4412 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_4413 /* SwiftFormat.framework in Frameworks */, + OBJ_4414 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_4415 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_4416 /* SwiftFormatRules.framework in Frameworks */, + OBJ_4417 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_4418 /* SwiftFormatCore.framework in Frameworks */, + OBJ_4419 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4420 /* Console.framework in Frameworks */, + OBJ_4421 /* JsParser.framework in Frameworks */, + OBJ_4422 /* JsGrammarModels.framework in Frameworks */, + OBJ_4423 /* JsParserAntlr.framework in Frameworks */, + OBJ_4424 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_4425 /* SourcePreprocessors.framework in Frameworks */, + OBJ_4426 /* ExpressionPasses.framework in Frameworks */, + OBJ_4427 /* GlobalsProviders.framework in Frameworks */, + OBJ_4428 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_4429 /* IntentionPasses.framework in Frameworks */, + OBJ_4430 /* Analysis.framework in Frameworks */, + OBJ_4431 /* GraphvizLib.framework in Frameworks */, + OBJ_4432 /* Commons.framework in Frameworks */, + OBJ_4433 /* TypeSystem.framework in Frameworks */, + OBJ_4434 /* Intentions.framework in Frameworks */, + OBJ_4435 /* TypeDefinitions.framework in Frameworks */, + OBJ_4436 /* ObjcParser.framework in Frameworks */, + OBJ_4437 /* TypeLexing.framework in Frameworks */, + OBJ_4438 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_4439 /* GrammarModelBase.framework in Frameworks */, + OBJ_4440 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_4441 /* AntlrCommons.framework in Frameworks */, + OBJ_4442 /* Antlr4.framework in Frameworks */, + OBJ_4443 /* CAntlrShims.framework in Frameworks */, + OBJ_4444 /* KnownType.framework in Frameworks */, + OBJ_4445 /* SwiftAST.framework in Frameworks */, + OBJ_4446 /* MiniLexer.framework in Frameworks */, + OBJ_4447 /* WriterTargetOutput.framework in Frameworks */, + OBJ_4448 /* SwiftSyntax.framework in Frameworks */, + OBJ_4449 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4450 /* Utils.framework in Frameworks */, + ); + }; + OBJ_4504 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_3935 /* ArgumentParser.framework in Frameworks */, - OBJ_3936 /* ArgumentParserToolInfo.framework in Frameworks */, - OBJ_3937 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_3938 /* SwiftFormat.framework in Frameworks */, - OBJ_3939 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_3940 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_3941 /* SwiftFormatRules.framework in Frameworks */, - OBJ_3942 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_3943 /* SwiftFormatCore.framework in Frameworks */, - OBJ_3944 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_3945 /* Console.framework in Frameworks */, - OBJ_3946 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_3947 /* SourcePreprocessors.framework in Frameworks */, - OBJ_3948 /* ExpressionPasses.framework in Frameworks */, - OBJ_3949 /* GlobalsProviders.framework in Frameworks */, - OBJ_3950 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_3951 /* IntentionPasses.framework in Frameworks */, - OBJ_3952 /* Analysis.framework in Frameworks */, - OBJ_3953 /* GraphvizLib.framework in Frameworks */, - OBJ_3954 /* Commons.framework in Frameworks */, - OBJ_3955 /* TypeSystem.framework in Frameworks */, - OBJ_3956 /* Intentions.framework in Frameworks */, - OBJ_3957 /* TypeDefinitions.framework in Frameworks */, - OBJ_3958 /* KnownType.framework in Frameworks */, - OBJ_3959 /* SwiftAST.framework in Frameworks */, - OBJ_3960 /* WriterTargetOutput.framework in Frameworks */, - OBJ_3961 /* SwiftSyntax.framework in Frameworks */, - OBJ_3962 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_3963 /* ObjcParser.framework in Frameworks */, - OBJ_3964 /* TypeLexing.framework in Frameworks */, - OBJ_3965 /* MiniLexer.framework in Frameworks */, - OBJ_3966 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_3967 /* GrammarModelBase.framework in Frameworks */, - OBJ_3968 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_3969 /* AntlrCommons.framework in Frameworks */, - OBJ_3970 /* Antlr4.framework in Frameworks */, - OBJ_3971 /* CAntlrShims.framework in Frameworks */, - OBJ_3972 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4030 /* Frameworks */ = { + OBJ_4505 /* ArgumentParser.framework in Frameworks */, + OBJ_4506 /* ArgumentParserToolInfo.framework in Frameworks */, + OBJ_4507 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_4508 /* SwiftFormat.framework in Frameworks */, + OBJ_4509 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_4510 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_4511 /* SwiftFormatRules.framework in Frameworks */, + OBJ_4512 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_4513 /* SwiftFormatCore.framework in Frameworks */, + OBJ_4514 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4515 /* Console.framework in Frameworks */, + OBJ_4516 /* JsParser.framework in Frameworks */, + OBJ_4517 /* JsGrammarModels.framework in Frameworks */, + OBJ_4518 /* JsParserAntlr.framework in Frameworks */, + OBJ_4519 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_4520 /* SourcePreprocessors.framework in Frameworks */, + OBJ_4521 /* ExpressionPasses.framework in Frameworks */, + OBJ_4522 /* GlobalsProviders.framework in Frameworks */, + OBJ_4523 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_4524 /* IntentionPasses.framework in Frameworks */, + OBJ_4525 /* Analysis.framework in Frameworks */, + OBJ_4526 /* GraphvizLib.framework in Frameworks */, + OBJ_4527 /* Commons.framework in Frameworks */, + OBJ_4528 /* TypeSystem.framework in Frameworks */, + OBJ_4529 /* Intentions.framework in Frameworks */, + OBJ_4530 /* TypeDefinitions.framework in Frameworks */, + OBJ_4531 /* ObjcParser.framework in Frameworks */, + OBJ_4532 /* TypeLexing.framework in Frameworks */, + OBJ_4533 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_4534 /* GrammarModelBase.framework in Frameworks */, + OBJ_4535 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_4536 /* AntlrCommons.framework in Frameworks */, + OBJ_4537 /* Antlr4.framework in Frameworks */, + OBJ_4538 /* CAntlrShims.framework in Frameworks */, + OBJ_4539 /* KnownType.framework in Frameworks */, + OBJ_4540 /* SwiftAST.framework in Frameworks */, + OBJ_4541 /* MiniLexer.framework in Frameworks */, + OBJ_4542 /* WriterTargetOutput.framework in Frameworks */, + OBJ_4543 /* SwiftSyntax.framework in Frameworks */, + OBJ_4544 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4545 /* Utils.framework in Frameworks */, + ); + }; + OBJ_4606 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4031 /* SwiftFormat.framework in Frameworks */, - OBJ_4032 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_4033 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_4034 /* SwiftFormatRules.framework in Frameworks */, - OBJ_4035 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_4036 /* SwiftFormatCore.framework in Frameworks */, - OBJ_4037 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_4038 /* Console.framework in Frameworks */, - OBJ_4039 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_4040 /* SourcePreprocessors.framework in Frameworks */, - OBJ_4041 /* ExpressionPasses.framework in Frameworks */, - OBJ_4042 /* GlobalsProviders.framework in Frameworks */, - OBJ_4043 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_4044 /* IntentionPasses.framework in Frameworks */, - OBJ_4045 /* Analysis.framework in Frameworks */, - OBJ_4046 /* GraphvizLib.framework in Frameworks */, - OBJ_4047 /* Commons.framework in Frameworks */, - OBJ_4048 /* TypeSystem.framework in Frameworks */, - OBJ_4049 /* Intentions.framework in Frameworks */, - OBJ_4050 /* TypeDefinitions.framework in Frameworks */, - OBJ_4051 /* KnownType.framework in Frameworks */, - OBJ_4052 /* SwiftAST.framework in Frameworks */, - OBJ_4053 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4054 /* SwiftSyntax.framework in Frameworks */, - OBJ_4055 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4056 /* ObjcParser.framework in Frameworks */, - OBJ_4057 /* TypeLexing.framework in Frameworks */, - OBJ_4058 /* MiniLexer.framework in Frameworks */, - OBJ_4059 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_4060 /* GrammarModelBase.framework in Frameworks */, - OBJ_4061 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_4062 /* AntlrCommons.framework in Frameworks */, - OBJ_4063 /* Antlr4.framework in Frameworks */, - OBJ_4064 /* CAntlrShims.framework in Frameworks */, - OBJ_4065 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4108 /* Frameworks */ = { + OBJ_4607 /* SwiftFormat.framework in Frameworks */, + OBJ_4608 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_4609 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_4610 /* SwiftFormatRules.framework in Frameworks */, + OBJ_4611 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_4612 /* SwiftFormatCore.framework in Frameworks */, + OBJ_4613 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4614 /* Console.framework in Frameworks */, + OBJ_4615 /* JsParser.framework in Frameworks */, + OBJ_4616 /* JsGrammarModels.framework in Frameworks */, + OBJ_4617 /* JsParserAntlr.framework in Frameworks */, + OBJ_4618 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_4619 /* SourcePreprocessors.framework in Frameworks */, + OBJ_4620 /* ExpressionPasses.framework in Frameworks */, + OBJ_4621 /* GlobalsProviders.framework in Frameworks */, + OBJ_4622 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_4623 /* IntentionPasses.framework in Frameworks */, + OBJ_4624 /* Analysis.framework in Frameworks */, + OBJ_4625 /* GraphvizLib.framework in Frameworks */, + OBJ_4626 /* Commons.framework in Frameworks */, + OBJ_4627 /* TypeSystem.framework in Frameworks */, + OBJ_4628 /* Intentions.framework in Frameworks */, + OBJ_4629 /* TypeDefinitions.framework in Frameworks */, + OBJ_4630 /* ObjcParser.framework in Frameworks */, + OBJ_4631 /* TypeLexing.framework in Frameworks */, + OBJ_4632 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_4633 /* GrammarModelBase.framework in Frameworks */, + OBJ_4634 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_4635 /* AntlrCommons.framework in Frameworks */, + OBJ_4636 /* Antlr4.framework in Frameworks */, + OBJ_4637 /* CAntlrShims.framework in Frameworks */, + OBJ_4638 /* KnownType.framework in Frameworks */, + OBJ_4639 /* SwiftAST.framework in Frameworks */, + OBJ_4640 /* MiniLexer.framework in Frameworks */, + OBJ_4641 /* WriterTargetOutput.framework in Frameworks */, + OBJ_4642 /* SwiftSyntax.framework in Frameworks */, + OBJ_4643 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4644 /* Utils.framework in Frameworks */, + ); + }; + OBJ_4690 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4109 /* TestCommons.framework in Frameworks */, - OBJ_4110 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_4111 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_4112 /* SwiftFormat.framework in Frameworks */, - OBJ_4113 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_4114 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_4115 /* SwiftFormatRules.framework in Frameworks */, - OBJ_4116 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_4117 /* SwiftFormatCore.framework in Frameworks */, - OBJ_4118 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_4119 /* Console.framework in Frameworks */, - OBJ_4120 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_4121 /* SourcePreprocessors.framework in Frameworks */, - OBJ_4122 /* ExpressionPasses.framework in Frameworks */, - OBJ_4123 /* GlobalsProviders.framework in Frameworks */, - OBJ_4124 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_4125 /* IntentionPasses.framework in Frameworks */, - OBJ_4126 /* Analysis.framework in Frameworks */, - OBJ_4127 /* GraphvizLib.framework in Frameworks */, - OBJ_4128 /* Commons.framework in Frameworks */, - OBJ_4129 /* TypeSystem.framework in Frameworks */, - OBJ_4130 /* Intentions.framework in Frameworks */, - OBJ_4131 /* TypeDefinitions.framework in Frameworks */, - OBJ_4132 /* KnownType.framework in Frameworks */, - OBJ_4133 /* SwiftAST.framework in Frameworks */, - OBJ_4134 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4135 /* SwiftSyntax.framework in Frameworks */, - OBJ_4136 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4137 /* ObjcParser.framework in Frameworks */, - OBJ_4138 /* TypeLexing.framework in Frameworks */, - OBJ_4139 /* MiniLexer.framework in Frameworks */, - OBJ_4140 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_4141 /* GrammarModelBase.framework in Frameworks */, - OBJ_4142 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_4143 /* AntlrCommons.framework in Frameworks */, - OBJ_4144 /* Antlr4.framework in Frameworks */, - OBJ_4145 /* CAntlrShims.framework in Frameworks */, - OBJ_4146 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4229 /* Frameworks */ = { + OBJ_4691 /* TestCommons.framework in Frameworks */, + OBJ_4692 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_4693 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_4694 /* SwiftFormat.framework in Frameworks */, + OBJ_4695 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_4696 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_4697 /* SwiftFormatRules.framework in Frameworks */, + OBJ_4698 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_4699 /* SwiftFormatCore.framework in Frameworks */, + OBJ_4700 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4701 /* Console.framework in Frameworks */, + OBJ_4702 /* JsParser.framework in Frameworks */, + OBJ_4703 /* JsGrammarModels.framework in Frameworks */, + OBJ_4704 /* JsParserAntlr.framework in Frameworks */, + OBJ_4705 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_4706 /* SourcePreprocessors.framework in Frameworks */, + OBJ_4707 /* ExpressionPasses.framework in Frameworks */, + OBJ_4708 /* GlobalsProviders.framework in Frameworks */, + OBJ_4709 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_4710 /* IntentionPasses.framework in Frameworks */, + OBJ_4711 /* Analysis.framework in Frameworks */, + OBJ_4712 /* GraphvizLib.framework in Frameworks */, + OBJ_4713 /* Commons.framework in Frameworks */, + OBJ_4714 /* TypeSystem.framework in Frameworks */, + OBJ_4715 /* Intentions.framework in Frameworks */, + OBJ_4716 /* TypeDefinitions.framework in Frameworks */, + OBJ_4717 /* ObjcParser.framework in Frameworks */, + OBJ_4718 /* TypeLexing.framework in Frameworks */, + OBJ_4719 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_4720 /* GrammarModelBase.framework in Frameworks */, + OBJ_4721 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_4722 /* AntlrCommons.framework in Frameworks */, + OBJ_4723 /* Antlr4.framework in Frameworks */, + OBJ_4724 /* CAntlrShims.framework in Frameworks */, + OBJ_4725 /* KnownType.framework in Frameworks */, + OBJ_4726 /* SwiftAST.framework in Frameworks */, + OBJ_4727 /* MiniLexer.framework in Frameworks */, + OBJ_4728 /* WriterTargetOutput.framework in Frameworks */, + OBJ_4729 /* SwiftSyntax.framework in Frameworks */, + OBJ_4730 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4731 /* Utils.framework in Frameworks */, + ); + }; + OBJ_4819 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4230 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_4231 /* SwiftRewriterCLI.framework in Frameworks */, - OBJ_4232 /* ArgumentParser.framework in Frameworks */, - OBJ_4233 /* ArgumentParserToolInfo.framework in Frameworks */, - OBJ_4234 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_4235 /* SwiftFormat.framework in Frameworks */, - OBJ_4236 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_4237 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_4238 /* SwiftFormatRules.framework in Frameworks */, - OBJ_4239 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_4240 /* SwiftFormatCore.framework in Frameworks */, - OBJ_4241 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_4242 /* Console.framework in Frameworks */, - OBJ_4243 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_4244 /* SourcePreprocessors.framework in Frameworks */, - OBJ_4245 /* ExpressionPasses.framework in Frameworks */, - OBJ_4246 /* GlobalsProviders.framework in Frameworks */, - OBJ_4247 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_4248 /* IntentionPasses.framework in Frameworks */, - OBJ_4249 /* Analysis.framework in Frameworks */, - OBJ_4250 /* GraphvizLib.framework in Frameworks */, - OBJ_4251 /* Commons.framework in Frameworks */, - OBJ_4252 /* TypeSystem.framework in Frameworks */, - OBJ_4253 /* Intentions.framework in Frameworks */, - OBJ_4254 /* TypeDefinitions.framework in Frameworks */, - OBJ_4255 /* KnownType.framework in Frameworks */, - OBJ_4256 /* SwiftAST.framework in Frameworks */, - OBJ_4257 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4258 /* SwiftSyntax.framework in Frameworks */, - OBJ_4259 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4260 /* ObjcParser.framework in Frameworks */, - OBJ_4261 /* TypeLexing.framework in Frameworks */, - OBJ_4262 /* MiniLexer.framework in Frameworks */, - OBJ_4263 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_4264 /* GrammarModelBase.framework in Frameworks */, - OBJ_4265 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_4266 /* AntlrCommons.framework in Frameworks */, - OBJ_4267 /* Antlr4.framework in Frameworks */, - OBJ_4268 /* CAntlrShims.framework in Frameworks */, - OBJ_4269 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4351 /* Frameworks */ = { + OBJ_4820 /* JavaScriptFrontend.framework in Frameworks */, + OBJ_4821 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_4822 /* SwiftRewriterCLI.framework in Frameworks */, + OBJ_4823 /* ArgumentParser.framework in Frameworks */, + OBJ_4824 /* ArgumentParserToolInfo.framework in Frameworks */, + OBJ_4825 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_4826 /* SwiftFormat.framework in Frameworks */, + OBJ_4827 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_4828 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_4829 /* SwiftFormatRules.framework in Frameworks */, + OBJ_4830 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_4831 /* SwiftFormatCore.framework in Frameworks */, + OBJ_4832 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_4833 /* Console.framework in Frameworks */, + OBJ_4834 /* JsParser.framework in Frameworks */, + OBJ_4835 /* JsGrammarModels.framework in Frameworks */, + OBJ_4836 /* JsParserAntlr.framework in Frameworks */, + OBJ_4837 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_4838 /* SourcePreprocessors.framework in Frameworks */, + OBJ_4839 /* ExpressionPasses.framework in Frameworks */, + OBJ_4840 /* GlobalsProviders.framework in Frameworks */, + OBJ_4841 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_4842 /* IntentionPasses.framework in Frameworks */, + OBJ_4843 /* Analysis.framework in Frameworks */, + OBJ_4844 /* GraphvizLib.framework in Frameworks */, + OBJ_4845 /* Commons.framework in Frameworks */, + OBJ_4846 /* TypeSystem.framework in Frameworks */, + OBJ_4847 /* Intentions.framework in Frameworks */, + OBJ_4848 /* TypeDefinitions.framework in Frameworks */, + OBJ_4849 /* ObjcParser.framework in Frameworks */, + OBJ_4850 /* TypeLexing.framework in Frameworks */, + OBJ_4851 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_4852 /* GrammarModelBase.framework in Frameworks */, + OBJ_4853 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_4854 /* AntlrCommons.framework in Frameworks */, + OBJ_4855 /* Antlr4.framework in Frameworks */, + OBJ_4856 /* CAntlrShims.framework in Frameworks */, + OBJ_4857 /* KnownType.framework in Frameworks */, + OBJ_4858 /* SwiftAST.framework in Frameworks */, + OBJ_4859 /* MiniLexer.framework in Frameworks */, + OBJ_4860 /* WriterTargetOutput.framework in Frameworks */, + OBJ_4861 /* SwiftSyntax.framework in Frameworks */, + OBJ_4862 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4863 /* Utils.framework in Frameworks */, + ); + }; + OBJ_4949 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4352 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4950 /* _CSwiftSyntax.framework in Frameworks */, ); }; - OBJ_4368 /* Frameworks */ = { + OBJ_4966 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4369 /* SwiftSyntax.framework in Frameworks */, - OBJ_4370 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4967 /* SwiftSyntax.framework in Frameworks */, + OBJ_4968 /* _CSwiftSyntax.framework in Frameworks */, ); }; - OBJ_4379 /* Frameworks */ = { + OBJ_4977 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4380 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_4381 /* Intentions.framework in Frameworks */, - OBJ_4382 /* GrammarModelBase.framework in Frameworks */, - OBJ_4383 /* Antlr4.framework in Frameworks */, - OBJ_4384 /* CAntlrShims.framework in Frameworks */, - OBJ_4385 /* KnownType.framework in Frameworks */, - OBJ_4386 /* SwiftAST.framework in Frameworks */, - OBJ_4387 /* MiniLexer.framework in Frameworks */, - OBJ_4388 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4389 /* SwiftSyntax.framework in Frameworks */, - OBJ_4390 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4391 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4411 /* Frameworks */ = { + OBJ_4978 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_4979 /* Intentions.framework in Frameworks */, + OBJ_4980 /* GrammarModelBase.framework in Frameworks */, + OBJ_4981 /* Antlr4.framework in Frameworks */, + OBJ_4982 /* CAntlrShims.framework in Frameworks */, + OBJ_4983 /* KnownType.framework in Frameworks */, + OBJ_4984 /* SwiftAST.framework in Frameworks */, + OBJ_4985 /* MiniLexer.framework in Frameworks */, + OBJ_4986 /* WriterTargetOutput.framework in Frameworks */, + OBJ_4987 /* SwiftSyntax.framework in Frameworks */, + OBJ_4988 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_4989 /* Utils.framework in Frameworks */, + ); + }; + OBJ_5009 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4412 /* TestCommons.framework in Frameworks */, - OBJ_4413 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_4414 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_4415 /* SwiftFormat.framework in Frameworks */, - OBJ_4416 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_4417 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_4418 /* SwiftFormatRules.framework in Frameworks */, - OBJ_4419 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_4420 /* SwiftFormatCore.framework in Frameworks */, - OBJ_4421 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_4422 /* Console.framework in Frameworks */, - OBJ_4423 /* SourcePreprocessors.framework in Frameworks */, - OBJ_4424 /* ExpressionPasses.framework in Frameworks */, - OBJ_4425 /* GlobalsProviders.framework in Frameworks */, - OBJ_4426 /* IntentionPasses.framework in Frameworks */, - OBJ_4427 /* Analysis.framework in Frameworks */, - OBJ_4428 /* GraphvizLib.framework in Frameworks */, - OBJ_4429 /* Commons.framework in Frameworks */, - OBJ_4430 /* TypeSystem.framework in Frameworks */, - OBJ_4431 /* TypeDefinitions.framework in Frameworks */, - OBJ_4432 /* ObjcParser.framework in Frameworks */, - OBJ_4433 /* TypeLexing.framework in Frameworks */, - OBJ_4434 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_4435 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_4436 /* AntlrCommons.framework in Frameworks */, - OBJ_4437 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_4438 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_4439 /* Intentions.framework in Frameworks */, - OBJ_4440 /* GrammarModelBase.framework in Frameworks */, - OBJ_4441 /* Antlr4.framework in Frameworks */, - OBJ_4442 /* CAntlrShims.framework in Frameworks */, - OBJ_4443 /* KnownType.framework in Frameworks */, - OBJ_4444 /* SwiftAST.framework in Frameworks */, - OBJ_4445 /* MiniLexer.framework in Frameworks */, - OBJ_4446 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4447 /* SwiftSyntax.framework in Frameworks */, - OBJ_4448 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4449 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4506 /* Frameworks */ = { + OBJ_5010 /* TestCommons.framework in Frameworks */, + OBJ_5011 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_5012 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_5013 /* SwiftFormat.framework in Frameworks */, + OBJ_5014 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_5015 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_5016 /* SwiftFormatRules.framework in Frameworks */, + OBJ_5017 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_5018 /* SwiftFormatCore.framework in Frameworks */, + OBJ_5019 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_5020 /* Console.framework in Frameworks */, + OBJ_5021 /* JsParser.framework in Frameworks */, + OBJ_5022 /* JsGrammarModels.framework in Frameworks */, + OBJ_5023 /* JsParserAntlr.framework in Frameworks */, + OBJ_5024 /* SourcePreprocessors.framework in Frameworks */, + OBJ_5025 /* ExpressionPasses.framework in Frameworks */, + OBJ_5026 /* GlobalsProviders.framework in Frameworks */, + OBJ_5027 /* IntentionPasses.framework in Frameworks */, + OBJ_5028 /* Analysis.framework in Frameworks */, + OBJ_5029 /* GraphvizLib.framework in Frameworks */, + OBJ_5030 /* Commons.framework in Frameworks */, + OBJ_5031 /* TypeSystem.framework in Frameworks */, + OBJ_5032 /* TypeDefinitions.framework in Frameworks */, + OBJ_5033 /* ObjcParser.framework in Frameworks */, + OBJ_5034 /* TypeLexing.framework in Frameworks */, + OBJ_5035 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_5036 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_5037 /* AntlrCommons.framework in Frameworks */, + OBJ_5038 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_5039 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_5040 /* Intentions.framework in Frameworks */, + OBJ_5041 /* GrammarModelBase.framework in Frameworks */, + OBJ_5042 /* Antlr4.framework in Frameworks */, + OBJ_5043 /* CAntlrShims.framework in Frameworks */, + OBJ_5044 /* KnownType.framework in Frameworks */, + OBJ_5045 /* SwiftAST.framework in Frameworks */, + OBJ_5046 /* MiniLexer.framework in Frameworks */, + OBJ_5047 /* WriterTargetOutput.framework in Frameworks */, + OBJ_5048 /* SwiftSyntax.framework in Frameworks */, + OBJ_5049 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_5050 /* Utils.framework in Frameworks */, + ); + }; + OBJ_5110 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4507 /* Intentions.framework in Frameworks */, - OBJ_4508 /* GrammarModelBase.framework in Frameworks */, - OBJ_4509 /* Antlr4.framework in Frameworks */, - OBJ_4510 /* CAntlrShims.framework in Frameworks */, - OBJ_4511 /* KnownType.framework in Frameworks */, - OBJ_4512 /* SwiftAST.framework in Frameworks */, - OBJ_4513 /* MiniLexer.framework in Frameworks */, - OBJ_4514 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4515 /* SwiftSyntax.framework in Frameworks */, - OBJ_4516 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4517 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4539 /* Frameworks */ = { + OBJ_5111 /* Intentions.framework in Frameworks */, + OBJ_5112 /* GrammarModelBase.framework in Frameworks */, + OBJ_5113 /* Antlr4.framework in Frameworks */, + OBJ_5114 /* CAntlrShims.framework in Frameworks */, + OBJ_5115 /* KnownType.framework in Frameworks */, + OBJ_5116 /* SwiftAST.framework in Frameworks */, + OBJ_5117 /* MiniLexer.framework in Frameworks */, + OBJ_5118 /* WriterTargetOutput.framework in Frameworks */, + OBJ_5119 /* SwiftSyntax.framework in Frameworks */, + OBJ_5120 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_5121 /* Utils.framework in Frameworks */, + ); + }; + OBJ_5143 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4540 /* TestCommons.framework in Frameworks */, - OBJ_4541 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_4542 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_4543 /* SwiftFormat.framework in Frameworks */, - OBJ_4544 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_4545 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_4546 /* SwiftFormatRules.framework in Frameworks */, - OBJ_4547 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_4548 /* SwiftFormatCore.framework in Frameworks */, - OBJ_4549 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_4550 /* Console.framework in Frameworks */, - OBJ_4551 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_4552 /* SourcePreprocessors.framework in Frameworks */, - OBJ_4553 /* ExpressionPasses.framework in Frameworks */, - OBJ_4554 /* GlobalsProviders.framework in Frameworks */, - OBJ_4555 /* IntentionPasses.framework in Frameworks */, - OBJ_4556 /* Analysis.framework in Frameworks */, - OBJ_4557 /* GraphvizLib.framework in Frameworks */, - OBJ_4558 /* Commons.framework in Frameworks */, - OBJ_4559 /* TypeSystem.framework in Frameworks */, - OBJ_4560 /* TypeDefinitions.framework in Frameworks */, - OBJ_4561 /* ObjcParser.framework in Frameworks */, - OBJ_4562 /* TypeLexing.framework in Frameworks */, - OBJ_4563 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_4564 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_4565 /* AntlrCommons.framework in Frameworks */, - OBJ_4566 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_4567 /* Intentions.framework in Frameworks */, - OBJ_4568 /* GrammarModelBase.framework in Frameworks */, - OBJ_4569 /* Antlr4.framework in Frameworks */, - OBJ_4570 /* CAntlrShims.framework in Frameworks */, - OBJ_4571 /* KnownType.framework in Frameworks */, - OBJ_4572 /* SwiftAST.framework in Frameworks */, - OBJ_4573 /* MiniLexer.framework in Frameworks */, - OBJ_4574 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4575 /* SwiftSyntax.framework in Frameworks */, - OBJ_4576 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4577 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4686 /* Frameworks */ = { + OBJ_5144 /* TestCommons.framework in Frameworks */, + OBJ_5145 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_5146 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_5147 /* SwiftFormat.framework in Frameworks */, + OBJ_5148 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_5149 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_5150 /* SwiftFormatRules.framework in Frameworks */, + OBJ_5151 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_5152 /* SwiftFormatCore.framework in Frameworks */, + OBJ_5153 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_5154 /* Console.framework in Frameworks */, + OBJ_5155 /* JsParser.framework in Frameworks */, + OBJ_5156 /* JsGrammarModels.framework in Frameworks */, + OBJ_5157 /* JsParserAntlr.framework in Frameworks */, + OBJ_5158 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_5159 /* SourcePreprocessors.framework in Frameworks */, + OBJ_5160 /* ExpressionPasses.framework in Frameworks */, + OBJ_5161 /* GlobalsProviders.framework in Frameworks */, + OBJ_5162 /* IntentionPasses.framework in Frameworks */, + OBJ_5163 /* Analysis.framework in Frameworks */, + OBJ_5164 /* GraphvizLib.framework in Frameworks */, + OBJ_5165 /* Commons.framework in Frameworks */, + OBJ_5166 /* TypeSystem.framework in Frameworks */, + OBJ_5167 /* TypeDefinitions.framework in Frameworks */, + OBJ_5168 /* ObjcParser.framework in Frameworks */, + OBJ_5169 /* TypeLexing.framework in Frameworks */, + OBJ_5170 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_5171 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_5172 /* AntlrCommons.framework in Frameworks */, + OBJ_5173 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_5174 /* Intentions.framework in Frameworks */, + OBJ_5175 /* GrammarModelBase.framework in Frameworks */, + OBJ_5176 /* Antlr4.framework in Frameworks */, + OBJ_5177 /* CAntlrShims.framework in Frameworks */, + OBJ_5178 /* KnownType.framework in Frameworks */, + OBJ_5179 /* SwiftAST.framework in Frameworks */, + OBJ_5180 /* MiniLexer.framework in Frameworks */, + OBJ_5181 /* WriterTargetOutput.framework in Frameworks */, + OBJ_5182 /* SwiftSyntax.framework in Frameworks */, + OBJ_5183 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_5184 /* Utils.framework in Frameworks */, + ); + }; + OBJ_5299 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4687 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_4688 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_4689 /* SwiftFormat.framework in Frameworks */, - OBJ_4690 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_4691 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_4692 /* SwiftFormatRules.framework in Frameworks */, - OBJ_4693 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_4694 /* SwiftFormatCore.framework in Frameworks */, - OBJ_4695 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_4696 /* Console.framework in Frameworks */, - OBJ_4697 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_4698 /* SourcePreprocessors.framework in Frameworks */, - OBJ_4699 /* ExpressionPasses.framework in Frameworks */, - OBJ_4700 /* GlobalsProviders.framework in Frameworks */, - OBJ_4701 /* IntentionPasses.framework in Frameworks */, - OBJ_4702 /* Analysis.framework in Frameworks */, - OBJ_4703 /* GraphvizLib.framework in Frameworks */, - OBJ_4704 /* Commons.framework in Frameworks */, - OBJ_4705 /* TypeSystem.framework in Frameworks */, - OBJ_4706 /* TypeDefinitions.framework in Frameworks */, - OBJ_4707 /* ObjcParser.framework in Frameworks */, - OBJ_4708 /* TypeLexing.framework in Frameworks */, - OBJ_4709 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_4710 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_4711 /* AntlrCommons.framework in Frameworks */, - OBJ_4712 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_4713 /* Intentions.framework in Frameworks */, - OBJ_4714 /* GrammarModelBase.framework in Frameworks */, - OBJ_4715 /* Antlr4.framework in Frameworks */, - OBJ_4716 /* CAntlrShims.framework in Frameworks */, - OBJ_4717 /* KnownType.framework in Frameworks */, - OBJ_4718 /* SwiftAST.framework in Frameworks */, - OBJ_4719 /* MiniLexer.framework in Frameworks */, - OBJ_4720 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4721 /* SwiftSyntax.framework in Frameworks */, - OBJ_4722 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4723 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4767 /* Frameworks */ = { + OBJ_5300 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_5301 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_5302 /* SwiftFormat.framework in Frameworks */, + OBJ_5303 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_5304 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_5305 /* SwiftFormatRules.framework in Frameworks */, + OBJ_5306 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_5307 /* SwiftFormatCore.framework in Frameworks */, + OBJ_5308 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_5309 /* Console.framework in Frameworks */, + OBJ_5310 /* JsParser.framework in Frameworks */, + OBJ_5311 /* JsGrammarModels.framework in Frameworks */, + OBJ_5312 /* JsParserAntlr.framework in Frameworks */, + OBJ_5313 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_5314 /* SourcePreprocessors.framework in Frameworks */, + OBJ_5315 /* ExpressionPasses.framework in Frameworks */, + OBJ_5316 /* GlobalsProviders.framework in Frameworks */, + OBJ_5317 /* IntentionPasses.framework in Frameworks */, + OBJ_5318 /* Analysis.framework in Frameworks */, + OBJ_5319 /* GraphvizLib.framework in Frameworks */, + OBJ_5320 /* Commons.framework in Frameworks */, + OBJ_5321 /* TypeSystem.framework in Frameworks */, + OBJ_5322 /* TypeDefinitions.framework in Frameworks */, + OBJ_5323 /* ObjcParser.framework in Frameworks */, + OBJ_5324 /* TypeLexing.framework in Frameworks */, + OBJ_5325 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_5326 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_5327 /* AntlrCommons.framework in Frameworks */, + OBJ_5328 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_5329 /* Intentions.framework in Frameworks */, + OBJ_5330 /* GrammarModelBase.framework in Frameworks */, + OBJ_5331 /* Antlr4.framework in Frameworks */, + OBJ_5332 /* CAntlrShims.framework in Frameworks */, + OBJ_5333 /* KnownType.framework in Frameworks */, + OBJ_5334 /* SwiftAST.framework in Frameworks */, + OBJ_5335 /* MiniLexer.framework in Frameworks */, + OBJ_5336 /* WriterTargetOutput.framework in Frameworks */, + OBJ_5337 /* SwiftSyntax.framework in Frameworks */, + OBJ_5338 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_5339 /* Utils.framework in Frameworks */, + ); + }; + OBJ_5386 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4768 /* TestCommons.framework in Frameworks */, - OBJ_4769 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_4770 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_4771 /* SwiftFormat.framework in Frameworks */, - OBJ_4772 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_4773 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_4774 /* SwiftFormatRules.framework in Frameworks */, - OBJ_4775 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_4776 /* SwiftFormatCore.framework in Frameworks */, - OBJ_4777 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_4778 /* Console.framework in Frameworks */, - OBJ_4779 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_4780 /* SourcePreprocessors.framework in Frameworks */, - OBJ_4781 /* ExpressionPasses.framework in Frameworks */, - OBJ_4782 /* GlobalsProviders.framework in Frameworks */, - OBJ_4783 /* IntentionPasses.framework in Frameworks */, - OBJ_4784 /* Analysis.framework in Frameworks */, - OBJ_4785 /* GraphvizLib.framework in Frameworks */, - OBJ_4786 /* Commons.framework in Frameworks */, - OBJ_4787 /* TypeSystem.framework in Frameworks */, - OBJ_4788 /* TypeDefinitions.framework in Frameworks */, - OBJ_4789 /* ObjcParser.framework in Frameworks */, - OBJ_4790 /* TypeLexing.framework in Frameworks */, - OBJ_4791 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_4792 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_4793 /* AntlrCommons.framework in Frameworks */, - OBJ_4794 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_4795 /* Intentions.framework in Frameworks */, - OBJ_4796 /* GrammarModelBase.framework in Frameworks */, - OBJ_4797 /* Antlr4.framework in Frameworks */, - OBJ_4798 /* CAntlrShims.framework in Frameworks */, - OBJ_4799 /* KnownType.framework in Frameworks */, - OBJ_4800 /* SwiftAST.framework in Frameworks */, - OBJ_4801 /* MiniLexer.framework in Frameworks */, - OBJ_4802 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4803 /* SwiftSyntax.framework in Frameworks */, - OBJ_4804 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4805 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4849 /* Frameworks */ = { + OBJ_5387 /* TestCommons.framework in Frameworks */, + OBJ_5388 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_5389 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_5390 /* SwiftFormat.framework in Frameworks */, + OBJ_5391 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_5392 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_5393 /* SwiftFormatRules.framework in Frameworks */, + OBJ_5394 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_5395 /* SwiftFormatCore.framework in Frameworks */, + OBJ_5396 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_5397 /* Console.framework in Frameworks */, + OBJ_5398 /* JsParser.framework in Frameworks */, + OBJ_5399 /* JsGrammarModels.framework in Frameworks */, + OBJ_5400 /* JsParserAntlr.framework in Frameworks */, + OBJ_5401 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_5402 /* SourcePreprocessors.framework in Frameworks */, + OBJ_5403 /* ExpressionPasses.framework in Frameworks */, + OBJ_5404 /* GlobalsProviders.framework in Frameworks */, + OBJ_5405 /* IntentionPasses.framework in Frameworks */, + OBJ_5406 /* Analysis.framework in Frameworks */, + OBJ_5407 /* GraphvizLib.framework in Frameworks */, + OBJ_5408 /* Commons.framework in Frameworks */, + OBJ_5409 /* TypeSystem.framework in Frameworks */, + OBJ_5410 /* TypeDefinitions.framework in Frameworks */, + OBJ_5411 /* ObjcParser.framework in Frameworks */, + OBJ_5412 /* TypeLexing.framework in Frameworks */, + OBJ_5413 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_5414 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_5415 /* AntlrCommons.framework in Frameworks */, + OBJ_5416 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_5417 /* Intentions.framework in Frameworks */, + OBJ_5418 /* GrammarModelBase.framework in Frameworks */, + OBJ_5419 /* Antlr4.framework in Frameworks */, + OBJ_5420 /* CAntlrShims.framework in Frameworks */, + OBJ_5421 /* KnownType.framework in Frameworks */, + OBJ_5422 /* SwiftAST.framework in Frameworks */, + OBJ_5423 /* MiniLexer.framework in Frameworks */, + OBJ_5424 /* WriterTargetOutput.framework in Frameworks */, + OBJ_5425 /* SwiftSyntax.framework in Frameworks */, + OBJ_5426 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_5427 /* Utils.framework in Frameworks */, + ); + }; + OBJ_5474 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( ); }; - OBJ_4855 /* Frameworks */ = { + OBJ_5480 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4856 /* MiniLexer.framework in Frameworks */, + OBJ_5481 /* MiniLexer.framework in Frameworks */, ); }; - OBJ_4900 /* Frameworks */ = { + OBJ_5525 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4901 /* Intentions.framework in Frameworks */, - OBJ_4902 /* KnownType.framework in Frameworks */, - OBJ_4903 /* TypeDefinitions.framework in Frameworks */, - OBJ_4904 /* ObjcParser.framework in Frameworks */, - OBJ_4905 /* TypeLexing.framework in Frameworks */, - OBJ_4906 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_4907 /* GrammarModelBase.framework in Frameworks */, - OBJ_4908 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_4909 /* AntlrCommons.framework in Frameworks */, - OBJ_4910 /* Antlr4.framework in Frameworks */, - OBJ_4911 /* CAntlrShims.framework in Frameworks */, - OBJ_4912 /* SwiftAST.framework in Frameworks */, - OBJ_4913 /* MiniLexer.framework in Frameworks */, - OBJ_4914 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4915 /* SwiftSyntax.framework in Frameworks */, - OBJ_4916 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4917 /* Utils.framework in Frameworks */, - ); - }; - OBJ_4954 /* Frameworks */ = { + OBJ_5526 /* Intentions.framework in Frameworks */, + OBJ_5527 /* KnownType.framework in Frameworks */, + OBJ_5528 /* TypeDefinitions.framework in Frameworks */, + OBJ_5529 /* ObjcParser.framework in Frameworks */, + OBJ_5530 /* TypeLexing.framework in Frameworks */, + OBJ_5531 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_5532 /* GrammarModelBase.framework in Frameworks */, + OBJ_5533 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_5534 /* AntlrCommons.framework in Frameworks */, + OBJ_5535 /* Antlr4.framework in Frameworks */, + OBJ_5536 /* CAntlrShims.framework in Frameworks */, + OBJ_5537 /* SwiftAST.framework in Frameworks */, + OBJ_5538 /* MiniLexer.framework in Frameworks */, + OBJ_5539 /* WriterTargetOutput.framework in Frameworks */, + OBJ_5540 /* SwiftSyntax.framework in Frameworks */, + OBJ_5541 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_5542 /* Utils.framework in Frameworks */, + ); + }; + OBJ_5579 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_4955 /* TestCommons.framework in Frameworks */, - OBJ_4956 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_4957 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_4958 /* SwiftFormat.framework in Frameworks */, - OBJ_4959 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_4960 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_4961 /* SwiftFormatRules.framework in Frameworks */, - OBJ_4962 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_4963 /* SwiftFormatCore.framework in Frameworks */, - OBJ_4964 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_4965 /* Console.framework in Frameworks */, - OBJ_4966 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_4967 /* SourcePreprocessors.framework in Frameworks */, - OBJ_4968 /* ExpressionPasses.framework in Frameworks */, - OBJ_4969 /* GlobalsProviders.framework in Frameworks */, - OBJ_4970 /* IntentionPasses.framework in Frameworks */, - OBJ_4971 /* Analysis.framework in Frameworks */, - OBJ_4972 /* GraphvizLib.framework in Frameworks */, - OBJ_4973 /* Commons.framework in Frameworks */, - OBJ_4974 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_4975 /* TypeSystem.framework in Frameworks */, - OBJ_4976 /* Intentions.framework in Frameworks */, - OBJ_4977 /* KnownType.framework in Frameworks */, - OBJ_4978 /* TypeDefinitions.framework in Frameworks */, - OBJ_4979 /* ObjcParser.framework in Frameworks */, - OBJ_4980 /* TypeLexing.framework in Frameworks */, - OBJ_4981 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_4982 /* GrammarModelBase.framework in Frameworks */, - OBJ_4983 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_4984 /* AntlrCommons.framework in Frameworks */, - OBJ_4985 /* Antlr4.framework in Frameworks */, - OBJ_4986 /* CAntlrShims.framework in Frameworks */, - OBJ_4987 /* SwiftAST.framework in Frameworks */, - OBJ_4988 /* MiniLexer.framework in Frameworks */, - OBJ_4989 /* WriterTargetOutput.framework in Frameworks */, - OBJ_4990 /* SwiftSyntax.framework in Frameworks */, - OBJ_4991 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_4992 /* Utils.framework in Frameworks */, - ); - }; - OBJ_5049 /* Frameworks */ = { + OBJ_5580 /* TestCommons.framework in Frameworks */, + OBJ_5581 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_5582 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_5583 /* SwiftFormat.framework in Frameworks */, + OBJ_5584 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_5585 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_5586 /* SwiftFormatRules.framework in Frameworks */, + OBJ_5587 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_5588 /* SwiftFormatCore.framework in Frameworks */, + OBJ_5589 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_5590 /* Console.framework in Frameworks */, + OBJ_5591 /* JsParser.framework in Frameworks */, + OBJ_5592 /* JsGrammarModels.framework in Frameworks */, + OBJ_5593 /* JsParserAntlr.framework in Frameworks */, + OBJ_5594 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_5595 /* SourcePreprocessors.framework in Frameworks */, + OBJ_5596 /* ExpressionPasses.framework in Frameworks */, + OBJ_5597 /* GlobalsProviders.framework in Frameworks */, + OBJ_5598 /* IntentionPasses.framework in Frameworks */, + OBJ_5599 /* Analysis.framework in Frameworks */, + OBJ_5600 /* GraphvizLib.framework in Frameworks */, + OBJ_5601 /* Commons.framework in Frameworks */, + OBJ_5602 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_5603 /* TypeSystem.framework in Frameworks */, + OBJ_5604 /* Intentions.framework in Frameworks */, + OBJ_5605 /* KnownType.framework in Frameworks */, + OBJ_5606 /* TypeDefinitions.framework in Frameworks */, + OBJ_5607 /* ObjcParser.framework in Frameworks */, + OBJ_5608 /* TypeLexing.framework in Frameworks */, + OBJ_5609 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_5610 /* GrammarModelBase.framework in Frameworks */, + OBJ_5611 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_5612 /* AntlrCommons.framework in Frameworks */, + OBJ_5613 /* Antlr4.framework in Frameworks */, + OBJ_5614 /* CAntlrShims.framework in Frameworks */, + OBJ_5615 /* SwiftAST.framework in Frameworks */, + OBJ_5616 /* MiniLexer.framework in Frameworks */, + OBJ_5617 /* WriterTargetOutput.framework in Frameworks */, + OBJ_5618 /* SwiftSyntax.framework in Frameworks */, + OBJ_5619 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_5620 /* Utils.framework in Frameworks */, + ); + }; + OBJ_5680 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( ); }; - OBJ_5061 /* Frameworks */ = { + OBJ_5692 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_5062 /* Utils.framework in Frameworks */, + OBJ_5693 /* Utils.framework in Frameworks */, ); }; - OBJ_5071 /* Frameworks */ = { + OBJ_5702 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_5072 /* SwiftSyntax.framework in Frameworks */, - OBJ_5073 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_5074 /* Utils.framework in Frameworks */, + OBJ_5703 /* SwiftSyntax.framework in Frameworks */, + OBJ_5704 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_5705 /* Utils.framework in Frameworks */, ); }; - OBJ_5084 /* Frameworks */ = { + OBJ_5715 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( - OBJ_5085 /* TestCommons.framework in Frameworks */, - OBJ_5086 /* ObjectiveCFrontend.framework in Frameworks */, - OBJ_5087 /* SwiftRewriterLib.framework in Frameworks */, - OBJ_5088 /* SwiftFormat.framework in Frameworks */, - OBJ_5089 /* SwiftSyntaxParser.framework in Frameworks */, - OBJ_5090 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, - OBJ_5091 /* SwiftFormatRules.framework in Frameworks */, - OBJ_5092 /* SwiftFormatPrettyPrint.framework in Frameworks */, - OBJ_5093 /* SwiftFormatCore.framework in Frameworks */, - OBJ_5094 /* SwiftFormatConfiguration.framework in Frameworks */, - OBJ_5095 /* Console.framework in Frameworks */, - OBJ_5096 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, - OBJ_5097 /* SourcePreprocessors.framework in Frameworks */, - OBJ_5098 /* ExpressionPasses.framework in Frameworks */, - OBJ_5099 /* GlobalsProviders.framework in Frameworks */, - OBJ_5100 /* IntentionPasses.framework in Frameworks */, - OBJ_5101 /* Analysis.framework in Frameworks */, - OBJ_5102 /* GraphvizLib.framework in Frameworks */, - OBJ_5103 /* Commons.framework in Frameworks */, - OBJ_5104 /* TypeSystem.framework in Frameworks */, - OBJ_5105 /* TypeDefinitions.framework in Frameworks */, - OBJ_5106 /* ObjcParser.framework in Frameworks */, - OBJ_5107 /* TypeLexing.framework in Frameworks */, - OBJ_5108 /* ObjcGrammarModels.framework in Frameworks */, - OBJ_5109 /* ObjcParserAntlr.framework in Frameworks */, - OBJ_5110 /* AntlrCommons.framework in Frameworks */, - OBJ_5111 /* SwiftSyntaxSupport.framework in Frameworks */, - OBJ_5112 /* Intentions.framework in Frameworks */, - OBJ_5113 /* GrammarModelBase.framework in Frameworks */, - OBJ_5114 /* Antlr4.framework in Frameworks */, - OBJ_5115 /* CAntlrShims.framework in Frameworks */, - OBJ_5116 /* KnownType.framework in Frameworks */, - OBJ_5117 /* SwiftAST.framework in Frameworks */, - OBJ_5118 /* MiniLexer.framework in Frameworks */, - OBJ_5119 /* WriterTargetOutput.framework in Frameworks */, - OBJ_5120 /* SwiftSyntax.framework in Frameworks */, - OBJ_5121 /* _CSwiftSyntax.framework in Frameworks */, - OBJ_5122 /* Utils.framework in Frameworks */, - ); - }; - OBJ_5166 /* Frameworks */ = { + OBJ_5716 /* TestCommons.framework in Frameworks */, + OBJ_5717 /* ObjectiveCFrontend.framework in Frameworks */, + OBJ_5718 /* SwiftRewriterLib.framework in Frameworks */, + OBJ_5719 /* SwiftFormat.framework in Frameworks */, + OBJ_5720 /* SwiftSyntaxParser.framework in Frameworks */, + OBJ_5721 /* SwiftFormatWhitespaceLinter.framework in Frameworks */, + OBJ_5722 /* SwiftFormatRules.framework in Frameworks */, + OBJ_5723 /* SwiftFormatPrettyPrint.framework in Frameworks */, + OBJ_5724 /* SwiftFormatCore.framework in Frameworks */, + OBJ_5725 /* SwiftFormatConfiguration.framework in Frameworks */, + OBJ_5726 /* Console.framework in Frameworks */, + OBJ_5727 /* JsParser.framework in Frameworks */, + OBJ_5728 /* JsGrammarModels.framework in Frameworks */, + OBJ_5729 /* JsParserAntlr.framework in Frameworks */, + OBJ_5730 /* SwiftSyntaxRewriterPasses.framework in Frameworks */, + OBJ_5731 /* SourcePreprocessors.framework in Frameworks */, + OBJ_5732 /* ExpressionPasses.framework in Frameworks */, + OBJ_5733 /* GlobalsProviders.framework in Frameworks */, + OBJ_5734 /* IntentionPasses.framework in Frameworks */, + OBJ_5735 /* Analysis.framework in Frameworks */, + OBJ_5736 /* GraphvizLib.framework in Frameworks */, + OBJ_5737 /* Commons.framework in Frameworks */, + OBJ_5738 /* TypeSystem.framework in Frameworks */, + OBJ_5739 /* TypeDefinitions.framework in Frameworks */, + OBJ_5740 /* ObjcParser.framework in Frameworks */, + OBJ_5741 /* TypeLexing.framework in Frameworks */, + OBJ_5742 /* ObjcGrammarModels.framework in Frameworks */, + OBJ_5743 /* ObjcParserAntlr.framework in Frameworks */, + OBJ_5744 /* AntlrCommons.framework in Frameworks */, + OBJ_5745 /* SwiftSyntaxSupport.framework in Frameworks */, + OBJ_5746 /* Intentions.framework in Frameworks */, + OBJ_5747 /* GrammarModelBase.framework in Frameworks */, + OBJ_5748 /* Antlr4.framework in Frameworks */, + OBJ_5749 /* CAntlrShims.framework in Frameworks */, + OBJ_5750 /* KnownType.framework in Frameworks */, + OBJ_5751 /* SwiftAST.framework in Frameworks */, + OBJ_5752 /* MiniLexer.framework in Frameworks */, + OBJ_5753 /* WriterTargetOutput.framework in Frameworks */, + OBJ_5754 /* SwiftSyntax.framework in Frameworks */, + OBJ_5755 /* _CSwiftSyntax.framework in Frameworks */, + OBJ_5756 /* Utils.framework in Frameworks */, + ); + }; + OBJ_5803 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; files = ( ); @@ -4965,21 +5584,172 @@ path = Sources/Core/IntentionPasses; sourceTree = SOURCE_ROOT; }; - OBJ_1008 /* syntax_nodes */ = { + OBJ_1000 /* SwiftFormatPrettyPrint */ = { + isa = PBXGroup; + children = ( + OBJ_1001 /* Comment.swift */, + OBJ_1002 /* Indent+Length.swift */, + OBJ_1003 /* OperatorContext.swift */, + OBJ_1004 /* PrettyPrint.swift */, + OBJ_1005 /* PrettyPrintFindingCategory.swift */, + OBJ_1006 /* SequenceExprFolding.swift */, + OBJ_1007 /* Token.swift */, + OBJ_1008 /* TokenStreamCreator.swift */, + OBJ_1009 /* Verbatim.swift */, + ); + name = SwiftFormatPrettyPrint; + path = ".build/checkouts/swift-format/Sources/SwiftFormatPrettyPrint"; + sourceTree = SOURCE_ROOT; + }; + OBJ_1010 /* SwiftFormatRules */ = { + isa = PBXGroup; + children = ( + OBJ_1011 /* AddModifierRewriter.swift */, + OBJ_1012 /* AllPublicDeclarationsHaveDocumentation.swift */, + OBJ_1013 /* AlwaysUseLowerCamelCase.swift */, + OBJ_1014 /* AmbiguousTrailingClosureOverload.swift */, + OBJ_1015 /* BeginDocumentationCommentWithOneLineSummary.swift */, + OBJ_1016 /* DeclSyntaxProtocol+Comments.swift */, + OBJ_1017 /* DoNotUseSemicolons.swift */, + OBJ_1018 /* DontRepeatTypeInStaticProperties.swift */, + OBJ_1019 /* FileScopedDeclarationPrivacy.swift */, + OBJ_1020 /* FullyIndirectEnum.swift */, + OBJ_1021 /* FunctionDeclSyntax+Convenience.swift */, + OBJ_1022 /* GroupNumericLiterals.swift */, + OBJ_1023 /* IdentifiersMustBeASCII.swift */, + OBJ_1024 /* ImportsXCTestVisitor.swift */, + OBJ_1025 /* ModifierListSyntax+Convenience.swift */, + OBJ_1026 /* NeverForceUnwrap.swift */, + OBJ_1027 /* NeverUseForceTry.swift */, + OBJ_1028 /* NeverUseImplicitlyUnwrappedOptionals.swift */, + OBJ_1029 /* NoAccessLevelOnExtensionDeclaration.swift */, + OBJ_1030 /* NoBlockComments.swift */, + OBJ_1031 /* NoCasesWithOnlyFallthrough.swift */, + OBJ_1032 /* NoEmptyTrailingClosureParentheses.swift */, + OBJ_1033 /* NoLabelsInCasePatterns.swift */, + OBJ_1034 /* NoLeadingUnderscores.swift */, + OBJ_1035 /* NoParensAroundConditions.swift */, + OBJ_1036 /* NoPlaygroundLiterals.swift */, + OBJ_1037 /* NoVoidReturnOnFunctionSignature.swift */, + OBJ_1038 /* OneCasePerLine.swift */, + OBJ_1039 /* OneVariableDeclarationPerLine.swift */, + OBJ_1040 /* OnlyOneTrailingClosureArgument.swift */, + OBJ_1041 /* OrderedImports.swift */, + OBJ_1042 /* ReplaceTrivia.swift */, + OBJ_1043 /* ReturnVoidInsteadOfEmptyTuple.swift */, + OBJ_1044 /* RuleNameCache+Generated.swift */, + OBJ_1045 /* SemicolonSyntaxProtocol.swift */, + OBJ_1046 /* TokenSyntax+Convenience.swift */, + OBJ_1047 /* UseEarlyExits.swift */, + OBJ_1048 /* UseLetInEveryBoundCaseVariable.swift */, + OBJ_1049 /* UseShorthandTypeNames.swift */, + OBJ_1050 /* UseSingleLinePropertyGetter.swift */, + OBJ_1051 /* UseSynthesizedInitializer.swift */, + OBJ_1052 /* UseTripleSlashForDocumentationComments.swift */, + OBJ_1053 /* UseWhereClausesInForLoops.swift */, + OBJ_1054 /* ValidateDocumentationComments.swift */, + OBJ_1055 /* VarDeclSyntax+Convenience.swift */, + ); + name = SwiftFormatRules; + path = ".build/checkouts/swift-format/Sources/SwiftFormatRules"; + sourceTree = SOURCE_ROOT; + }; + OBJ_1056 /* SwiftFormatWhitespaceLinter */ = { + isa = PBXGroup; + children = ( + OBJ_1057 /* LazySplitSequence.swift */, + OBJ_1058 /* RememberingIterator.swift */, + OBJ_1059 /* WhitespaceFindingCategory.swift */, + OBJ_1060 /* WhitespaceLinter.swift */, + ); + name = SwiftFormatWhitespaceLinter; + path = ".build/checkouts/swift-format/Sources/SwiftFormatWhitespaceLinter"; + sourceTree = SOURCE_ROOT; + }; + OBJ_1061 /* swift-format */ = { + isa = PBXGroup; + children = ( + ); + name = "swift-format"; + path = ".build/checkouts/swift-format/Sources/swift-format"; + sourceTree = SOURCE_ROOT; + }; + OBJ_1063 /* SwiftSyntax 0.50700.1 */ = { + isa = PBXGroup; + children = ( + OBJ_1064 /* SwiftSyntax */, + OBJ_1103 /* SwiftSyntaxBuilder */, + OBJ_1104 /* SwiftSyntaxParser */, + OBJ_1110 /* _CSwiftSyntax */, + OBJ_1117 /* Package.swift */, + ); + name = "SwiftSyntax 0.50700.1"; + path = ""; + sourceTree = SOURCE_ROOT; + }; + OBJ_1064 /* SwiftSyntax */ = { + isa = PBXGroup; + children = ( + OBJ_1065 /* AbsolutePosition.swift */, + OBJ_1066 /* AtomicCounter.swift */, + OBJ_1067 /* CNodes.swift */, + OBJ_1068 /* IncrementalParseTransition.swift */, + OBJ_1069 /* RawSyntax.swift */, + OBJ_1070 /* SourceLength.swift */, + OBJ_1071 /* SourceLocation.swift */, + OBJ_1072 /* SourcePresence.swift */, + OBJ_1073 /* Syntax.swift */, + OBJ_1074 /* SyntaxChildren.swift */, + OBJ_1075 /* SyntaxClassifier.swift */, + OBJ_1076 /* SyntaxData.swift */, + OBJ_1077 /* SyntaxOtherNodes.swift */, + OBJ_1078 /* SyntaxVerifier.swift */, + OBJ_1079 /* Utils.swift */, + OBJ_1080 /* _SyntaxParserInterop.swift */, + OBJ_1081 /* gyb_generated */, + ); + name = SwiftSyntax; + path = ".build/checkouts/swift-syntax/Sources/SwiftSyntax"; + sourceTree = SOURCE_ROOT; + }; + OBJ_1081 /* gyb_generated */ = { + isa = PBXGroup; + children = ( + OBJ_1082 /* Misc.swift */, + OBJ_1083 /* SyntaxAnyVisitor.swift */, + OBJ_1084 /* SyntaxBaseNodes.swift */, + OBJ_1085 /* SyntaxBuilders.swift */, + OBJ_1086 /* SyntaxClassification.swift */, + OBJ_1087 /* SyntaxCollections.swift */, + OBJ_1088 /* SyntaxEnum.swift */, + OBJ_1089 /* SyntaxFactory.swift */, + OBJ_1090 /* SyntaxKind.swift */, + OBJ_1091 /* SyntaxRewriter.swift */, + OBJ_1092 /* SyntaxTraits.swift */, + OBJ_1093 /* SyntaxVisitor.swift */, + OBJ_1094 /* TokenKind.swift */, + OBJ_1095 /* Trivia.swift */, + OBJ_1096 /* syntax_nodes */, + ); + name = gyb_generated; + path = gyb_generated; + sourceTree = ""; + }; + OBJ_1096 /* syntax_nodes */ = { isa = PBXGroup; children = ( - OBJ_1009 /* SyntaxDeclNodes.swift */, - OBJ_1010 /* SyntaxExprNodes.swift */, - OBJ_1011 /* SyntaxNodes.swift */, - OBJ_1012 /* SyntaxPatternNodes.swift */, - OBJ_1013 /* SyntaxStmtNodes.swift */, - OBJ_1014 /* SyntaxTypeNodes.swift */, + OBJ_1097 /* SyntaxDeclNodes.swift */, + OBJ_1098 /* SyntaxExprNodes.swift */, + OBJ_1099 /* SyntaxNodes.swift */, + OBJ_1100 /* SyntaxPatternNodes.swift */, + OBJ_1101 /* SyntaxStmtNodes.swift */, + OBJ_1102 /* SyntaxTypeNodes.swift */, ); name = syntax_nodes; path = syntax_nodes; sourceTree = ""; }; - OBJ_1015 /* SwiftSyntaxBuilder */ = { + OBJ_1103 /* SwiftSyntaxBuilder */ = { isa = PBXGroup; children = ( ); @@ -4987,520 +5757,546 @@ path = ".build/checkouts/swift-syntax/Sources/SwiftSyntaxBuilder"; sourceTree = SOURCE_ROOT; }; - OBJ_1016 /* SwiftSyntaxParser */ = { + OBJ_1104 /* SwiftSyntaxParser */ = { isa = PBXGroup; children = ( - OBJ_1017 /* CNodes.swift */, - OBJ_1018 /* Diagnostic.swift */, - OBJ_1019 /* SyntaxParser.swift */, - OBJ_1020 /* gyb_generated */, + OBJ_1105 /* CNodes.swift */, + OBJ_1106 /* Diagnostic.swift */, + OBJ_1107 /* SyntaxParser.swift */, + OBJ_1108 /* gyb_generated */, ); name = SwiftSyntaxParser; path = ".build/checkouts/swift-syntax/Sources/SwiftSyntaxParser"; sourceTree = SOURCE_ROOT; }; - OBJ_1020 /* gyb_generated */ = { + OBJ_1108 /* gyb_generated */ = { isa = PBXGroup; children = ( - OBJ_1021 /* NodeDeclarationHash.swift */, + OBJ_1109 /* NodeDeclarationHash.swift */, ); name = gyb_generated; path = gyb_generated; sourceTree = ""; }; - OBJ_1022 /* _CSwiftSyntax */ = { + OBJ_1110 /* _CSwiftSyntax */ = { isa = PBXGroup; children = ( - OBJ_1023 /* src */, - OBJ_1025 /* include */, + OBJ_1111 /* src */, + OBJ_1113 /* include */, ); name = _CSwiftSyntax; path = ".build/checkouts/swift-syntax/Sources/_CSwiftSyntax"; sourceTree = SOURCE_ROOT; }; - OBJ_1023 /* src */ = { + OBJ_1111 /* src */ = { isa = PBXGroup; children = ( - OBJ_1024 /* atomic-counter.c */, + OBJ_1112 /* atomic-counter.c */, ); name = src; path = src; sourceTree = ""; }; - OBJ_1025 /* include */ = { + OBJ_1113 /* include */ = { isa = PBXGroup; children = ( - OBJ_1026 /* c-syntax-nodes.h */, - OBJ_1027 /* atomic-counter.h */, - OBJ_1028 /* module.modulemap */, + OBJ_1114 /* c-syntax-nodes.h */, + OBJ_1115 /* atomic-counter.h */, + OBJ_1116 /* module.modulemap */, ); name = include; path = include; sourceTree = ""; }; - OBJ_1030 /* Console 0.8.2 */ = { + OBJ_1118 /* Console 0.8.2 */ = { isa = PBXGroup; children = ( - OBJ_1031 /* Console */, - OBJ_1039 /* Package.swift */, + OBJ_1119 /* Console */, + OBJ_1127 /* Package.swift */, ); name = "Console 0.8.2"; path = ""; sourceTree = SOURCE_ROOT; }; - OBJ_1031 /* Console */ = { + OBJ_1119 /* Console */ = { isa = PBXGroup; children = ( - OBJ_1032 /* Console+Command.swift */, - OBJ_1033 /* Console+Paging.swift */, - OBJ_1034 /* Console.swift */, - OBJ_1035 /* ConsoleColor+Terminal.swift */, - OBJ_1036 /* ConsoleDataProvider.swift */, - OBJ_1037 /* ConsoleMenuController.swift */, - OBJ_1038 /* LinuxSupport.swift */, + OBJ_1120 /* Console+Command.swift */, + OBJ_1121 /* Console+Paging.swift */, + OBJ_1122 /* Console.swift */, + OBJ_1123 /* ConsoleColor+Terminal.swift */, + OBJ_1124 /* ConsoleDataProvider.swift */, + OBJ_1125 /* ConsoleMenuController.swift */, + OBJ_1126 /* LinuxSupport.swift */, ); name = Console; path = .build/checkouts/console/Sources/Console; sourceTree = SOURCE_ROOT; }; - OBJ_1040 /* Antlr4 4.1.2 */ = { + OBJ_1128 /* Antlr4 4.1.2 */ = { isa = PBXGroup; children = ( - OBJ_1041 /* Antlr4 */, - OBJ_1205 /* CAntlrShims */, - OBJ_1210 /* Package.swift */, + OBJ_1129 /* Antlr4 */, + OBJ_1293 /* CAntlrShims */, + OBJ_1298 /* Package.swift */, ); name = "Antlr4 4.1.2"; path = ""; sourceTree = SOURCE_ROOT; }; - OBJ_1041 /* Antlr4 */ = { + OBJ_1129 /* Antlr4 */ = { isa = PBXGroup; children = ( - OBJ_1042 /* ANTLRErrorListener.swift */, - OBJ_1043 /* ANTLRErrorStrategy.swift */, - OBJ_1044 /* ANTLRFileStream.swift */, - OBJ_1045 /* ANTLRInputStream.swift */, - OBJ_1046 /* BailErrorStrategy.swift */, - OBJ_1047 /* BaseErrorListener.swift */, - OBJ_1048 /* BufferedTokenStream.swift */, - OBJ_1049 /* CharStream.swift */, - OBJ_1050 /* CommonToken.swift */, - OBJ_1051 /* CommonTokenFactory.swift */, - OBJ_1052 /* CommonTokenStream.swift */, - OBJ_1053 /* ConsoleErrorListener.swift */, - OBJ_1054 /* DefaultErrorStrategy.swift */, - OBJ_1055 /* DiagnosticErrorListener.swift */, - OBJ_1056 /* FailedPredicateException.swift */, - OBJ_1057 /* InputMismatchException.swift */, - OBJ_1058 /* IntStream.swift */, - OBJ_1059 /* InterpreterRuleContext.swift */, - OBJ_1060 /* Lexer.swift */, - OBJ_1061 /* LexerInterpreter.swift */, - OBJ_1062 /* LexerNoViableAltException.swift */, - OBJ_1063 /* ListTokenSource.swift */, - OBJ_1064 /* NoViableAltException.swift */, - OBJ_1065 /* Parser.swift */, - OBJ_1066 /* ParserInterpreter.swift */, - OBJ_1067 /* ParserRuleContext.swift */, - OBJ_1068 /* ProxyErrorListener.swift */, - OBJ_1069 /* RecognitionException.swift */, - OBJ_1070 /* Recognizer.swift */, - OBJ_1071 /* RuleContext.swift */, - OBJ_1072 /* RuntimeMetaData.swift */, - OBJ_1073 /* Token.swift */, - OBJ_1074 /* TokenFactory.swift */, - OBJ_1075 /* TokenSource.swift */, - OBJ_1076 /* TokenStream.swift */, - OBJ_1077 /* TokenStreamRewriter.swift */, - OBJ_1078 /* UnbufferedCharStream.swift */, - OBJ_1079 /* UnbufferedTokenStream.swift */, - OBJ_1080 /* VocabularySingle.swift */, - OBJ_1081 /* WritableToken.swift */, - OBJ_1082 /* atn */, - OBJ_1152 /* dfa */, - OBJ_1157 /* misc */, - OBJ_1182 /* tree */, + OBJ_1130 /* ANTLRErrorListener.swift */, + OBJ_1131 /* ANTLRErrorStrategy.swift */, + OBJ_1132 /* ANTLRFileStream.swift */, + OBJ_1133 /* ANTLRInputStream.swift */, + OBJ_1134 /* BailErrorStrategy.swift */, + OBJ_1135 /* BaseErrorListener.swift */, + OBJ_1136 /* BufferedTokenStream.swift */, + OBJ_1137 /* CharStream.swift */, + OBJ_1138 /* CommonToken.swift */, + OBJ_1139 /* CommonTokenFactory.swift */, + OBJ_1140 /* CommonTokenStream.swift */, + OBJ_1141 /* ConsoleErrorListener.swift */, + OBJ_1142 /* DefaultErrorStrategy.swift */, + OBJ_1143 /* DiagnosticErrorListener.swift */, + OBJ_1144 /* FailedPredicateException.swift */, + OBJ_1145 /* InputMismatchException.swift */, + OBJ_1146 /* IntStream.swift */, + OBJ_1147 /* InterpreterRuleContext.swift */, + OBJ_1148 /* Lexer.swift */, + OBJ_1149 /* LexerInterpreter.swift */, + OBJ_1150 /* LexerNoViableAltException.swift */, + OBJ_1151 /* ListTokenSource.swift */, + OBJ_1152 /* NoViableAltException.swift */, + OBJ_1153 /* Parser.swift */, + OBJ_1154 /* ParserInterpreter.swift */, + OBJ_1155 /* ParserRuleContext.swift */, + OBJ_1156 /* ProxyErrorListener.swift */, + OBJ_1157 /* RecognitionException.swift */, + OBJ_1158 /* Recognizer.swift */, + OBJ_1159 /* RuleContext.swift */, + OBJ_1160 /* RuntimeMetaData.swift */, + OBJ_1161 /* Token.swift */, + OBJ_1162 /* TokenFactory.swift */, + OBJ_1163 /* TokenSource.swift */, + OBJ_1164 /* TokenStream.swift */, + OBJ_1165 /* TokenStreamRewriter.swift */, + OBJ_1166 /* UnbufferedCharStream.swift */, + OBJ_1167 /* UnbufferedTokenStream.swift */, + OBJ_1168 /* VocabularySingle.swift */, + OBJ_1169 /* WritableToken.swift */, + OBJ_1170 /* atn */, + OBJ_1240 /* dfa */, + OBJ_1245 /* misc */, + OBJ_1270 /* tree */, ); name = Antlr4; path = ".build/checkouts/antlr4-swift/Sources/Antlr4"; sourceTree = SOURCE_ROOT; }; - OBJ_1082 /* atn */ = { + OBJ_114 /* Shared */ = { isa = PBXGroup; children = ( - OBJ_1083 /* ATN.swift */, - OBJ_1084 /* ATNConfig.swift */, - OBJ_1085 /* ATNConfigSet.swift */, - OBJ_1086 /* ATNDeserializationOptions.swift */, - OBJ_1087 /* ATNDeserializer.swift */, - OBJ_1088 /* ATNSimulator.swift */, - OBJ_1089 /* ATNState.swift */, - OBJ_1090 /* ATNType.swift */, - OBJ_1091 /* AbstractPredicateTransition.swift */, - OBJ_1092 /* ActionTransition.swift */, - OBJ_1093 /* AmbiguityInfo.swift */, - OBJ_1094 /* ArrayPredictionContext.swift */, - OBJ_1095 /* AtomTransition.swift */, - OBJ_1096 /* BasicBlockStartState.swift */, - OBJ_1097 /* BasicState.swift */, - OBJ_1098 /* BlockEndState.swift */, - OBJ_1099 /* BlockStartState.swift */, - OBJ_1100 /* ContextSensitivityInfo.swift */, - OBJ_1101 /* DecisionEventInfo.swift */, - OBJ_1102 /* DecisionInfo.swift */, - OBJ_1103 /* DecisionState.swift */, - OBJ_1104 /* DefaultATNConfig.swift */, - OBJ_1105 /* EmptyPredictionContext.swift */, - OBJ_1106 /* EpsilonTransition.swift */, - OBJ_1107 /* ErrorInfo.swift */, - OBJ_1108 /* LL1Analyzer.swift */, - OBJ_1109 /* LexerATNConfig.swift */, - OBJ_1110 /* LexerATNSimulator.swift */, - OBJ_1111 /* LexerAction.swift */, - OBJ_1112 /* LexerActionExecutor.swift */, - OBJ_1113 /* LexerActionType.swift */, - OBJ_1114 /* LexerChannelAction.swift */, - OBJ_1115 /* LexerCustomAction.swift */, - OBJ_1116 /* LexerIndexedCustomAction.swift */, - OBJ_1117 /* LexerModeAction.swift */, - OBJ_1118 /* LexerMoreAction.swift */, - OBJ_1119 /* LexerPopModeAction.swift */, - OBJ_1120 /* LexerPushModeAction.swift */, - OBJ_1121 /* LexerSkipAction.swift */, - OBJ_1122 /* LexerTypeAction.swift */, - OBJ_1123 /* LookaheadEventInfo.swift */, - OBJ_1124 /* LookupATNConfig.swift */, - OBJ_1125 /* LookupDictionary.swift */, - OBJ_1126 /* LoopEndState.swift */, - OBJ_1127 /* NotSetTransition.swift */, - OBJ_1128 /* ParseInfo.swift */, - OBJ_1129 /* ParserATNSimulator.swift */, - OBJ_1130 /* PlusBlockStartState.swift */, - OBJ_1131 /* PlusLoopbackState.swift */, - OBJ_1132 /* PrecedencePredicateTransition.swift */, - OBJ_1133 /* PredicateEvalInfo.swift */, - OBJ_1134 /* PredicateTransition.swift */, - OBJ_1135 /* PredictionContext.swift */, - OBJ_1136 /* PredictionContextCache.swift */, - OBJ_1137 /* PredictionMode.swift */, - OBJ_1138 /* ProfilingATNSimulator.swift */, - OBJ_1139 /* RangeTransition.swift */, - OBJ_1140 /* RuleStartState.swift */, - OBJ_1141 /* RuleStopState.swift */, - OBJ_1142 /* RuleTransition.swift */, - OBJ_1143 /* SemanticContext.swift */, - OBJ_1144 /* SetTransition.swift */, - OBJ_1145 /* SingletonPredictionContext.swift */, - OBJ_1146 /* StarBlockStartState.swift */, - OBJ_1147 /* StarLoopEntryState.swift */, - OBJ_1148 /* StarLoopbackState.swift */, - OBJ_1149 /* TokensStartState.swift */, - OBJ_1150 /* Transition.swift */, - OBJ_1151 /* WildcardTransition.swift */, + OBJ_115 /* ReturnStatementVisitor.swift */, ); - name = atn; - path = atn; + name = Shared; + path = Shared; sourceTree = ""; }; - OBJ_114 /* Shared */ = { + OBJ_116 /* Sources */ = { isa = PBXGroup; children = ( - OBJ_115 /* ReturnStatementVisitor.swift */, + OBJ_117 /* ArrayIntentionPassSource.swift */, ); - name = Shared; - path = Shared; + name = Sources; + path = Sources; sourceTree = ""; }; - OBJ_1152 /* dfa */ = { + OBJ_1170 /* atn */ = { isa = PBXGroup; children = ( - OBJ_1153 /* DFA.swift */, - OBJ_1154 /* DFASerializer.swift */, - OBJ_1155 /* DFAState.swift */, - OBJ_1156 /* LexerDFASerializer.swift */, + OBJ_1171 /* ATN.swift */, + OBJ_1172 /* ATNConfig.swift */, + OBJ_1173 /* ATNConfigSet.swift */, + OBJ_1174 /* ATNDeserializationOptions.swift */, + OBJ_1175 /* ATNDeserializer.swift */, + OBJ_1176 /* ATNSimulator.swift */, + OBJ_1177 /* ATNState.swift */, + OBJ_1178 /* ATNType.swift */, + OBJ_1179 /* AbstractPredicateTransition.swift */, + OBJ_1180 /* ActionTransition.swift */, + OBJ_1181 /* AmbiguityInfo.swift */, + OBJ_1182 /* ArrayPredictionContext.swift */, + OBJ_1183 /* AtomTransition.swift */, + OBJ_1184 /* BasicBlockStartState.swift */, + OBJ_1185 /* BasicState.swift */, + OBJ_1186 /* BlockEndState.swift */, + OBJ_1187 /* BlockStartState.swift */, + OBJ_1188 /* ContextSensitivityInfo.swift */, + OBJ_1189 /* DecisionEventInfo.swift */, + OBJ_1190 /* DecisionInfo.swift */, + OBJ_1191 /* DecisionState.swift */, + OBJ_1192 /* DefaultATNConfig.swift */, + OBJ_1193 /* EmptyPredictionContext.swift */, + OBJ_1194 /* EpsilonTransition.swift */, + OBJ_1195 /* ErrorInfo.swift */, + OBJ_1196 /* LL1Analyzer.swift */, + OBJ_1197 /* LexerATNConfig.swift */, + OBJ_1198 /* LexerATNSimulator.swift */, + OBJ_1199 /* LexerAction.swift */, + OBJ_1200 /* LexerActionExecutor.swift */, + OBJ_1201 /* LexerActionType.swift */, + OBJ_1202 /* LexerChannelAction.swift */, + OBJ_1203 /* LexerCustomAction.swift */, + OBJ_1204 /* LexerIndexedCustomAction.swift */, + OBJ_1205 /* LexerModeAction.swift */, + OBJ_1206 /* LexerMoreAction.swift */, + OBJ_1207 /* LexerPopModeAction.swift */, + OBJ_1208 /* LexerPushModeAction.swift */, + OBJ_1209 /* LexerSkipAction.swift */, + OBJ_1210 /* LexerTypeAction.swift */, + OBJ_1211 /* LookaheadEventInfo.swift */, + OBJ_1212 /* LookupATNConfig.swift */, + OBJ_1213 /* LookupDictionary.swift */, + OBJ_1214 /* LoopEndState.swift */, + OBJ_1215 /* NotSetTransition.swift */, + OBJ_1216 /* ParseInfo.swift */, + OBJ_1217 /* ParserATNSimulator.swift */, + OBJ_1218 /* PlusBlockStartState.swift */, + OBJ_1219 /* PlusLoopbackState.swift */, + OBJ_1220 /* PrecedencePredicateTransition.swift */, + OBJ_1221 /* PredicateEvalInfo.swift */, + OBJ_1222 /* PredicateTransition.swift */, + OBJ_1223 /* PredictionContext.swift */, + OBJ_1224 /* PredictionContextCache.swift */, + OBJ_1225 /* PredictionMode.swift */, + OBJ_1226 /* ProfilingATNSimulator.swift */, + OBJ_1227 /* RangeTransition.swift */, + OBJ_1228 /* RuleStartState.swift */, + OBJ_1229 /* RuleStopState.swift */, + OBJ_1230 /* RuleTransition.swift */, + OBJ_1231 /* SemanticContext.swift */, + OBJ_1232 /* SetTransition.swift */, + OBJ_1233 /* SingletonPredictionContext.swift */, + OBJ_1234 /* StarBlockStartState.swift */, + OBJ_1235 /* StarLoopEntryState.swift */, + OBJ_1236 /* StarLoopbackState.swift */, + OBJ_1237 /* TokensStartState.swift */, + OBJ_1238 /* Transition.swift */, + OBJ_1239 /* WildcardTransition.swift */, ); - name = dfa; - path = dfa; + name = atn; + path = atn; sourceTree = ""; }; - OBJ_1157 /* misc */ = { + OBJ_124 /* Intentions */ = { + isa = PBXGroup; + children = ( + OBJ_125 /* BaseClassIntention.swift */, + OBJ_126 /* FileLevelIntention.swift */, + OBJ_127 /* FromSourceIntention.swift */, + OBJ_128 /* FunctionBodyCarryingIntention.swift */, + OBJ_129 /* FunctionBodyQueue.swift */, + OBJ_130 /* FunctionIntention.swift */, + OBJ_131 /* Historic */, + OBJ_137 /* InstanceVariableContainerIntention.swift */, + OBJ_138 /* Intention.swift */, + OBJ_139 /* IntentionCollection.swift */, + OBJ_140 /* Intentions */, + OBJ_164 /* KnownType+IntentionBuild.swift */, + OBJ_165 /* MemberGenerationIntention.swift */, + OBJ_166 /* Metadata */, + OBJ_170 /* NonNullScopedIntention.swift */, + OBJ_171 /* OverridableMemberGenerationIntention.swift */, + OBJ_172 /* Serialization */, + OBJ_178 /* StatementContainer.swift */, + OBJ_179 /* TypeFormatter+Intentions.swift */, + OBJ_180 /* TypeGenerationIntention.swift */, + OBJ_181 /* ValueStorageIntention.swift */, + OBJ_182 /* Visitor */, + ); + name = Intentions; + path = Sources/Core/Intentions; + sourceTree = SOURCE_ROOT; + }; + OBJ_1240 /* dfa */ = { isa = PBXGroup; children = ( - OBJ_1158 /* BitSet.swift */, - OBJ_1159 /* DoubleKeyMap.swift */, - OBJ_1160 /* IntSet.swift */, - OBJ_1161 /* InterpreterDataReader.swift */, - OBJ_1162 /* Interval.swift */, - OBJ_1163 /* IntervalSet.swift */, - OBJ_1164 /* MultiMap.swift */, - OBJ_1165 /* MurmurHash.swift */, - OBJ_1166 /* Utils.swift */, - OBJ_1167 /* exception */, - OBJ_1170 /* extension */, - OBJ_1177 /* utils */, + OBJ_1241 /* DFA.swift */, + OBJ_1242 /* DFASerializer.swift */, + OBJ_1243 /* DFAState.swift */, + OBJ_1244 /* LexerDFASerializer.swift */, ); - name = misc; - path = misc; + name = dfa; + path = dfa; sourceTree = ""; }; - OBJ_116 /* Sources */ = { + OBJ_1245 /* misc */ = { isa = PBXGroup; children = ( - OBJ_117 /* ArrayIntentionPassSource.swift */, + OBJ_1246 /* BitSet.swift */, + OBJ_1247 /* DoubleKeyMap.swift */, + OBJ_1248 /* IntSet.swift */, + OBJ_1249 /* InterpreterDataReader.swift */, + OBJ_1250 /* Interval.swift */, + OBJ_1251 /* IntervalSet.swift */, + OBJ_1252 /* MultiMap.swift */, + OBJ_1253 /* MurmurHash.swift */, + OBJ_1254 /* Utils.swift */, + OBJ_1255 /* exception */, + OBJ_1258 /* extension */, + OBJ_1265 /* utils */, ); - name = Sources; - path = Sources; + name = misc; + path = misc; sourceTree = ""; }; - OBJ_1167 /* exception */ = { + OBJ_1255 /* exception */ = { isa = PBXGroup; children = ( - OBJ_1168 /* ANTLRError.swift */, - OBJ_1169 /* ANTLRException.swift */, + OBJ_1256 /* ANTLRError.swift */, + OBJ_1257 /* ANTLRException.swift */, ); name = exception; path = exception; sourceTree = ""; }; - OBJ_1170 /* extension */ = { + OBJ_1258 /* extension */ = { isa = PBXGroup; children = ( - OBJ_1171 /* ArrayExtension.swift */, - OBJ_1172 /* CharacterExtension.swift */, - OBJ_1173 /* IntStreamExtension.swift */, - OBJ_1174 /* StringExtension.swift */, - OBJ_1175 /* TokenExtension.swift */, - OBJ_1176 /* UUIDExtension.swift */, + OBJ_1259 /* ArrayExtension.swift */, + OBJ_1260 /* CharacterExtension.swift */, + OBJ_1261 /* IntStreamExtension.swift */, + OBJ_1262 /* StringExtension.swift */, + OBJ_1263 /* TokenExtension.swift */, + OBJ_1264 /* UUIDExtension.swift */, ); name = extension; path = extension; sourceTree = ""; }; - OBJ_1177 /* utils */ = { + OBJ_1265 /* utils */ = { isa = PBXGroup; children = ( - OBJ_1178 /* AtomicInt.swift */, - OBJ_1179 /* CommonUtil.swift */, - OBJ_1180 /* Mutex.swift */, - OBJ_1181 /* Stack.swift */, + OBJ_1266 /* AtomicInt.swift */, + OBJ_1267 /* CommonUtil.swift */, + OBJ_1268 /* Mutex.swift */, + OBJ_1269 /* Stack.swift */, ); name = utils; path = utils; sourceTree = ""; }; - OBJ_1182 /* tree */ = { + OBJ_1270 /* tree */ = { isa = PBXGroup; children = ( - OBJ_1183 /* AbstractParseTreeVisitor.swift */, - OBJ_1184 /* ErrorNode.swift */, - OBJ_1185 /* ParseTree.swift */, - OBJ_1186 /* ParseTreeListener.swift */, - OBJ_1187 /* ParseTreeProperty.swift */, - OBJ_1188 /* ParseTreeVisitor.swift */, - OBJ_1189 /* ParseTreeWalker.swift */, - OBJ_1190 /* RuleNode.swift */, - OBJ_1191 /* SyntaxTree.swift */, - OBJ_1192 /* TerminalNode.swift */, - OBJ_1193 /* TerminalNodeImpl.swift */, - OBJ_1194 /* Tree.swift */, - OBJ_1195 /* Trees.swift */, - OBJ_1196 /* pattern */, + OBJ_1271 /* AbstractParseTreeVisitor.swift */, + OBJ_1272 /* ErrorNode.swift */, + OBJ_1273 /* ParseTree.swift */, + OBJ_1274 /* ParseTreeListener.swift */, + OBJ_1275 /* ParseTreeProperty.swift */, + OBJ_1276 /* ParseTreeVisitor.swift */, + OBJ_1277 /* ParseTreeWalker.swift */, + OBJ_1278 /* RuleNode.swift */, + OBJ_1279 /* SyntaxTree.swift */, + OBJ_1280 /* TerminalNode.swift */, + OBJ_1281 /* TerminalNodeImpl.swift */, + OBJ_1282 /* Tree.swift */, + OBJ_1283 /* Trees.swift */, + OBJ_1284 /* pattern */, ); name = tree; path = tree; sourceTree = ""; }; - OBJ_1196 /* pattern */ = { + OBJ_1284 /* pattern */ = { isa = PBXGroup; children = ( - OBJ_1197 /* Chunk.swift */, - OBJ_1198 /* ParseTreeMatch.swift */, - OBJ_1199 /* ParseTreePattern.swift */, - OBJ_1200 /* ParseTreePatternMatcher.swift */, - OBJ_1201 /* RuleTagToken.swift */, - OBJ_1202 /* TagChunk.swift */, - OBJ_1203 /* TextChunk.swift */, - OBJ_1204 /* TokenTagToken.swift */, + OBJ_1285 /* Chunk.swift */, + OBJ_1286 /* ParseTreeMatch.swift */, + OBJ_1287 /* ParseTreePattern.swift */, + OBJ_1288 /* ParseTreePatternMatcher.swift */, + OBJ_1289 /* RuleTagToken.swift */, + OBJ_1290 /* TagChunk.swift */, + OBJ_1291 /* TextChunk.swift */, + OBJ_1292 /* TokenTagToken.swift */, ); name = pattern; path = pattern; sourceTree = ""; }; - OBJ_1205 /* CAntlrShims */ = { + OBJ_1293 /* CAntlrShims */ = { isa = PBXGroup; children = ( - OBJ_1206 /* atomic.c */, - OBJ_1207 /* include */, + OBJ_1294 /* atomic.c */, + OBJ_1295 /* include */, ); name = CAntlrShims; path = ".build/checkouts/antlr4-swift/Sources/CAntlrShims"; sourceTree = SOURCE_ROOT; }; - OBJ_1207 /* include */ = { + OBJ_1295 /* include */ = { isa = PBXGroup; children = ( - OBJ_1208 /* _CAntlrShims.h */, - OBJ_1209 /* module.modulemap */, + OBJ_1296 /* _CAntlrShims.h */, + OBJ_1297 /* module.modulemap */, ); name = include; path = include; sourceTree = ""; }; - OBJ_1211 /* swift-argument-parser 1.1.4 */ = { + OBJ_1299 /* swift-argument-parser 1.1.4 */ = { isa = PBXGroup; children = ( - OBJ_1212 /* ArgumentParser */, - OBJ_1258 /* ArgumentParserToolInfo */, - OBJ_1260 /* GenerateManualPlugin */, - OBJ_1261 /* generate-manual */, - OBJ_1262 /* Package.swift */, + OBJ_1300 /* ArgumentParser */, + OBJ_1346 /* ArgumentParserToolInfo */, + OBJ_1348 /* GenerateManualPlugin */, + OBJ_1349 /* generate-manual */, + OBJ_1350 /* Package.swift */, ); name = "swift-argument-parser 1.1.4"; path = ""; sourceTree = SOURCE_ROOT; }; - OBJ_1212 /* ArgumentParser */ = { + OBJ_13 /* ControlFlowGraph */ = { + isa = PBXGroup; + children = ( + OBJ_14 /* CFGVisitResult.swift */, + OBJ_15 /* ControlFlowGraph+Creation.swift */, + OBJ_16 /* ControlFlowGraph+Graphviz.swift */, + OBJ_17 /* ControlFlowGraph+Visitor.swift */, + OBJ_18 /* ControlFlowGraph.swift */, + ); + name = ControlFlowGraph; + path = ControlFlowGraph; + sourceTree = ""; + }; + OBJ_1300 /* ArgumentParser */ = { isa = PBXGroup; children = ( - OBJ_1213 /* Completions */, - OBJ_1218 /* Parsable Properties */, - OBJ_1228 /* Parsable Types */, - OBJ_1236 /* Parsing */, - OBJ_1247 /* Usage */, - OBJ_1253 /* Utilities */, + OBJ_1301 /* Completions */, + OBJ_1306 /* Parsable Properties */, + OBJ_1316 /* Parsable Types */, + OBJ_1324 /* Parsing */, + OBJ_1335 /* Usage */, + OBJ_1341 /* Utilities */, ); name = ArgumentParser; path = ".build/checkouts/swift-argument-parser/Sources/ArgumentParser"; sourceTree = SOURCE_ROOT; }; - OBJ_1213 /* Completions */ = { + OBJ_1301 /* Completions */ = { isa = PBXGroup; children = ( - OBJ_1214 /* BashCompletionsGenerator.swift */, - OBJ_1215 /* CompletionsGenerator.swift */, - OBJ_1216 /* FishCompletionsGenerator.swift */, - OBJ_1217 /* ZshCompletionsGenerator.swift */, + OBJ_1302 /* BashCompletionsGenerator.swift */, + OBJ_1303 /* CompletionsGenerator.swift */, + OBJ_1304 /* FishCompletionsGenerator.swift */, + OBJ_1305 /* ZshCompletionsGenerator.swift */, ); name = Completions; path = Completions; sourceTree = ""; }; - OBJ_1218 /* Parsable Properties */ = { + OBJ_1306 /* Parsable Properties */ = { isa = PBXGroup; children = ( - OBJ_1219 /* Argument.swift */, - OBJ_1220 /* ArgumentHelp.swift */, - OBJ_1221 /* ArgumentVisibility.swift */, - OBJ_1222 /* CompletionKind.swift */, - OBJ_1223 /* Errors.swift */, - OBJ_1224 /* Flag.swift */, - OBJ_1225 /* NameSpecification.swift */, - OBJ_1226 /* Option.swift */, - OBJ_1227 /* OptionGroup.swift */, + OBJ_1307 /* Argument.swift */, + OBJ_1308 /* ArgumentHelp.swift */, + OBJ_1309 /* ArgumentVisibility.swift */, + OBJ_1310 /* CompletionKind.swift */, + OBJ_1311 /* Errors.swift */, + OBJ_1312 /* Flag.swift */, + OBJ_1313 /* NameSpecification.swift */, + OBJ_1314 /* Option.swift */, + OBJ_1315 /* OptionGroup.swift */, ); name = "Parsable Properties"; path = "Parsable Properties"; sourceTree = ""; }; - OBJ_1228 /* Parsable Types */ = { + OBJ_131 /* Historic */ = { isa = PBXGroup; children = ( - OBJ_1229 /* AsyncParsableCommand.swift */, - OBJ_1230 /* CommandConfiguration.swift */, - OBJ_1231 /* EnumerableFlag.swift */, - OBJ_1232 /* ExpressibleByArgument.swift */, - OBJ_1233 /* ParsableArguments.swift */, - OBJ_1234 /* ParsableArgumentsValidation.swift */, - OBJ_1235 /* ParsableCommand.swift */, + OBJ_132 /* Historic.swift */, + OBJ_133 /* IntentionHistory.swift */, + OBJ_134 /* IntentionHistoryEntry.swift */, + OBJ_135 /* IntentionHistoryEntryEcho.swift */, + OBJ_136 /* IntentionHistoryTracker.swift */, ); - name = "Parsable Types"; - path = "Parsable Types"; + name = Historic; + path = Historic; sourceTree = ""; }; - OBJ_1236 /* Parsing */ = { + OBJ_1316 /* Parsable Types */ = { isa = PBXGroup; children = ( - OBJ_1237 /* ArgumentDecoder.swift */, - OBJ_1238 /* ArgumentDefinition.swift */, - OBJ_1239 /* ArgumentSet.swift */, - OBJ_1240 /* CommandParser.swift */, - OBJ_1241 /* InputOrigin.swift */, - OBJ_1242 /* Name.swift */, - OBJ_1243 /* Parsed.swift */, - OBJ_1244 /* ParsedValues.swift */, - OBJ_1245 /* ParserError.swift */, - OBJ_1246 /* SplitArguments.swift */, + OBJ_1317 /* AsyncParsableCommand.swift */, + OBJ_1318 /* CommandConfiguration.swift */, + OBJ_1319 /* EnumerableFlag.swift */, + OBJ_1320 /* ExpressibleByArgument.swift */, + OBJ_1321 /* ParsableArguments.swift */, + OBJ_1322 /* ParsableArgumentsValidation.swift */, + OBJ_1323 /* ParsableCommand.swift */, ); - name = Parsing; - path = Parsing; + name = "Parsable Types"; + path = "Parsable Types"; sourceTree = ""; }; - OBJ_124 /* Intentions */ = { + OBJ_1324 /* Parsing */ = { isa = PBXGroup; children = ( - OBJ_125 /* BaseClassIntention.swift */, - OBJ_126 /* FileLevelIntention.swift */, - OBJ_127 /* FromSourceIntention.swift */, - OBJ_128 /* FunctionBodyCarryingIntention.swift */, - OBJ_129 /* FunctionBodyQueue.swift */, - OBJ_130 /* FunctionIntention.swift */, - OBJ_131 /* Historic */, - OBJ_137 /* InstanceVariableContainerIntention.swift */, - OBJ_138 /* Intention.swift */, - OBJ_139 /* IntentionCollection.swift */, - OBJ_140 /* Intentions */, - OBJ_164 /* KnownType+IntentionBuild.swift */, - OBJ_165 /* MemberGenerationIntention.swift */, - OBJ_166 /* Metadata */, - OBJ_170 /* NonNullScopedIntention.swift */, - OBJ_171 /* OverridableMemberGenerationIntention.swift */, - OBJ_172 /* Serialization */, - OBJ_178 /* StatementContainer.swift */, - OBJ_179 /* TypeFormatter+Intentions.swift */, - OBJ_180 /* TypeGenerationIntention.swift */, - OBJ_181 /* ValueStorageIntention.swift */, - OBJ_182 /* Visitor */, + OBJ_1325 /* ArgumentDecoder.swift */, + OBJ_1326 /* ArgumentDefinition.swift */, + OBJ_1327 /* ArgumentSet.swift */, + OBJ_1328 /* CommandParser.swift */, + OBJ_1329 /* InputOrigin.swift */, + OBJ_1330 /* Name.swift */, + OBJ_1331 /* Parsed.swift */, + OBJ_1332 /* ParsedValues.swift */, + OBJ_1333 /* ParserError.swift */, + OBJ_1334 /* SplitArguments.swift */, ); - name = Intentions; - path = Sources/Core/Intentions; - sourceTree = SOURCE_ROOT; + name = Parsing; + path = Parsing; + sourceTree = ""; }; - OBJ_1247 /* Usage */ = { + OBJ_1335 /* Usage */ = { isa = PBXGroup; children = ( - OBJ_1248 /* DumpHelpGenerator.swift */, - OBJ_1249 /* HelpCommand.swift */, - OBJ_1250 /* HelpGenerator.swift */, - OBJ_1251 /* MessageInfo.swift */, - OBJ_1252 /* UsageGenerator.swift */, + OBJ_1336 /* DumpHelpGenerator.swift */, + OBJ_1337 /* HelpCommand.swift */, + OBJ_1338 /* HelpGenerator.swift */, + OBJ_1339 /* MessageInfo.swift */, + OBJ_1340 /* UsageGenerator.swift */, ); name = Usage; path = Usage; sourceTree = ""; }; - OBJ_1253 /* Utilities */ = { + OBJ_1341 /* Utilities */ = { isa = PBXGroup; children = ( - OBJ_1254 /* CollectionExtensions.swift */, - OBJ_1255 /* SequenceExtensions.swift */, - OBJ_1256 /* StringExtensions.swift */, - OBJ_1257 /* Tree.swift */, + OBJ_1342 /* CollectionExtensions.swift */, + OBJ_1343 /* SequenceExtensions.swift */, + OBJ_1344 /* StringExtensions.swift */, + OBJ_1345 /* Tree.swift */, ); name = Utilities; path = Utilities; sourceTree = ""; }; - OBJ_1258 /* ArgumentParserToolInfo */ = { + OBJ_1346 /* ArgumentParserToolInfo */ = { isa = PBXGroup; children = ( - OBJ_1259 /* ToolInfo.swift */, + OBJ_1347 /* ToolInfo.swift */, ); name = ArgumentParserToolInfo; path = ".build/checkouts/swift-argument-parser/Sources/ArgumentParserToolInfo"; sourceTree = SOURCE_ROOT; }; - OBJ_1260 /* GenerateManualPlugin */ = { + OBJ_1348 /* GenerateManualPlugin */ = { isa = PBXGroup; children = ( ); @@ -5508,7 +6304,7 @@ path = ".build/checkouts/swift-argument-parser/Plugins/GenerateManualPlugin"; sourceTree = SOURCE_ROOT; }; - OBJ_1261 /* generate-manual */ = { + OBJ_1349 /* generate-manual */ = { isa = PBXGroup; children = ( ); @@ -5516,35 +6312,35 @@ path = ".build/checkouts/swift-argument-parser/Tools/generate-manual"; sourceTree = SOURCE_ROOT; }; - OBJ_1263 /* MiniLexer 0.10.0 */ = { + OBJ_1351 /* MiniLexer 0.10.0 */ = { isa = PBXGroup; children = ( - OBJ_1264 /* MiniLexer */, - OBJ_1273 /* MiniParser */, - OBJ_1274 /* TypeLexing */, - OBJ_1276 /* Package.swift */, + OBJ_1352 /* MiniLexer */, + OBJ_1361 /* MiniParser */, + OBJ_1362 /* TypeLexing */, + OBJ_1364 /* Package.swift */, ); name = "MiniLexer 0.10.0"; path = ""; sourceTree = SOURCE_ROOT; }; - OBJ_1264 /* MiniLexer */ = { + OBJ_1352 /* MiniLexer */ = { isa = PBXGroup; children = ( - OBJ_1265 /* GrammarRules+Operators.swift */, - OBJ_1266 /* GrammarRules.swift */, - OBJ_1267 /* Lexer+Advance.swift */, - OBJ_1268 /* Lexer+AdvancedParsing.swift */, - OBJ_1269 /* Lexer+Consume.swift */, - OBJ_1270 /* Lexer.swift */, - OBJ_1271 /* TokenProtocol.swift */, - OBJ_1272 /* TokenizerLexer.swift */, + OBJ_1353 /* GrammarRules+Operators.swift */, + OBJ_1354 /* GrammarRules.swift */, + OBJ_1355 /* Lexer+Advance.swift */, + OBJ_1356 /* Lexer+AdvancedParsing.swift */, + OBJ_1357 /* Lexer+Consume.swift */, + OBJ_1358 /* Lexer.swift */, + OBJ_1359 /* TokenProtocol.swift */, + OBJ_1360 /* TokenizerLexer.swift */, ); name = MiniLexer; path = .build/checkouts/MiniLexer/Sources/MiniLexer; sourceTree = SOURCE_ROOT; }; - OBJ_1273 /* MiniParser */ = { + OBJ_1361 /* MiniParser */ = { isa = PBXGroup; children = ( ); @@ -5552,16 +6348,16 @@ path = .build/checkouts/MiniLexer/Sources/MiniParser; sourceTree = SOURCE_ROOT; }; - OBJ_1274 /* TypeLexing */ = { + OBJ_1362 /* TypeLexing */ = { isa = PBXGroup; children = ( - OBJ_1275 /* TypeLexers.swift */, + OBJ_1363 /* TypeLexers.swift */, ); name = TypeLexing; path = .build/checkouts/MiniLexer/Sources/TypeLexing; sourceTree = SOURCE_ROOT; }; - OBJ_1277 /* Products */ = { + OBJ_1365 /* Products */ = { isa = PBXGroup; children = ( swiftrewriter::Analysis::Product /* Analysis.framework */, @@ -5586,6 +6382,12 @@ swiftrewriter::IntentionPassesTests::Product /* IntentionPassesTests.xctest */, swiftrewriter::Intentions::Product /* Intentions.framework */, swiftrewriter::IntentionsTests::Product /* IntentionsTests.xctest */, + swiftrewriter::JavaScriptFrontend::Product /* JavaScriptFrontend.framework */, + swiftrewriter::JavaScriptFrontendTests::Product /* JavaScriptFrontendTests.xctest */, + swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */, + swiftrewriter::JsParser::Product /* JsParser.framework */, + swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */, + swiftrewriter::JsParserTests::Product /* JsParserTests.xctest */, swiftrewriter::KnownType::Product /* KnownType.framework */, swiftrewriter::KnownTypeTests::Product /* KnownTypeTests.xctest */, minilexer::MiniLexer::Product /* MiniLexer.framework */, @@ -5633,33 +6435,7 @@ path = ""; sourceTree = BUILT_PRODUCTS_DIR; }; - OBJ_13 /* ControlFlowGraph */ = { - isa = PBXGroup; - children = ( - OBJ_14 /* CFGVisitResult.swift */, - OBJ_15 /* ControlFlowGraph+Creation.swift */, - OBJ_16 /* ControlFlowGraph+Graphviz.swift */, - OBJ_17 /* ControlFlowGraph+Visitor.swift */, - OBJ_18 /* ControlFlowGraph.swift */, - ); - name = ControlFlowGraph; - path = ControlFlowGraph; - sourceTree = ""; - }; - OBJ_131 /* Historic */ = { - isa = PBXGroup; - children = ( - OBJ_132 /* Historic.swift */, - OBJ_133 /* IntentionHistory.swift */, - OBJ_134 /* IntentionHistoryEntry.swift */, - OBJ_135 /* IntentionHistoryEntryEcho.swift */, - OBJ_136 /* IntentionHistoryTracker.swift */, - ); - name = Historic; - path = Historic; - sourceTree = ""; - }; - OBJ_140 /* Intentions */ = { + OBJ_140 /* Intentions */ = { isa = PBXGroup; children = ( OBJ_141 /* ClassExtensionGenerationIntention.swift */, @@ -5724,1885 +6500,1917 @@ path = Visitor; sourceTree = ""; }; - OBJ_185 /* KnownType */ = { + OBJ_185 /* JavaScriptFrontend */ = { + isa = PBXGroup; + children = ( + OBJ_186 /* ExpressionPasses */, + OBJ_188 /* Intention+TypedSource.swift */, + OBJ_189 /* IntentionPasses */, + OBJ_191 /* JavaScript2SwiftRewriter.swift */, + OBJ_192 /* JavaScript2SwiftRewriterJob.swift */, + OBJ_193 /* JavaScript2SwiftRewriterJobBuilder.swift */, + OBJ_194 /* JavaScriptASTReader.swift */, + OBJ_195 /* JavaScriptASTReaderContext.swift */, + OBJ_196 /* JavaScriptExprASTReader.swift */, + OBJ_197 /* JavaScriptFileCollectionStep.swift */, + OBJ_198 /* JavaScriptFileCollectionStepDelegate.swift */, + OBJ_199 /* JavaScriptFrontend.swift */, + OBJ_200 /* JavaScriptImportDirectiveFileCollectionDelegate.swift */, + OBJ_201 /* JavaScriptIntentionCollector.swift */, + OBJ_202 /* JavaScriptMethodSignatureConverter.swift */, + OBJ_203 /* JavaScriptObjectGenerator.swift */, + OBJ_204 /* JavaScriptParserCache.swift */, + OBJ_205 /* JavaScriptStatementASTReader.swift */, + OBJ_206 /* JavaScriptSwiftRewriterService.swift */, + OBJ_207 /* JsParserStatePool.swift */, + ); + name = JavaScriptFrontend; + path = Sources/Frontend/JavaScript/JavaScriptFrontend; + sourceTree = SOURCE_ROOT; + }; + OBJ_186 /* ExpressionPasses */ = { + isa = PBXGroup; + children = ( + OBJ_187 /* JavaScriptASTCorrectorExpressionPass.swift */, + ); + name = ExpressionPasses; + path = ExpressionPasses; + sourceTree = ""; + }; + OBJ_189 /* IntentionPasses */ = { + isa = PBXGroup; + children = ( + OBJ_190 /* JavaScriptPropertyMergeIntentionPass.swift */, + ); + name = IntentionPasses; + path = IntentionPasses; + sourceTree = ""; + }; + OBJ_208 /* JsGrammarModels */ = { + isa = PBXGroup; + children = ( + OBJ_209 /* JsASTNode.swift */, + OBJ_210 /* JsAnonymousFunction.swift */, + OBJ_211 /* JsClassNode.swift */, + OBJ_212 /* JsClassPropertyNode.swift */, + OBJ_213 /* JsConstructorDefinitionNode.swift */, + OBJ_214 /* JsExpressionNode.swift */, + OBJ_215 /* JsFunctionBodyNode.swift */, + OBJ_216 /* JsFunctionDeclarationNode.swift */, + OBJ_217 /* JsFunctionNodeType.swift */, + OBJ_218 /* JsFunctionSignature.swift */, + OBJ_219 /* JsGlobalContextNode.swift */, + OBJ_220 /* JsIdentifierNode.swift */, + OBJ_221 /* JsInitializableNode.swift */, + OBJ_222 /* JsMethodDefinitionNode.swift */, + OBJ_223 /* JsVariableDeclarationListNode.swift */, + OBJ_224 /* JsVariableDeclarationNode.swift */, + ); + name = JsGrammarModels; + path = Sources/Frontend/JavaScript/JsGrammarModels; + sourceTree = SOURCE_ROOT; + }; + OBJ_22 /* Graphviz */ = { + isa = PBXGroup; + children = ( + OBJ_23 /* NodeDefinition.swift */, + ); + name = Graphviz; + path = Graphviz; + sourceTree = ""; + }; + OBJ_225 /* JsParser */ = { + isa = PBXGroup; + children = ( + OBJ_226 /* JsASTNodeFactory.swift */, + OBJ_227 /* JsImportDecl.swift */, + OBJ_228 /* JsImportDeclListener.swift */, + OBJ_229 /* JsNodeCreationContext.swift */, + OBJ_230 /* JsParser.swift */, + OBJ_231 /* JsParserListener.swift */, + OBJ_232 /* JsParserState.swift */, + ); + name = JsParser; + path = Sources/Frontend/JavaScript/JsParser; + sourceTree = SOURCE_ROOT; + }; + OBJ_233 /* JsParserAntlr */ = { + isa = PBXGroup; + children = ( + OBJ_234 /* JavaScriptLexer.swift */, + OBJ_235 /* JavaScriptLexerBase.swift */, + OBJ_236 /* JavaScriptParser.swift */, + OBJ_237 /* JavaScriptParserBase.swift */, + OBJ_238 /* JavaScriptParserBaseListener.swift */, + OBJ_239 /* JavaScriptParserBaseVisitor.swift */, + OBJ_240 /* JavaScriptParserListener.swift */, + OBJ_241 /* JavaScriptParserVisitor.swift */, + OBJ_242 /* shim.swift */, + ); + name = JsParserAntlr; + path = Sources/Frontend/JavaScript/JsParserAntlr; + sourceTree = SOURCE_ROOT; + }; + OBJ_243 /* KnownType */ = { isa = PBXGroup; children = ( - OBJ_186 /* AttributeTaggableObject.swift */, - OBJ_187 /* KnownAttribute.swift */, - OBJ_188 /* KnownDeclaration.swift */, - OBJ_189 /* KnownFile+Equality.swift */, - OBJ_190 /* KnownFile.swift */, - OBJ_191 /* KnownFileBuilder.swift */, - OBJ_192 /* KnownType+Equality.swift */, - OBJ_193 /* KnownType.swift */, - OBJ_194 /* KnownTypeBuilder.swift */, - OBJ_195 /* KnownTypeSerializer.swift */, - OBJ_196 /* Semantic.swift */, - OBJ_197 /* SemanticalObject.swift */, - OBJ_198 /* Semantics.swift */, - OBJ_199 /* TypeFormatter+Ext.swift */, + OBJ_244 /* AttributeTaggableObject.swift */, + OBJ_245 /* KnownAttribute.swift */, + OBJ_246 /* KnownDeclaration.swift */, + OBJ_247 /* KnownFile+Equality.swift */, + OBJ_248 /* KnownFile.swift */, + OBJ_249 /* KnownFileBuilder.swift */, + OBJ_250 /* KnownType+Equality.swift */, + OBJ_251 /* KnownType.swift */, + OBJ_252 /* KnownTypeBuilder.swift */, + OBJ_253 /* KnownTypeSerializer.swift */, + OBJ_254 /* Semantic.swift */, + OBJ_255 /* SemanticalObject.swift */, + OBJ_256 /* Semantics.swift */, + OBJ_257 /* TypeFormatter+Ext.swift */, ); name = KnownType; path = Sources/Core/KnownType; sourceTree = SOURCE_ROOT; }; - OBJ_200 /* ObjcGrammarModels */ = { + OBJ_258 /* ObjcGrammarModels */ = { isa = PBXGroup; children = ( - OBJ_201 /* ASTNodeSerialization.swift */, - OBJ_202 /* ObjcASTNode.swift */, - OBJ_203 /* ObjcClass+Method.swift */, - OBJ_204 /* ObjcClass+Property.swift */, - OBJ_205 /* ObjcClassCategoryInterfaceNode.swift */, - OBJ_206 /* ObjcClassImplementationNode.swift */, - OBJ_207 /* ObjcClassInterfaceNode.swift */, - OBJ_208 /* ObjcEnumDeclarationNode.swift */, - OBJ_209 /* ObjcExpressionNode.swift */, - OBJ_210 /* ObjcFunctionDefinitionNode.swift */, - OBJ_211 /* ObjcGlobalContextNode.swift */, - OBJ_212 /* ObjcIdentifierNode.swift */, - OBJ_213 /* ObjcInitializableNode.swift */, - OBJ_214 /* ObjcKeyword.swift */, - OBJ_215 /* ObjcKeywordNode.swift */, - OBJ_216 /* ObjcOperator.swift */, - OBJ_217 /* ObjcPreprocessorDirective.swift */, - OBJ_218 /* ObjcPropertyImplementationNode.swift */, - OBJ_219 /* ObjcPropertySynthesizeListNode.swift */, - OBJ_220 /* ObjcProtocolDeclarationNode.swift */, - OBJ_221 /* ObjcStructDeclarationNode.swift */, - OBJ_222 /* ObjcTokenType.swift */, - OBJ_223 /* ObjcType.swift */, - OBJ_224 /* ObjcTypeNameNode.swift */, - OBJ_225 /* ObjcTypedefNode.swift */, - OBJ_226 /* ObjcUnknownNode.swift */, - OBJ_227 /* ObjcVariableDeclarationNode.swift */, + OBJ_259 /* ASTNodeSerialization.swift */, + OBJ_260 /* ObjcASTNode.swift */, + OBJ_261 /* ObjcClass+Method.swift */, + OBJ_262 /* ObjcClass+Property.swift */, + OBJ_263 /* ObjcClassCategoryInterfaceNode.swift */, + OBJ_264 /* ObjcClassImplementationNode.swift */, + OBJ_265 /* ObjcClassInterfaceNode.swift */, + OBJ_266 /* ObjcEnumDeclarationNode.swift */, + OBJ_267 /* ObjcExpressionNode.swift */, + OBJ_268 /* ObjcFunctionDefinitionNode.swift */, + OBJ_269 /* ObjcGlobalContextNode.swift */, + OBJ_270 /* ObjcIdentifierNode.swift */, + OBJ_271 /* ObjcInitializableNode.swift */, + OBJ_272 /* ObjcKeyword.swift */, + OBJ_273 /* ObjcKeywordNode.swift */, + OBJ_274 /* ObjcOperator.swift */, + OBJ_275 /* ObjcPreprocessorDirective.swift */, + OBJ_276 /* ObjcPropertyImplementationNode.swift */, + OBJ_277 /* ObjcPropertySynthesizeListNode.swift */, + OBJ_278 /* ObjcProtocolDeclarationNode.swift */, + OBJ_279 /* ObjcStructDeclarationNode.swift */, + OBJ_280 /* ObjcTokenType.swift */, + OBJ_281 /* ObjcType.swift */, + OBJ_282 /* ObjcTypeNameNode.swift */, + OBJ_283 /* ObjcTypedefNode.swift */, + OBJ_284 /* ObjcUnknownNode.swift */, + OBJ_285 /* ObjcVariableDeclarationNode.swift */, ); name = ObjcGrammarModels; path = "Sources/Frontend/Objective-C/ObjcGrammarModels"; sourceTree = SOURCE_ROOT; }; - OBJ_22 /* Graphviz */ = { + OBJ_26 /* UsageAnalysis */ = { isa = PBXGroup; children = ( - OBJ_23 /* NodeDefinition.swift */, + OBJ_27 /* BaseUsageAnalyzer.swift */, + OBJ_28 /* DefinitionUsage.swift */, + OBJ_29 /* IntentionCollectionUsageAnalyzer.swift */, + OBJ_30 /* LocalUsageAnalyzer.swift */, + OBJ_31 /* LocalUsageAnalyzerType.swift */, + OBJ_32 /* UsageAnalysis.swift */, ); - name = Graphviz; - path = Graphviz; + name = UsageAnalysis; + path = UsageAnalysis; sourceTree = ""; }; - OBJ_228 /* ObjcParser */ = { + OBJ_286 /* ObjcParser */ = { isa = PBXGroup; children = ( - OBJ_229 /* ConstantExtractor.swift */, - OBJ_230 /* DeclarationExtractor */, - OBJ_289 /* DeclarationTranslator.swift */, - OBJ_290 /* DefinitionCollector.swift */, - OBJ_291 /* Lexer+ObjcLexing.swift */, - OBJ_292 /* NodeContext.swift */, - OBJ_293 /* NonnullContextQuerier.swift */, - OBJ_294 /* ObjcASTNodeFactory+DeclarationSyntax.swift */, - OBJ_295 /* ObjcASTNodeFactory.swift */, - OBJ_296 /* ObjcImportDecl.swift */, - OBJ_297 /* ObjcParser.swift */, - OBJ_298 /* ObjcParserListener.swift */, - OBJ_299 /* ObjcParserState.swift */, - OBJ_300 /* ObjcPreprocessorListener.swift */, - OBJ_301 /* ObjcTokenType+TokenProtocol.swift */, - OBJ_302 /* ObjcTypeParser.swift */, - OBJ_303 /* ObjectiveCParser+ParserRuleContext.swift */, - OBJ_304 /* ObjectiveCParser+RuleExt.swift */, - OBJ_305 /* ObjectiveCPreprocessor.swift */, - OBJ_306 /* Source+Ext.swift */, - OBJ_307 /* VarDeclarationIdentifierNameExtractor.swift */, + OBJ_287 /* ConstantExtractor.swift */, + OBJ_288 /* DeclarationExtractor */, + OBJ_347 /* DeclarationTranslator.swift */, + OBJ_348 /* DefinitionCollector.swift */, + OBJ_349 /* Lexer+ObjcLexing.swift */, + OBJ_350 /* NodeContext.swift */, + OBJ_351 /* NonnullContextQuerier.swift */, + OBJ_352 /* ObjcASTNodeFactory+DeclarationSyntax.swift */, + OBJ_353 /* ObjcASTNodeFactory.swift */, + OBJ_354 /* ObjcImportDecl.swift */, + OBJ_355 /* ObjcParser.swift */, + OBJ_356 /* ObjcParserListener.swift */, + OBJ_357 /* ObjcParserState.swift */, + OBJ_358 /* ObjcPreprocessorListener.swift */, + OBJ_359 /* ObjcTokenType+TokenProtocol.swift */, + OBJ_360 /* ObjcTypeParser.swift */, + OBJ_361 /* ObjectiveCParser+ParserRuleContext.swift */, + OBJ_362 /* ObjectiveCParser+RuleExt.swift */, + OBJ_363 /* ObjectiveCPreprocessor.swift */, + OBJ_364 /* Source+Ext.swift */, + OBJ_365 /* VarDeclarationIdentifierNameExtractor.swift */, ); name = ObjcParser; path = "Sources/Frontend/Objective-C/ObjcParser"; sourceTree = SOURCE_ROOT; }; - OBJ_230 /* DeclarationExtractor */ = { + OBJ_288 /* DeclarationExtractor */ = { isa = PBXGroup; children = ( - OBJ_231 /* AntlrDeclarationParser.swift */, - OBJ_232 /* DeclarationExtractor.swift */, - OBJ_233 /* DeclarationSyntaxElementType+ObjcType.swift */, - OBJ_234 /* DeclarationSyntaxElementType.swift */, - OBJ_235 /* Syntax */, + OBJ_289 /* AntlrDeclarationParser.swift */, + OBJ_290 /* DeclarationExtractor.swift */, + OBJ_291 /* DeclarationSyntaxElementType+ObjcType.swift */, + OBJ_292 /* DeclarationSyntaxElementType.swift */, + OBJ_293 /* Syntax */, ); name = DeclarationExtractor; path = DeclarationExtractor; sourceTree = ""; }; - OBJ_235 /* Syntax */ = { + OBJ_293 /* Syntax */ = { isa = PBXGroup; children = ( - OBJ_236 /* Basic */, - OBJ_248 /* DeclarationSpecifierSyntax.swift */, - OBJ_249 /* DeclarationSpecifiers */, - OBJ_267 /* DeclarationSpecifiersSyntax.swift */, - OBJ_268 /* DeclarationSyntax.swift */, - OBJ_269 /* Declarators */, - OBJ_277 /* FieldDeclarationSyntax.swift */, - OBJ_278 /* InitDeclarationListSyntax.swift */, - OBJ_279 /* InitDeclarationSyntax.swift */, - OBJ_280 /* TypeName */, - OBJ_287 /* TypeNameSyntax.swift */, - OBJ_288 /* TypeVariableDeclaratorSyntax.swift */, + OBJ_294 /* Basic */, + OBJ_306 /* DeclarationSpecifierSyntax.swift */, + OBJ_307 /* DeclarationSpecifiers */, + OBJ_325 /* DeclarationSpecifiersSyntax.swift */, + OBJ_326 /* DeclarationSyntax.swift */, + OBJ_327 /* Declarators */, + OBJ_335 /* FieldDeclarationSyntax.swift */, + OBJ_336 /* InitDeclarationListSyntax.swift */, + OBJ_337 /* InitDeclarationSyntax.swift */, + OBJ_338 /* TypeName */, + OBJ_345 /* TypeNameSyntax.swift */, + OBJ_346 /* TypeVariableDeclaratorSyntax.swift */, ); name = Syntax; path = Syntax; sourceTree = ""; }; - OBJ_236 /* Basic */ = { + OBJ_294 /* Basic */ = { isa = PBXGroup; children = ( - OBJ_237 /* ConstantExpressionSyntax.swift */, - OBJ_238 /* ExpressionSyntax.swift */, - OBJ_239 /* IdentifierSyntax.swift */, - OBJ_240 /* InitializerSyntax.swift */, - OBJ_241 /* ParameterDeclarationSyntax.swift */, - OBJ_242 /* ParameterListSyntax.swift */, - OBJ_243 /* ParameterTypeListSyntax.swift */, - OBJ_244 /* PointerSyntax.swift */, - OBJ_245 /* ProtocolReferenceListSyntax.swift */, - OBJ_246 /* SpecifierQualifierListSyntax.swift */, - OBJ_247 /* TypeQualifierListSyntax.swift */, + OBJ_295 /* ConstantExpressionSyntax.swift */, + OBJ_296 /* ExpressionSyntax.swift */, + OBJ_297 /* IdentifierSyntax.swift */, + OBJ_298 /* InitializerSyntax.swift */, + OBJ_299 /* ParameterDeclarationSyntax.swift */, + OBJ_300 /* ParameterListSyntax.swift */, + OBJ_301 /* ParameterTypeListSyntax.swift */, + OBJ_302 /* PointerSyntax.swift */, + OBJ_303 /* ProtocolReferenceListSyntax.swift */, + OBJ_304 /* SpecifierQualifierListSyntax.swift */, + OBJ_305 /* TypeQualifierListSyntax.swift */, ); name = Basic; path = Basic; sourceTree = ""; }; - OBJ_249 /* DeclarationSpecifiers */ = { + OBJ_307 /* DeclarationSpecifiers */ = { isa = PBXGroup; children = ( - OBJ_250 /* AlignmentSpecifierSyntax.swift */, - OBJ_251 /* ArcBehaviourSpecifierSyntax.swift */, - OBJ_252 /* BlockDeclarationSpecifierSyntax.swift */, - OBJ_253 /* FunctionSpecifierSyntax.swift */, - OBJ_254 /* IBOutletQualifierSyntax.swift */, - OBJ_255 /* NullabilitySpecifierSyntax.swift */, - OBJ_256 /* ProtocolQualifierSyntax.swift */, - OBJ_257 /* StorageClassSpecifierSyntax.swift */, - OBJ_258 /* TypePrefixSyntax.swift */, - OBJ_259 /* TypeQualifierSyntax.swift */, - OBJ_260 /* TypeSpecifierSyntax.swift */, - OBJ_261 /* TypeSpecifiers */, + OBJ_308 /* AlignmentSpecifierSyntax.swift */, + OBJ_309 /* ArcBehaviourSpecifierSyntax.swift */, + OBJ_310 /* BlockDeclarationSpecifierSyntax.swift */, + OBJ_311 /* FunctionSpecifierSyntax.swift */, + OBJ_312 /* IBOutletQualifierSyntax.swift */, + OBJ_313 /* NullabilitySpecifierSyntax.swift */, + OBJ_314 /* ProtocolQualifierSyntax.swift */, + OBJ_315 /* StorageClassSpecifierSyntax.swift */, + OBJ_316 /* TypePrefixSyntax.swift */, + OBJ_317 /* TypeQualifierSyntax.swift */, + OBJ_318 /* TypeSpecifierSyntax.swift */, + OBJ_319 /* TypeSpecifiers */, ); name = DeclarationSpecifiers; path = DeclarationSpecifiers; sourceTree = ""; }; - OBJ_26 /* UsageAnalysis */ = { - isa = PBXGroup; - children = ( - OBJ_27 /* BaseUsageAnalyzer.swift */, - OBJ_28 /* DefinitionUsage.swift */, - OBJ_29 /* IntentionCollectionUsageAnalyzer.swift */, - OBJ_30 /* LocalUsageAnalyzer.swift */, - OBJ_31 /* LocalUsageAnalyzerType.swift */, - OBJ_32 /* UsageAnalysis.swift */, - ); - name = UsageAnalysis; - path = UsageAnalysis; - sourceTree = ""; - }; - OBJ_261 /* TypeSpecifiers */ = { + OBJ_319 /* TypeSpecifiers */ = { isa = PBXGroup; children = ( - OBJ_262 /* EnumSpecifierSyntax.swift */, - OBJ_263 /* GenericTypeSpecifierSyntax.swift */, - OBJ_264 /* ScalarTypeSpecifierSyntax.swift */, - OBJ_265 /* StructOrUnionSpecifierSyntax.swift */, - OBJ_266 /* TypeIdentifierSyntax.swift */, + OBJ_320 /* EnumSpecifierSyntax.swift */, + OBJ_321 /* GenericTypeSpecifierSyntax.swift */, + OBJ_322 /* ScalarTypeSpecifierSyntax.swift */, + OBJ_323 /* StructOrUnionSpecifierSyntax.swift */, + OBJ_324 /* TypeIdentifierSyntax.swift */, ); name = TypeSpecifiers; path = TypeSpecifiers; sourceTree = ""; }; - OBJ_269 /* Declarators */ = { + OBJ_327 /* Declarators */ = { isa = PBXGroup; children = ( - OBJ_270 /* DeclaratorSyntax.swift */, - OBJ_271 /* DirectDeclaratorSyntax.swift */, - OBJ_272 /* DirectDeclarators */, - OBJ_276 /* FieldDeclaratorSyntax.swift */, + OBJ_328 /* DeclaratorSyntax.swift */, + OBJ_329 /* DirectDeclaratorSyntax.swift */, + OBJ_330 /* DirectDeclarators */, + OBJ_334 /* FieldDeclaratorSyntax.swift */, ); name = Declarators; path = Declarators; sourceTree = ""; }; - OBJ_272 /* DirectDeclarators */ = { + OBJ_33 /* AntlrCommons */ = { + isa = PBXGroup; + children = ( + OBJ_34 /* AntlrDiagnosticsErrorListener.swift */, + OBJ_35 /* AntlrParser.swift */, + OBJ_36 /* AntlrSettings.swift */, + OBJ_37 /* AntlrTypeAliases.swift */, + ); + name = AntlrCommons; + path = Sources/Core/AntlrCommons; + sourceTree = SOURCE_ROOT; + }; + OBJ_330 /* DirectDeclarators */ = { isa = PBXGroup; children = ( - OBJ_273 /* ArrayDeclaratorSyntax.swift */, - OBJ_274 /* BlockDeclaratorSyntax.swift */, - OBJ_275 /* FunctionDeclaratorSyntax.swift */, + OBJ_331 /* ArrayDeclaratorSyntax.swift */, + OBJ_332 /* BlockDeclaratorSyntax.swift */, + OBJ_333 /* FunctionDeclaratorSyntax.swift */, ); name = DirectDeclarators; path = DirectDeclarators; sourceTree = ""; }; - OBJ_280 /* TypeName */ = { + OBJ_338 /* TypeName */ = { isa = PBXGroup; children = ( - OBJ_281 /* AbstractDeclaratorSyntax.swift */, - OBJ_282 /* DirectAbstractDeclaratorSyntax.swift */, - OBJ_283 /* DirectAbstractDeclarators */, + OBJ_339 /* AbstractDeclaratorSyntax.swift */, + OBJ_340 /* DirectAbstractDeclaratorSyntax.swift */, + OBJ_341 /* DirectAbstractDeclarators */, ); name = TypeName; path = TypeName; sourceTree = ""; }; - OBJ_283 /* DirectAbstractDeclarators */ = { + OBJ_341 /* DirectAbstractDeclarators */ = { isa = PBXGroup; children = ( - OBJ_284 /* ArrayAbstractDeclaratorSyntax.swift */, - OBJ_285 /* BlockAbstractDeclaratorSyntax.swift */, - OBJ_286 /* FunctionAbstractDeclaratorSyntax.swift */, + OBJ_342 /* ArrayAbstractDeclaratorSyntax.swift */, + OBJ_343 /* BlockAbstractDeclaratorSyntax.swift */, + OBJ_344 /* FunctionAbstractDeclaratorSyntax.swift */, ); name = DirectAbstractDeclarators; path = DirectAbstractDeclarators; sourceTree = ""; }; - OBJ_308 /* ObjcParserAntlr */ = { + OBJ_366 /* ObjcParserAntlr */ = { isa = PBXGroup; children = ( - OBJ_309 /* ObjectiveCLexer.swift */, - OBJ_310 /* ObjectiveCParser.swift */, - OBJ_311 /* ObjectiveCParserBaseListener.swift */, - OBJ_312 /* ObjectiveCParserBaseVisitor.swift */, - OBJ_313 /* ObjectiveCParserListener.swift */, - OBJ_314 /* ObjectiveCParserVisitor.swift */, - OBJ_315 /* ObjectiveCPreprocessorLexer.swift */, - OBJ_316 /* ObjectiveCPreprocessorParser.swift */, - OBJ_317 /* ObjectiveCPreprocessorParserBaseListener.swift */, - OBJ_318 /* ObjectiveCPreprocessorParserBaseVisitor.swift */, - OBJ_319 /* ObjectiveCPreprocessorParserListener.swift */, - OBJ_320 /* ObjectiveCPreprocessorParserVisitor.swift */, - OBJ_321 /* shim.swift */, + OBJ_367 /* ObjectiveCLexer.swift */, + OBJ_368 /* ObjectiveCParser.swift */, + OBJ_369 /* ObjectiveCParserBaseListener.swift */, + OBJ_370 /* ObjectiveCParserBaseVisitor.swift */, + OBJ_371 /* ObjectiveCParserListener.swift */, + OBJ_372 /* ObjectiveCParserVisitor.swift */, + OBJ_373 /* ObjectiveCPreprocessorLexer.swift */, + OBJ_374 /* ObjectiveCPreprocessorParser.swift */, + OBJ_375 /* ObjectiveCPreprocessorParserBaseListener.swift */, + OBJ_376 /* ObjectiveCPreprocessorParserBaseVisitor.swift */, + OBJ_377 /* ObjectiveCPreprocessorParserListener.swift */, + OBJ_378 /* ObjectiveCPreprocessorParserVisitor.swift */, + OBJ_379 /* shim.swift */, ); name = ObjcParserAntlr; path = "Sources/Frontend/Objective-C/ObjcParserAntlr"; sourceTree = SOURCE_ROOT; }; - OBJ_322 /* ObjectiveCFrontend */ = { + OBJ_38 /* Commons */ = { + isa = PBXGroup; + children = ( + OBJ_39 /* ArgumentRewritingStrategy.swift */, + OBJ_40 /* CompoundedMappingType.swift */, + OBJ_41 /* CompoundedMappingTypeList.swift */, + OBJ_42 /* CoreGraphicsCompoundTypes.swift */, + OBJ_43 /* FoundationCompoundTypes.swift */, + OBJ_44 /* FunctionInvocationTransformer.swift */, + OBJ_45 /* Helpers.swift */, + OBJ_46 /* IncompleteKnownType+CompoundType.swift */, + OBJ_47 /* MethodInvocationRewriter.swift */, + OBJ_48 /* PostfixInvocationTransformer.swift */, + OBJ_49 /* PostfixTransformation.swift */, + OBJ_50 /* SignatureMapper.swift */, + OBJ_51 /* SwiftAttributeTransformationsExtractor.swift */, + OBJ_52 /* SwiftClassInterfaceParser.swift */, + OBJ_53 /* UIColorCompoundType.swift */, + OBJ_54 /* UIControlCompoundType.swift */, + OBJ_55 /* UIGestureRecognizerCompoundType.swift */, + OBJ_56 /* UILabelCompoundType.swift */, + OBJ_57 /* UIResponderCompoundType.swift */, + OBJ_58 /* UIViewCompoundType.swift */, + OBJ_59 /* UIViewControllerCompoundType.swift */, + ); + name = Commons; + path = Sources/Core/Commons; + sourceTree = SOURCE_ROOT; + }; + OBJ_380 /* ObjectiveCFrontend */ = { isa = PBXGroup; children = ( - OBJ_323 /* CPreprocessorDirectiveConverter.swift */, - OBJ_324 /* ExpressionPasses */, - OBJ_326 /* Intention+Metadata.swift */, - OBJ_327 /* Intention+TypedSource.swift */, - OBJ_328 /* IntentionPasses */, - OBJ_330 /* MandatoryIntentionPass.swift */, - OBJ_331 /* MandatorySyntaxNodePass.swift */, - OBJ_332 /* ObjcParserStatePool.swift */, - OBJ_333 /* ObjectiveC2SwiftRewriter.swift */, - OBJ_334 /* ObjectiveC2SwiftRewriterJob.swift */, - OBJ_335 /* ObjectiveC2SwiftRewriterJobBuilder.swift */, - OBJ_336 /* ObjectiveCASTReader.swift */, - OBJ_337 /* ObjectiveCASTReaderContext.swift */, - OBJ_338 /* ObjectiveCExprASTReader.swift */, - OBJ_339 /* ObjectiveCFileCollectionStep.swift */, - OBJ_340 /* ObjectiveCFileCollectionStepDelegate.swift */, - OBJ_341 /* ObjectiveCFrontend.swift */, - OBJ_342 /* ObjectiveCImportDirectiveFileCollectionDelegate.swift */, - OBJ_343 /* ObjectiveCIntentionCollector.swift */, - OBJ_344 /* ObjectiveCMethodSignatureConverter.swift */, - OBJ_345 /* ObjectiveCParserCache.swift */, - OBJ_346 /* ObjectiveCStatementASTReader.swift */, - OBJ_347 /* ObjectiveCSwiftRewriterService.swift */, + OBJ_381 /* CPreprocessorDirectiveConverter.swift */, + OBJ_382 /* ExpressionPasses */, + OBJ_384 /* Intention+Metadata.swift */, + OBJ_385 /* Intention+TypedSource.swift */, + OBJ_386 /* IntentionPasses */, + OBJ_388 /* MandatoryIntentionPass.swift */, + OBJ_389 /* MandatorySyntaxNodePass.swift */, + OBJ_390 /* ObjcParserStatePool.swift */, + OBJ_391 /* ObjectiveC2SwiftRewriter.swift */, + OBJ_392 /* ObjectiveC2SwiftRewriterJob.swift */, + OBJ_393 /* ObjectiveC2SwiftRewriterJobBuilder.swift */, + OBJ_394 /* ObjectiveCASTReader.swift */, + OBJ_395 /* ObjectiveCASTReaderContext.swift */, + OBJ_396 /* ObjectiveCExprASTReader.swift */, + OBJ_397 /* ObjectiveCFileCollectionStep.swift */, + OBJ_398 /* ObjectiveCFileCollectionStepDelegate.swift */, + OBJ_399 /* ObjectiveCFrontend.swift */, + OBJ_400 /* ObjectiveCImportDirectiveFileCollectionDelegate.swift */, + OBJ_401 /* ObjectiveCIntentionCollector.swift */, + OBJ_402 /* ObjectiveCMethodSignatureConverter.swift */, + OBJ_403 /* ObjectiveCParserCache.swift */, + OBJ_404 /* ObjectiveCStatementASTReader.swift */, + OBJ_405 /* ObjectiveCSwiftRewriterService.swift */, ); name = ObjectiveCFrontend; path = "Sources/Frontend/Objective-C/ObjectiveCFrontend"; sourceTree = SOURCE_ROOT; }; - OBJ_324 /* ExpressionPasses */ = { + OBJ_382 /* ExpressionPasses */ = { isa = PBXGroup; children = ( - OBJ_325 /* ObjectiveCASTCorrectorExpressionPass.swift */, + OBJ_383 /* ObjectiveCASTCorrectorExpressionPass.swift */, ); name = ExpressionPasses; path = ExpressionPasses; sourceTree = ""; }; - OBJ_328 /* IntentionPasses */ = { + OBJ_386 /* IntentionPasses */ = { isa = PBXGroup; children = ( - OBJ_329 /* ObjectiveCPropertyMergeIntentionPass.swift */, + OBJ_387 /* ObjectiveCPropertyMergeIntentionPass.swift */, ); name = IntentionPasses; path = IntentionPasses; sourceTree = ""; }; - OBJ_33 /* AntlrCommons */ = { - isa = PBXGroup; - children = ( - OBJ_34 /* AntlrDiagnosticsErrorListener.swift */, - OBJ_35 /* AntlrParser.swift */, - OBJ_36 /* AntlrSettings.swift */, - OBJ_37 /* AntlrTypeAliases.swift */, - ); - name = AntlrCommons; - path = Sources/Core/AntlrCommons; - sourceTree = SOURCE_ROOT; - }; - OBJ_348 /* SourcePreprocessors */ = { + OBJ_406 /* SourcePreprocessors */ = { isa = PBXGroup; children = ( - OBJ_349 /* QuickSpecPreprocessor.swift */, - OBJ_350 /* SourcePreprocessor.swift */, + OBJ_407 /* QuickSpecPreprocessor.swift */, + OBJ_408 /* SourcePreprocessor.swift */, ); name = SourcePreprocessors; path = Sources/Core/SourcePreprocessors; sourceTree = SOURCE_ROOT; }; - OBJ_351 /* SwiftAST */ = { + OBJ_409 /* SwiftAST */ = { isa = PBXGroup; children = ( - OBJ_352 /* AccessLevel.swift */, - OBJ_353 /* Comments */, - OBJ_355 /* Expression+Ext.swift */, - OBJ_356 /* Expression+Matcher.swift */, - OBJ_357 /* Expression+Transformer.swift */, - OBJ_358 /* Expression.swift */, - OBJ_359 /* Expression */, - OBJ_386 /* ExpressionKind.swift */, - OBJ_387 /* FunctionSignatureParser.swift */, - OBJ_388 /* Matchable.swift */, - OBJ_389 /* Ownership.swift */, - OBJ_390 /* Pattern.swift */, - OBJ_391 /* PostfixChainInverter.swift */, - OBJ_392 /* Serialization */, - OBJ_399 /* Statement+Matcher.swift */, - OBJ_400 /* Statement.swift */, - OBJ_401 /* Statement */, - OBJ_419 /* StatementKind.swift */, - OBJ_420 /* Structures */, - OBJ_429 /* SwiftOperator.swift */, - OBJ_430 /* SwiftRewriterAttribute.swift */, - OBJ_431 /* SwiftType+Stdlib.swift */, - OBJ_432 /* SwiftType.swift */, - OBJ_433 /* SwiftTypeParser.swift */, - OBJ_434 /* SyntaxNode.swift */, - OBJ_435 /* SyntaxNodeIterator.swift */, - OBJ_436 /* SyntaxNodeRewriter.swift */, - OBJ_437 /* TypeFormatter.swift */, - OBJ_438 /* UnknownASTContext.swift */, - OBJ_439 /* ValueMatcher+Matchers.swift */, - OBJ_440 /* ValueMatcher+PartialValueMatcher.swift */, - OBJ_441 /* ValueMatcher.swift */, - OBJ_442 /* ValueMatcherConvertible.swift */, - OBJ_443 /* ValueStorage.swift */, - OBJ_444 /* ValueTransformer.swift */, - OBJ_445 /* Visitor */, + OBJ_410 /* AccessLevel.swift */, + OBJ_411 /* Comments */, + OBJ_413 /* Expression+Ext.swift */, + OBJ_414 /* Expression+Matcher.swift */, + OBJ_415 /* Expression+Transformer.swift */, + OBJ_416 /* Expression.swift */, + OBJ_417 /* Expression */, + OBJ_444 /* ExpressionKind.swift */, + OBJ_445 /* FunctionSignatureParser.swift */, + OBJ_446 /* Matchable.swift */, + OBJ_447 /* Ownership.swift */, + OBJ_448 /* Pattern.swift */, + OBJ_449 /* PostfixChainInverter.swift */, + OBJ_450 /* Serialization */, + OBJ_457 /* Statement+Matcher.swift */, + OBJ_458 /* Statement.swift */, + OBJ_459 /* Statement */, + OBJ_477 /* StatementKind.swift */, + OBJ_478 /* Structures */, + OBJ_487 /* SwiftOperator.swift */, + OBJ_488 /* SwiftRewriterAttribute.swift */, + OBJ_489 /* SwiftType+Stdlib.swift */, + OBJ_490 /* SwiftType.swift */, + OBJ_491 /* SwiftTypeParser.swift */, + OBJ_492 /* SyntaxNode.swift */, + OBJ_493 /* SyntaxNodeIterator.swift */, + OBJ_494 /* SyntaxNodeRewriter.swift */, + OBJ_495 /* TypeFormatter.swift */, + OBJ_496 /* UnknownASTContext.swift */, + OBJ_497 /* ValueMatcher+Matchers.swift */, + OBJ_498 /* ValueMatcher+PartialValueMatcher.swift */, + OBJ_499 /* ValueMatcher.swift */, + OBJ_500 /* ValueMatcherConvertible.swift */, + OBJ_501 /* ValueStorage.swift */, + OBJ_502 /* ValueTransformer.swift */, + OBJ_503 /* Visitor */, ); name = SwiftAST; path = Sources/Core/SwiftAST; sourceTree = SOURCE_ROOT; }; - OBJ_353 /* Comments */ = { + OBJ_411 /* Comments */ = { isa = PBXGroup; children = ( - OBJ_354 /* SwiftComment.swift */, + OBJ_412 /* SwiftComment.swift */, ); name = Comments; path = Comments; sourceTree = ""; }; - OBJ_359 /* Expression */ = { + OBJ_417 /* Expression */ = { isa = PBXGroup; children = ( - OBJ_360 /* ArrayLiteralExpression.swift */, - OBJ_361 /* AssignmentExpression.swift */, - OBJ_362 /* BinaryExpression.swift */, - OBJ_363 /* BlockLiteralExpression.swift */, - OBJ_364 /* CastExpression.swift */, - OBJ_365 /* ConstantExpression.swift */, - OBJ_366 /* DictionaryLiteralExpression.swift */, - OBJ_367 /* ExpressionPostfixBuildable.swift */, - OBJ_368 /* IdentifierExpression.swift */, - OBJ_369 /* OptionalAccessPostfixBuilder.swift */, - OBJ_370 /* ParensExpression.swift */, - OBJ_371 /* Postfix */, - OBJ_376 /* PostfixExpression.swift */, - OBJ_377 /* PrefixExpression.swift */, - OBJ_378 /* SelectorExpression.swift */, - OBJ_379 /* SizeOfExpression.swift */, - OBJ_380 /* TernaryExpression.swift */, - OBJ_381 /* TryExpression.swift */, - OBJ_382 /* TupleExpression.swift */, - OBJ_383 /* TypeCheckExpression.swift */, - OBJ_384 /* UnaryExpression.swift */, - OBJ_385 /* UnknownExpression.swift */, + OBJ_418 /* ArrayLiteralExpression.swift */, + OBJ_419 /* AssignmentExpression.swift */, + OBJ_420 /* BinaryExpression.swift */, + OBJ_421 /* BlockLiteralExpression.swift */, + OBJ_422 /* CastExpression.swift */, + OBJ_423 /* ConstantExpression.swift */, + OBJ_424 /* DictionaryLiteralExpression.swift */, + OBJ_425 /* ExpressionPostfixBuildable.swift */, + OBJ_426 /* IdentifierExpression.swift */, + OBJ_427 /* OptionalAccessPostfixBuilder.swift */, + OBJ_428 /* ParensExpression.swift */, + OBJ_429 /* Postfix */, + OBJ_434 /* PostfixExpression.swift */, + OBJ_435 /* PrefixExpression.swift */, + OBJ_436 /* SelectorExpression.swift */, + OBJ_437 /* SizeOfExpression.swift */, + OBJ_438 /* TernaryExpression.swift */, + OBJ_439 /* TryExpression.swift */, + OBJ_440 /* TupleExpression.swift */, + OBJ_441 /* TypeCheckExpression.swift */, + OBJ_442 /* UnaryExpression.swift */, + OBJ_443 /* UnknownExpression.swift */, ); name = Expression; path = Expression; sourceTree = ""; }; - OBJ_371 /* Postfix */ = { + OBJ_429 /* Postfix */ = { isa = PBXGroup; children = ( - OBJ_372 /* FunctionCallPostfix.swift */, - OBJ_373 /* MemberPostfix.swift */, - OBJ_374 /* Postfix.swift */, - OBJ_375 /* SubscriptPostfix.swift */, + OBJ_430 /* FunctionCallPostfix.swift */, + OBJ_431 /* MemberPostfix.swift */, + OBJ_432 /* Postfix.swift */, + OBJ_433 /* SubscriptPostfix.swift */, ); name = Postfix; path = Postfix; sourceTree = ""; }; - OBJ_38 /* Commons */ = { - isa = PBXGroup; - children = ( - OBJ_39 /* ArgumentRewritingStrategy.swift */, - OBJ_40 /* CompoundedMappingType.swift */, - OBJ_41 /* CompoundedMappingTypeList.swift */, - OBJ_42 /* CoreGraphicsCompoundTypes.swift */, - OBJ_43 /* FoundationCompoundTypes.swift */, - OBJ_44 /* FunctionInvocationTransformer.swift */, - OBJ_45 /* Helpers.swift */, - OBJ_46 /* IncompleteKnownType+CompoundType.swift */, - OBJ_47 /* MethodInvocationRewriter.swift */, - OBJ_48 /* PostfixInvocationTransformer.swift */, - OBJ_49 /* PostfixTransformation.swift */, - OBJ_50 /* SignatureMapper.swift */, - OBJ_51 /* SwiftAttributeTransformationsExtractor.swift */, - OBJ_52 /* SwiftClassInterfaceParser.swift */, - OBJ_53 /* UIColorCompoundType.swift */, - OBJ_54 /* UIControlCompoundType.swift */, - OBJ_55 /* UIGestureRecognizerCompoundType.swift */, - OBJ_56 /* UILabelCompoundType.swift */, - OBJ_57 /* UIResponderCompoundType.swift */, - OBJ_58 /* UIViewCompoundType.swift */, - OBJ_59 /* UIViewControllerCompoundType.swift */, - ); - name = Commons; - path = Sources/Core/Commons; - sourceTree = SOURCE_ROOT; - }; - OBJ_392 /* Serialization */ = { + OBJ_450 /* Serialization */ = { isa = PBXGroup; children = ( - OBJ_393 /* KeyedDecodingContainerProtocol+SwiftAST.swift */, - OBJ_394 /* KeyedEncodingContainerProtocol+SwiftAST.swift */, - OBJ_395 /* SerializationOptions.swift */, - OBJ_396 /* SwiftASTSerializer.swift */, - OBJ_397 /* UnkeyedDecodingContainer+SwiftAST.swift */, - OBJ_398 /* UnkeyedEncodingContainer+SwiftAST.swift */, + OBJ_451 /* KeyedDecodingContainerProtocol+SwiftAST.swift */, + OBJ_452 /* KeyedEncodingContainerProtocol+SwiftAST.swift */, + OBJ_453 /* SerializationOptions.swift */, + OBJ_454 /* SwiftASTSerializer.swift */, + OBJ_455 /* UnkeyedDecodingContainer+SwiftAST.swift */, + OBJ_456 /* UnkeyedEncodingContainer+SwiftAST.swift */, ); name = Serialization; path = Serialization; sourceTree = ""; }; - OBJ_401 /* Statement */ = { + OBJ_459 /* Statement */ = { isa = PBXGroup; children = ( - OBJ_402 /* BreakStatement.swift */, - OBJ_403 /* CompoundStatement.swift */, - OBJ_404 /* ContinueStatement.swift */, - OBJ_405 /* DeferStatement.swift */, - OBJ_406 /* DoStatement.swift */, - OBJ_407 /* ExpressionsStatement.swift */, - OBJ_408 /* FallthroughStatement.swift */, - OBJ_409 /* ForStatement.swift */, - OBJ_410 /* IfStatement.swift */, - OBJ_411 /* LocalFunctionStatement.swift */, - OBJ_412 /* RepeatWhileStatement.swift */, - OBJ_413 /* ReturnStatement.swift */, - OBJ_414 /* SwitchStatement.swift */, - OBJ_415 /* ThrowStatement.swift */, - OBJ_416 /* UnknownStatement.swift */, - OBJ_417 /* VariableDeclarationsStatement.swift */, - OBJ_418 /* WhiteStatement.swift */, + OBJ_460 /* BreakStatement.swift */, + OBJ_461 /* CompoundStatement.swift */, + OBJ_462 /* ContinueStatement.swift */, + OBJ_463 /* DeferStatement.swift */, + OBJ_464 /* DoStatement.swift */, + OBJ_465 /* ExpressionsStatement.swift */, + OBJ_466 /* FallthroughStatement.swift */, + OBJ_467 /* ForStatement.swift */, + OBJ_468 /* IfStatement.swift */, + OBJ_469 /* LocalFunctionStatement.swift */, + OBJ_470 /* RepeatWhileStatement.swift */, + OBJ_471 /* ReturnStatement.swift */, + OBJ_472 /* SwitchStatement.swift */, + OBJ_473 /* ThrowStatement.swift */, + OBJ_474 /* UnknownStatement.swift */, + OBJ_475 /* VariableDeclarationsStatement.swift */, + OBJ_476 /* WhiteStatement.swift */, ); name = Statement; path = Statement; sourceTree = ""; }; - OBJ_420 /* Structures */ = { + OBJ_478 /* Structures */ = { isa = PBXGroup; children = ( - OBJ_421 /* FunctionIdentifier.swift */, - OBJ_422 /* FunctionSignature.swift */, - OBJ_423 /* LocalFunction.swift */, - OBJ_424 /* ObjcPropertyAttribute.swift */, - OBJ_425 /* ParameterSignature.swift */, - OBJ_426 /* SelectorSignature.swift */, - OBJ_427 /* SubscriptIdentifier.swift */, - OBJ_428 /* SubscriptSignature.swift */, + OBJ_479 /* FunctionIdentifier.swift */, + OBJ_480 /* FunctionSignature.swift */, + OBJ_481 /* LocalFunction.swift */, + OBJ_482 /* ObjcPropertyAttribute.swift */, + OBJ_483 /* ParameterSignature.swift */, + OBJ_484 /* SelectorSignature.swift */, + OBJ_485 /* SubscriptIdentifier.swift */, + OBJ_486 /* SubscriptSignature.swift */, ); name = Structures; path = Structures; sourceTree = ""; }; - OBJ_445 /* Visitor */ = { + OBJ_5 = { + isa = PBXGroup; + children = ( + OBJ_6 /* Package.swift */, + OBJ_7 /* Sources */, + OBJ_708 /* Tests */, + OBJ_970 /* Dependencies */, + OBJ_1365 /* Products */, + OBJ_1436 /* AntlrGrammars */, + OBJ_1437 /* utils */, + OBJ_1438 /* codecov.yml */, + OBJ_1439 /* README.md */, + OBJ_1440 /* Gemfile.lock */, + OBJ_1441 /* xcodeproj-prep.rb */, + OBJ_1442 /* Gemfile */, + OBJ_1443 /* gen-_cswiftsyntax-module-map.sh */, + OBJ_1444 /* copy-libswiftsyntax.sh */, + OBJ_1445 /* SwiftRewriter.code-workspace */, + OBJ_1446 /* azure-pipelines.yml */, + OBJ_1447 /* Architecture.md */, + OBJ_1448 /* LICENSE.md */, + ); + path = ""; + sourceTree = ""; + }; + OBJ_503 /* Visitor */ = { isa = PBXGroup; children = ( - OBJ_446 /* AnonymousSyntaxNodeStatefulVisitor.swift */, - OBJ_447 /* AnonymousSyntaxNodeVisitor.swift */, - OBJ_448 /* BaseSyntaxNodeVisitor.swift */, - OBJ_449 /* ExpressionVisitor.swift */, - OBJ_450 /* StatementStatefulVisitor.swift */, - OBJ_451 /* StatementVisitor.swift */, + OBJ_504 /* AnonymousSyntaxNodeStatefulVisitor.swift */, + OBJ_505 /* AnonymousSyntaxNodeVisitor.swift */, + OBJ_506 /* BaseSyntaxNodeVisitor.swift */, + OBJ_507 /* ExpressionVisitor.swift */, + OBJ_508 /* StatementStatefulVisitor.swift */, + OBJ_509 /* StatementVisitor.swift */, ); name = Visitor; path = Visitor; sourceTree = ""; }; - OBJ_452 /* SwiftRewriter */ = { + OBJ_510 /* SwiftRewriter */ = { isa = PBXGroup; children = ( - OBJ_453 /* GlobalOptions.swift */, - OBJ_454 /* ObjectiveCCommand.swift */, - OBJ_455 /* ObjectiveCFrontendImpl.swift */, - OBJ_456 /* ObjectiveCSwiftRewriterServiceImpl.swift */, - OBJ_457 /* StdoutFileCollectionStepListener.swift */, - OBJ_458 /* SwiftRewriterCommand.swift */, - OBJ_459 /* Target.swift */, - OBJ_460 /* main.swift */, + OBJ_511 /* GlobalOptions.swift */, + OBJ_512 /* JavaScriptCommand.swift */, + OBJ_513 /* JavaScriptFrontendImpl.swift */, + OBJ_514 /* JavaScriptSwiftRewriterServiceImpl.swift */, + OBJ_515 /* ObjectiveCCommand.swift */, + OBJ_516 /* ObjectiveCFrontendImpl.swift */, + OBJ_517 /* ObjectiveCSwiftRewriterServiceImpl.swift */, + OBJ_518 /* StdoutFileCollectionStepListener.swift */, + OBJ_519 /* SwiftRewriterCommand.swift */, + OBJ_520 /* Target.swift */, + OBJ_521 /* main.swift */, ); name = SwiftRewriter; path = Sources/SwiftRewriter; sourceTree = SOURCE_ROOT; }; - OBJ_461 /* SwiftRewriterCLI */ = { + OBJ_522 /* SwiftRewriterCLI */ = { isa = PBXGroup; children = ( - OBJ_462 /* FilesExplorer.swift */, - OBJ_463 /* Menu.swift */, - OBJ_464 /* Stopwatch.swift */, - OBJ_465 /* SwiftRewriterFrontend.swift */, + OBJ_523 /* FilesExplorer.swift */, + OBJ_524 /* Menu.swift */, + OBJ_525 /* Stopwatch.swift */, + OBJ_526 /* SwiftRewriterFrontend.swift */, ); name = SwiftRewriterCLI; path = Sources/SwiftRewriterCLI; sourceTree = SOURCE_ROOT; }; - OBJ_466 /* SwiftRewriterLib */ = { + OBJ_527 /* SwiftRewriterLib */ = { isa = PBXGroup; children = ( - OBJ_467 /* ColorizeSyntaxVisitor.swift */, - OBJ_468 /* DiskInputFile.swift */, - OBJ_469 /* FileDiskProvider.swift */, - OBJ_470 /* FileProvider.swift */, - OBJ_471 /* FileWriterOutput.swift */, - OBJ_472 /* InputSourcesProvider.swift */, - OBJ_473 /* NullWriterOutput.swift */, - OBJ_474 /* PathFilter.swift */, - OBJ_475 /* SingleInputProvider.swift */, - OBJ_476 /* StdoutWriterOutput.swift */, - OBJ_477 /* SwiftASTCommentApplier.swift */, - OBJ_478 /* SwiftRewriterService.swift */, - OBJ_479 /* SwiftSyntaxOptions.swift */, - OBJ_480 /* SwiftWriter.swift */, - OBJ_481 /* WriterOutput.swift */, + OBJ_528 /* ColorizeSyntaxVisitor.swift */, + OBJ_529 /* DiskInputFile.swift */, + OBJ_530 /* FileDiskProvider.swift */, + OBJ_531 /* FileProvider.swift */, + OBJ_532 /* FileWriterOutput.swift */, + OBJ_533 /* InputSourcesProvider.swift */, + OBJ_534 /* NullWriterOutput.swift */, + OBJ_535 /* PathFilter.swift */, + OBJ_536 /* SingleInputProvider.swift */, + OBJ_537 /* StdoutWriterOutput.swift */, + OBJ_538 /* SwiftASTCommentApplier.swift */, + OBJ_539 /* SwiftRewriterService.swift */, + OBJ_540 /* SwiftSyntaxOptions.swift */, + OBJ_541 /* SwiftWriter.swift */, + OBJ_542 /* WriterOutput.swift */, ); name = SwiftRewriterLib; path = Sources/SwiftRewriterLib; sourceTree = SOURCE_ROOT; }; - OBJ_482 /* SwiftSyntaxRewriterPasses */ = { + OBJ_543 /* SwiftSyntaxRewriterPasses */ = { isa = PBXGroup; children = ( - OBJ_483 /* DefaultSyntaxPassProvider.swift */, - OBJ_484 /* StatementSpacingSyntaxPass.swift */, + OBJ_544 /* DefaultSyntaxPassProvider.swift */, + OBJ_545 /* StatementSpacingSyntaxPass.swift */, ); name = SwiftSyntaxRewriterPasses; path = Sources/Core/SwiftSyntaxRewriterPasses; sourceTree = SOURCE_ROOT; }; - OBJ_485 /* SwiftSyntaxSupport */ = { + OBJ_546 /* SwiftSyntaxSupport */ = { isa = PBXGroup; children = ( - OBJ_486 /* BaseSwiftSyntaxProducer.swift */, - OBJ_487 /* DecoratableElement.swift */, - OBJ_488 /* ModifiersSyntaxDecorators.swift */, - OBJ_489 /* StartTokenHandler.swift */, - OBJ_490 /* SwiftSyntax+Ext.swift */, - OBJ_491 /* SwiftSyntaxProducer+Exp.swift */, - OBJ_492 /* SwiftSyntaxProducer+Stmt.swift */, - OBJ_493 /* SwiftSyntaxProducer.swift */, - OBJ_494 /* SwiftSyntaxProducerDelegate.swift */, - OBJ_495 /* SwiftSyntaxRewriterPass.swift */, - OBJ_496 /* SwiftSyntaxRewriterPassApplier.swift */, - OBJ_497 /* SwiftTypeConverter.swift */, - OBJ_498 /* VariableDeclSyntaxGenerator.swift */, - OBJ_499 /* VariableDeclarationGrouping.swift */, + OBJ_547 /* BaseSwiftSyntaxProducer.swift */, + OBJ_548 /* DecoratableElement.swift */, + OBJ_549 /* ModifiersSyntaxDecorators.swift */, + OBJ_550 /* StartTokenHandler.swift */, + OBJ_551 /* SwiftSyntax+Ext.swift */, + OBJ_552 /* SwiftSyntaxProducer+Exp.swift */, + OBJ_553 /* SwiftSyntaxProducer+Stmt.swift */, + OBJ_554 /* SwiftSyntaxProducer.swift */, + OBJ_555 /* SwiftSyntaxProducerDelegate.swift */, + OBJ_556 /* SwiftSyntaxRewriterPass.swift */, + OBJ_557 /* SwiftSyntaxRewriterPassApplier.swift */, + OBJ_558 /* SwiftTypeConverter.swift */, + OBJ_559 /* VariableDeclSyntaxGenerator.swift */, + OBJ_560 /* VariableDeclarationGrouping.swift */, ); name = SwiftSyntaxSupport; path = Sources/Core/SwiftSyntaxSupport; sourceTree = SOURCE_ROOT; }; - OBJ_5 = { - isa = PBXGroup; - children = ( - OBJ_6 /* Package.swift */, - OBJ_7 /* Sources */, - OBJ_643 /* Tests */, - OBJ_882 /* Dependencies */, - OBJ_1277 /* Products */, - OBJ_1342 /* AntlrGrammars */, - OBJ_1343 /* utils */, - OBJ_1344 /* codecov.yml */, - OBJ_1345 /* README.md */, - OBJ_1346 /* objectivecparser-stateful.diff */, - OBJ_1347 /* Gemfile.lock */, - OBJ_1348 /* xcodeproj-prep.rb */, - OBJ_1349 /* Gemfile */, - OBJ_1350 /* gen-_cswiftsyntax-module-map.sh */, - OBJ_1351 /* copy-libswiftsyntax.sh */, - OBJ_1352 /* SwiftRewriter.code-workspace */, - OBJ_1353 /* azure-pipelines.yml */, - OBJ_1354 /* Architecture.md */, - OBJ_1355 /* LICENSE.md */, - ); - path = ""; - sourceTree = ""; - }; - OBJ_500 /* TestCommons */ = { + OBJ_561 /* TestCommons */ = { isa = PBXGroup; children = ( - OBJ_501 /* Array+Testing.swift */, - OBJ_502 /* Asserter.swift */, - OBJ_503 /* Asserters */, - OBJ_562 /* Builders */, - OBJ_568 /* ExpressionPassTestCase.swift */, - OBJ_569 /* ExpressionPrinter.swift */, - OBJ_570 /* MersenneTwister.swift */, - OBJ_571 /* StatementPrinter.swift */, - OBJ_572 /* StringDiffTesting.swift */, - OBJ_573 /* SyntaxNode+TestUtils.swift */, - OBJ_574 /* TestWriterOutput.swift */, - OBJ_575 /* VirtualFileDisk.swift */, + OBJ_562 /* Array+Testing.swift */, + OBJ_563 /* Asserter.swift */, + OBJ_564 /* Asserters */, + OBJ_627 /* Builders */, + OBJ_633 /* ExpressionPassTestCase.swift */, + OBJ_634 /* ExpressionPrinter.swift */, + OBJ_635 /* MersenneTwister.swift */, + OBJ_636 /* StatementPrinter.swift */, + OBJ_637 /* StringDiffTesting.swift */, + OBJ_638 /* SyntaxNode+TestUtils.swift */, + OBJ_639 /* TestWriterOutput.swift */, + OBJ_640 /* VirtualFileDisk.swift */, ); name = TestCommons; path = Sources/TestCommons; sourceTree = SOURCE_ROOT; }; - OBJ_503 /* Asserters */ = { + OBJ_564 /* Asserters */ = { isa = PBXGroup; children = ( - OBJ_504 /* Antlr+Asserter.swift */, - OBJ_505 /* Asserter+KeyPath.swift */, - OBJ_506 /* GrammarModelBase */, - OBJ_509 /* Intentions */, - OBJ_522 /* ObjcGrammarModels */, - OBJ_546 /* ObjcParser */, - OBJ_548 /* Stdlib */, - OBJ_555 /* SwiftAST */, - OBJ_560 /* Utils */, + OBJ_565 /* Antlr+Asserter.swift */, + OBJ_566 /* Asserter+KeyPath.swift */, + OBJ_567 /* GrammarModelBase */, + OBJ_570 /* Intentions */, + OBJ_583 /* JsGrammarModels */, + OBJ_587 /* ObjcGrammarModels */, + OBJ_611 /* ObjcParser */, + OBJ_613 /* Stdlib */, + OBJ_620 /* SwiftAST */, + OBJ_625 /* Utils */, ); name = Asserters; path = Asserters; sourceTree = ""; }; - OBJ_506 /* GrammarModelBase */ = { + OBJ_567 /* GrammarModelBase */ = { isa = PBXGroup; children = ( - OBJ_507 /* ASTNode+Asserter.swift */, - OBJ_508 /* RawCodeComment+Asserter.swift */, + OBJ_568 /* ASTNode+Asserter.swift */, + OBJ_569 /* RawCodeComment+Asserter.swift */, ); name = GrammarModelBase; path = GrammarModelBase; sourceTree = ""; }; - OBJ_509 /* Intentions */ = { + OBJ_570 /* Intentions */ = { isa = PBXGroup; children = ( - OBJ_510 /* ClassExtensionGenerationIntention+Asserter.swift */, - OBJ_511 /* FileGenerationIntention+Asserter.swift */, - OBJ_512 /* FromSourceIntention+Asserter.swift */, - OBJ_513 /* FunctionBodyIntention+Asserter.swift */, - OBJ_514 /* FunctionIntention+Asserter.swift */, - OBJ_515 /* Historic+Asserter.swift */, - OBJ_516 /* IntentionCollection+Asserter.swift */, - OBJ_517 /* MethodGenerationIntention+Asserter.swift */, - OBJ_518 /* PropertyGenerationIntention+Asserter.swift */, - OBJ_519 /* SubscriptGenerationIntention+Asserter.swift */, - OBJ_520 /* TypeGenerationIntention+Asserter.swift */, - OBJ_521 /* ValueStorageIntention+Asserter.swift */, + OBJ_571 /* ClassExtensionGenerationIntention+Asserter.swift */, + OBJ_572 /* FileGenerationIntention+Asserter.swift */, + OBJ_573 /* FromSourceIntention+Asserter.swift */, + OBJ_574 /* FunctionBodyIntention+Asserter.swift */, + OBJ_575 /* FunctionIntention+Asserter.swift */, + OBJ_576 /* Historic+Asserter.swift */, + OBJ_577 /* IntentionCollection+Asserter.swift */, + OBJ_578 /* MethodGenerationIntention+Asserter.swift */, + OBJ_579 /* PropertyGenerationIntention+Asserter.swift */, + OBJ_580 /* SubscriptGenerationIntention+Asserter.swift */, + OBJ_581 /* TypeGenerationIntention+Asserter.swift */, + OBJ_582 /* ValueStorageIntention+Asserter.swift */, ); name = Intentions; path = Intentions; sourceTree = ""; }; - OBJ_522 /* ObjcGrammarModels */ = { + OBJ_583 /* JsGrammarModels */ = { + isa = PBXGroup; + children = ( + OBJ_584 /* JsFunctionBodyNode+Asserter.swift */, + OBJ_585 /* JsFunctionDefinitionNode+Asserter.swift */, + OBJ_586 /* JsIdentifierNode+Asserter.swift */, + ); + name = JsGrammarModels; + path = JsGrammarModels; + sourceTree = ""; + }; + OBJ_587 /* ObjcGrammarModels */ = { isa = PBXGroup; children = ( - OBJ_523 /* ObjcASTNode+Asserter.swift */, - OBJ_524 /* ObjcClassCategoryInterfaceNode+Asserter.swift */, - OBJ_525 /* ObjcClassInterfaceNode+Asserter.swift */, - OBJ_526 /* ObjcConstantExpressionNode+Asserter.swift */, - OBJ_527 /* ObjcEnumCaseNode+Asserter.swift */, - OBJ_528 /* ObjcEnumDeclarationNode+Asserter.swift */, - OBJ_529 /* ObjcExpressionNode+Asserter.swift */, - OBJ_530 /* ObjcFunctionDefinitionNode+Asserter.swift */, - OBJ_531 /* ObjcFunctionParameterNode+Asserter.swift */, - OBJ_532 /* ObjcIdentifierNode+Asserter.swift */, - OBJ_533 /* ObjcInitialExpressionNode+Asserter.swift */, - OBJ_534 /* ObjcMethodBodyNode+Asserter.swift */, - OBJ_535 /* ObjcMethodDefinitionNode+Asserter.swift */, - OBJ_536 /* ObjcPropertyAttributesListNode+Asserter.swift */, - OBJ_537 /* ObjcPropertyDefinitionNode+Asserter.swift */, - OBJ_538 /* ObjcPropertyImplementationNode+Asserter.swift */, - OBJ_539 /* ObjcPropertySynthesizeListNode+Asserter.swift */, - OBJ_540 /* ObjcProtocolDeclaration+Asserter.swift */, - OBJ_541 /* ObjcStructDeclarationNode+Asserter.swift */, - OBJ_542 /* ObjcStructFieldNode+Asserter.swift */, - OBJ_543 /* ObjcTypeNameNode+Asserter.swift */, - OBJ_544 /* ObjcTypedefNode+Asserter.swift */, - OBJ_545 /* ObjcVariableDeclarationNode+Asserter.swift */, + OBJ_588 /* ObjcASTNode+Asserter.swift */, + OBJ_589 /* ObjcClassCategoryInterfaceNode+Asserter.swift */, + OBJ_590 /* ObjcClassInterfaceNode+Asserter.swift */, + OBJ_591 /* ObjcConstantExpressionNode+Asserter.swift */, + OBJ_592 /* ObjcEnumCaseNode+Asserter.swift */, + OBJ_593 /* ObjcEnumDeclarationNode+Asserter.swift */, + OBJ_594 /* ObjcExpressionNode+Asserter.swift */, + OBJ_595 /* ObjcFunctionDefinitionNode+Asserter.swift */, + OBJ_596 /* ObjcFunctionParameterNode+Asserter.swift */, + OBJ_597 /* ObjcIdentifierNode+Asserter.swift */, + OBJ_598 /* ObjcInitialExpressionNode+Asserter.swift */, + OBJ_599 /* ObjcMethodBodyNode+Asserter.swift */, + OBJ_600 /* ObjcMethodDefinitionNode+Asserter.swift */, + OBJ_601 /* ObjcPropertyAttributesListNode+Asserter.swift */, + OBJ_602 /* ObjcPropertyDefinitionNode+Asserter.swift */, + OBJ_603 /* ObjcPropertyImplementationNode+Asserter.swift */, + OBJ_604 /* ObjcPropertySynthesizeListNode+Asserter.swift */, + OBJ_605 /* ObjcProtocolDeclaration+Asserter.swift */, + OBJ_606 /* ObjcStructDeclarationNode+Asserter.swift */, + OBJ_607 /* ObjcStructFieldNode+Asserter.swift */, + OBJ_608 /* ObjcTypeNameNode+Asserter.swift */, + OBJ_609 /* ObjcTypedefNode+Asserter.swift */, + OBJ_610 /* ObjcVariableDeclarationNode+Asserter.swift */, ); name = ObjcGrammarModels; path = ObjcGrammarModels; sourceTree = ""; }; - OBJ_546 /* ObjcParser */ = { + OBJ_60 /* ExpressionPasses */ = { + isa = PBXGroup; + children = ( + OBJ_61 /* ASTRewriterPass.swift */, + OBJ_62 /* ASTRewriterPassApplier.swift */, + OBJ_63 /* ASTRewriterPassContext.swift */, + OBJ_64 /* ASTSimplifier.swift */, + OBJ_65 /* AllocInitExpressionPass.swift */, + OBJ_66 /* BaseExpressionPass.swift */, + OBJ_67 /* CanonicalNameExpressionPass.swift */, + OBJ_68 /* CompoundTypeApplierExpressionPass.swift */, + OBJ_69 /* CoreGraphicsExpressionPass.swift */, + OBJ_70 /* EnumRewriterExpressionPass.swift */, + OBJ_71 /* FoundationExpressionPass.swift */, + OBJ_72 /* InitRewriterExpressionPass.swift */, + OBJ_73 /* LocalConstantPromotionExpressionPass.swift */, + OBJ_74 /* MethodInvocationTransformer.swift */, + OBJ_75 /* MethodsToPropertyTransformer.swift */, + OBJ_76 /* NilValueTransformationsPass.swift */, + OBJ_77 /* NumberCommonsExpressionPass.swift */, + OBJ_78 /* PropertyAsMethodAccessCorrectingExpressionPass.swift */, + OBJ_79 /* PropertyInvocationTransformer.swift */, + OBJ_80 /* StaticConstructorTransformer.swift */, + OBJ_81 /* UIKitExpressionPass.swift */, + OBJ_82 /* ValueTransformer+PostfixTransformer.swift */, + OBJ_83 /* VariableNullabilityPromotionExpressionPass.swift */, + ); + name = ExpressionPasses; + path = Sources/Core/ExpressionPasses; + sourceTree = SOURCE_ROOT; + }; + OBJ_611 /* ObjcParser */ = { isa = PBXGroup; children = ( - OBJ_547 /* ObjcImportDecl+Asserter.swift */, + OBJ_612 /* ObjcImportDecl+Asserter.swift */, ); name = ObjcParser; path = ObjcParser; sourceTree = ""; }; - OBJ_548 /* Stdlib */ = { + OBJ_613 /* Stdlib */ = { isa = PBXGroup; children = ( - OBJ_549 /* AnyObject+Asserter.swift */, - OBJ_550 /* Bool+Asserter.swift */, - OBJ_551 /* Collection+Asserter.swift */, - OBJ_552 /* Equatable+Asserter.swift */, - OBJ_553 /* IteratorProtocol+Asserter.swift */, - OBJ_554 /* Sequence+Asserter.swift */, + OBJ_614 /* AnyObject+Asserter.swift */, + OBJ_615 /* Bool+Asserter.swift */, + OBJ_616 /* Collection+Asserter.swift */, + OBJ_617 /* Equatable+Asserter.swift */, + OBJ_618 /* IteratorProtocol+Asserter.swift */, + OBJ_619 /* Sequence+Asserter.swift */, ); name = Stdlib; path = Stdlib; sourceTree = ""; }; - OBJ_555 /* SwiftAST */ = { + OBJ_620 /* SwiftAST */ = { isa = PBXGroup; children = ( - OBJ_556 /* Expression+Asserter.swift */, - OBJ_557 /* FunctionSignature+Asserter.swift */, - OBJ_558 /* ParameterSignature+Asserter.swift */, - OBJ_559 /* Statement+Asserter.swift */, + OBJ_621 /* Expression+Asserter.swift */, + OBJ_622 /* FunctionSignature+Asserter.swift */, + OBJ_623 /* ParameterSignature+Asserter.swift */, + OBJ_624 /* Statement+Asserter.swift */, ); name = SwiftAST; path = SwiftAST; sourceTree = ""; }; - OBJ_560 /* Utils */ = { + OBJ_625 /* Utils */ = { isa = PBXGroup; children = ( - OBJ_561 /* SourceRange+Asserter.swift */, + OBJ_626 /* SourceRange+Asserter.swift */, ); name = Utils; path = Utils; sourceTree = ""; }; - OBJ_562 /* Builders */ = { + OBJ_627 /* Builders */ = { isa = PBXGroup; children = ( - OBJ_563 /* DeclarationBuilder.swift */, - OBJ_564 /* IntentionCollectionBuilder.swift */, - OBJ_565 /* MemberBuilder.swift */, - OBJ_566 /* TypeBuilder.swift */, - OBJ_567 /* _FunctionBuilder.swift */, + OBJ_628 /* DeclarationBuilder.swift */, + OBJ_629 /* IntentionCollectionBuilder.swift */, + OBJ_630 /* MemberBuilder.swift */, + OBJ_631 /* TypeBuilder.swift */, + OBJ_632 /* _FunctionBuilder.swift */, ); name = Builders; path = Builders; sourceTree = ""; }; - OBJ_576 /* TypeDefinitions */ = { + OBJ_641 /* TypeDefinitions */ = { isa = PBXGroup; children = ( - OBJ_577 /* ios-framework-protocols.json */, - OBJ_578 /* ios-framework-classes.json */, - OBJ_579 /* TypeDefinitions.swift */, + OBJ_642 /* ios-framework-protocols.json */, + OBJ_643 /* ios-framework-classes.json */, + OBJ_644 /* TypeDefinitions.swift */, ); name = TypeDefinitions; path = "Sources/Frontend/Objective-C/TypeDefinitions"; sourceTree = SOURCE_ROOT; }; - OBJ_580 /* TypeSystem */ = { + OBJ_645 /* TypeSystem */ = { isa = PBXGroup; children = ( - OBJ_581 /* CodeDefinition */, - OBJ_588 /* CodeScope */, - OBJ_595 /* CompoundKnownType.swift */, - OBJ_596 /* GlobalsProvider.swift */, - OBJ_597 /* IntentionCollectionTypeSystem.swift */, - OBJ_598 /* MemberLookup */, - OBJ_605 /* OverloadResolver.swift */, - OBJ_606 /* Providers */, - OBJ_609 /* TypeCategory.swift */, - OBJ_610 /* TypeMapper.swift */, - OBJ_611 /* TypeMemberLookup.swift */, - OBJ_612 /* TypeResolution */, - OBJ_623 /* TypeSystem.swift */, + OBJ_646 /* CodeDefinition */, + OBJ_653 /* CodeScope */, + OBJ_660 /* CompoundKnownType.swift */, + OBJ_661 /* GlobalsProvider.swift */, + OBJ_662 /* IntentionCollectionTypeSystem.swift */, + OBJ_663 /* MemberLookup */, + OBJ_670 /* OverloadResolver.swift */, + OBJ_671 /* Providers */, + OBJ_674 /* TypeCategory.swift */, + OBJ_675 /* TypeMapper.swift */, + OBJ_676 /* TypeMemberLookup.swift */, + OBJ_677 /* TypeResolution */, + OBJ_688 /* TypeSystem.swift */, ); name = TypeSystem; path = Sources/Core/TypeSystem; sourceTree = SOURCE_ROOT; }; - OBJ_581 /* CodeDefinition */ = { + OBJ_646 /* CodeDefinition */ = { isa = PBXGroup; children = ( - OBJ_582 /* CodeDefinition.swift */, - OBJ_583 /* GlobalCodeDefinition.swift */, - OBJ_584 /* GlobalIntentionCodeDefinition.swift */, - OBJ_585 /* KnownMemberCodeDefinition.swift */, - OBJ_586 /* LocalCodeDefinition.swift */, - OBJ_587 /* TypeCodeDefinition.swift */, + OBJ_647 /* CodeDefinition.swift */, + OBJ_648 /* GlobalCodeDefinition.swift */, + OBJ_649 /* GlobalIntentionCodeDefinition.swift */, + OBJ_650 /* KnownMemberCodeDefinition.swift */, + OBJ_651 /* LocalCodeDefinition.swift */, + OBJ_652 /* TypeCodeDefinition.swift */, ); name = CodeDefinition; path = CodeDefinition; sourceTree = ""; }; - OBJ_588 /* CodeScope */ = { + OBJ_653 /* CodeScope */ = { isa = PBXGroup; children = ( - OBJ_589 /* ArrayDefinitionsSource.swift */, - OBJ_590 /* CodeScope.swift */, - OBJ_591 /* CompoundDefinitionsSource.swift */, - OBJ_592 /* DefaultCodeScope.swift */, - OBJ_593 /* DefinitionsSource.swift */, - OBJ_594 /* SyntaxNode+CodeScope.swift */, + OBJ_654 /* ArrayDefinitionsSource.swift */, + OBJ_655 /* CodeScope.swift */, + OBJ_656 /* CompoundDefinitionsSource.swift */, + OBJ_657 /* DefaultCodeScope.swift */, + OBJ_658 /* DefinitionsSource.swift */, + OBJ_659 /* SyntaxNode+CodeScope.swift */, ); name = CodeScope; path = CodeScope; sourceTree = ""; }; - OBJ_598 /* MemberLookup */ = { + OBJ_663 /* MemberLookup */ = { isa = PBXGroup; children = ( - OBJ_599 /* DynamicMemberLookup.swift */, - OBJ_600 /* KnownTypeMemberLookup.swift */, - OBJ_601 /* MemberLookupType.swift */, - OBJ_602 /* MemberSearchCache.swift */, - OBJ_603 /* SwiftTypeMemberLookup.swift */, - OBJ_604 /* TypeMemberLookupContext.swift */, + OBJ_664 /* DynamicMemberLookup.swift */, + OBJ_665 /* KnownTypeMemberLookup.swift */, + OBJ_666 /* MemberLookupType.swift */, + OBJ_667 /* MemberSearchCache.swift */, + OBJ_668 /* SwiftTypeMemberLookup.swift */, + OBJ_669 /* TypeMemberLookupContext.swift */, ); name = MemberLookup; path = MemberLookup; sourceTree = ""; }; - OBJ_60 /* ExpressionPasses */ = { - isa = PBXGroup; - children = ( - OBJ_61 /* ASTRewriterPass.swift */, - OBJ_62 /* ASTRewriterPassApplier.swift */, - OBJ_63 /* ASTRewriterPassContext.swift */, - OBJ_64 /* ASTSimplifier.swift */, - OBJ_65 /* AllocInitExpressionPass.swift */, - OBJ_66 /* BaseExpressionPass.swift */, - OBJ_67 /* CanonicalNameExpressionPass.swift */, - OBJ_68 /* CompoundTypeApplierExpressionPass.swift */, - OBJ_69 /* CoreGraphicsExpressionPass.swift */, - OBJ_70 /* EnumRewriterExpressionPass.swift */, - OBJ_71 /* FoundationExpressionPass.swift */, - OBJ_72 /* InitRewriterExpressionPass.swift */, - OBJ_73 /* LocalConstantPromotionExpressionPass.swift */, - OBJ_74 /* MethodInvocationTransformer.swift */, - OBJ_75 /* MethodsToPropertyTransformer.swift */, - OBJ_76 /* NilValueTransformationsPass.swift */, - OBJ_77 /* NumberCommonsExpressionPass.swift */, - OBJ_78 /* PropertyAsMethodAccessCorrectingExpressionPass.swift */, - OBJ_79 /* PropertyInvocationTransformer.swift */, - OBJ_80 /* StaticConstructorTransformer.swift */, - OBJ_81 /* UIKitExpressionPass.swift */, - OBJ_82 /* ValueTransformer+PostfixTransformer.swift */, - OBJ_83 /* VariableNullabilityPromotionExpressionPass.swift */, - ); - name = ExpressionPasses; - path = Sources/Core/ExpressionPasses; - sourceTree = SOURCE_ROOT; - }; - OBJ_606 /* Providers */ = { + OBJ_671 /* Providers */ = { isa = PBXGroup; children = ( - OBJ_607 /* KnownTypeProvider.swift */, - OBJ_608 /* TypealiasProvider.swift */, + OBJ_672 /* KnownTypeProvider.swift */, + OBJ_673 /* TypealiasProvider.swift */, ); name = Providers; path = Providers; sourceTree = ""; }; - OBJ_612 /* TypeResolution */ = { + OBJ_677 /* TypeResolution */ = { isa = PBXGroup; children = ( - OBJ_613 /* CallableTypeResolver.swift */, - OBJ_614 /* CoercionVerifier.swift */, - OBJ_615 /* DefaultLocalTypeResolverInvoker.swift */, - OBJ_616 /* DefaultTypeResolverInvoker.swift */, - OBJ_617 /* ExpressionTypeResolver.swift */, - OBJ_618 /* IteratorTypeResolver.swift */, - OBJ_619 /* LocalTypeResolverInvoker.swift */, - OBJ_620 /* PatternMatcher.swift */, - OBJ_621 /* TypeResolverIntrinsicsBuilder.swift */, - OBJ_622 /* TypeResolverInvoker.swift */, + OBJ_678 /* CallableTypeResolver.swift */, + OBJ_679 /* CoercionVerifier.swift */, + OBJ_680 /* DefaultLocalTypeResolverInvoker.swift */, + OBJ_681 /* DefaultTypeResolverInvoker.swift */, + OBJ_682 /* ExpressionTypeResolver.swift */, + OBJ_683 /* IteratorTypeResolver.swift */, + OBJ_684 /* LocalTypeResolverInvoker.swift */, + OBJ_685 /* PatternMatcher.swift */, + OBJ_686 /* TypeResolverIntrinsicsBuilder.swift */, + OBJ_687 /* TypeResolverInvoker.swift */, ); name = TypeResolution; path = TypeResolution; sourceTree = ""; }; - OBJ_624 /* Utils */ = { + OBJ_689 /* Utils */ = { isa = PBXGroup; children = ( - OBJ_625 /* CodeSource.swift */, - OBJ_626 /* ConcurrentOperationQueue.swift */, - OBJ_627 /* ConcurrentValue.swift */, - OBJ_628 /* Diagnostics.swift */, - OBJ_629 /* InvalidSource.swift */, - OBJ_630 /* LinuxSupport.swift */, - OBJ_631 /* Mutex.swift */, - OBJ_632 /* Source.swift */, - OBJ_633 /* SourceLength.swift */, - OBJ_634 /* SourceLocation.swift */, - OBJ_635 /* SourceRange.swift */, - OBJ_636 /* String.swift */, - OBJ_637 /* StringCodeSource.swift */, - OBJ_638 /* Utils.swift */, + OBJ_690 /* CodeSource.swift */, + OBJ_691 /* ConcurrentOperationQueue.swift */, + OBJ_692 /* ConcurrentValue.swift */, + OBJ_693 /* Diagnostics.swift */, + OBJ_694 /* InvalidSource.swift */, + OBJ_695 /* LinuxSupport.swift */, + OBJ_696 /* Mutex.swift */, + OBJ_697 /* Source.swift */, + OBJ_698 /* SourceLength.swift */, + OBJ_699 /* SourceLocation.swift */, + OBJ_700 /* SourceRange.swift */, + OBJ_701 /* String.swift */, + OBJ_702 /* StringCodeSource.swift */, + OBJ_703 /* Utils.swift */, ); name = Utils; path = Sources/Utils; sourceTree = SOURCE_ROOT; }; - OBJ_639 /* WriterTargetOutput */ = { + OBJ_7 /* Sources */ = { isa = PBXGroup; children = ( - OBJ_640 /* NullRewriterOutputTarget.swift */, - OBJ_641 /* RewriterOutputTarget.swift */, - OBJ_642 /* StringRewriterOutput.swift */, + OBJ_8 /* Analysis */, + OBJ_33 /* AntlrCommons */, + OBJ_38 /* Commons */, + OBJ_60 /* ExpressionPasses */, + OBJ_84 /* GlobalsProviders */, + OBJ_91 /* GrammarModelBase */, + OBJ_96 /* GraphvizLib */, + OBJ_100 /* IntentionPasses */, + OBJ_124 /* Intentions */, + OBJ_185 /* JavaScriptFrontend */, + OBJ_208 /* JsGrammarModels */, + OBJ_225 /* JsParser */, + OBJ_233 /* JsParserAntlr */, + OBJ_243 /* KnownType */, + OBJ_258 /* ObjcGrammarModels */, + OBJ_286 /* ObjcParser */, + OBJ_366 /* ObjcParserAntlr */, + OBJ_380 /* ObjectiveCFrontend */, + OBJ_406 /* SourcePreprocessors */, + OBJ_409 /* SwiftAST */, + OBJ_510 /* SwiftRewriter */, + OBJ_522 /* SwiftRewriterCLI */, + OBJ_527 /* SwiftRewriterLib */, + OBJ_543 /* SwiftSyntaxRewriterPasses */, + OBJ_546 /* SwiftSyntaxSupport */, + OBJ_561 /* TestCommons */, + OBJ_641 /* TypeDefinitions */, + OBJ_645 /* TypeSystem */, + OBJ_689 /* Utils */, + OBJ_704 /* WriterTargetOutput */, ); - name = WriterTargetOutput; - path = Sources/Core/WriterTargetOutput; + name = Sources; + path = ""; + sourceTree = SOURCE_ROOT; + }; + OBJ_704 /* WriterTargetOutput */ = { + isa = PBXGroup; + children = ( + OBJ_705 /* NullRewriterOutputTarget.swift */, + OBJ_706 /* RewriterOutputTarget.swift */, + OBJ_707 /* StringRewriterOutput.swift */, + ); + name = WriterTargetOutput; + path = Sources/Core/WriterTargetOutput; sourceTree = SOURCE_ROOT; }; - OBJ_643 /* Tests */ = { + OBJ_708 /* Tests */ = { isa = PBXGroup; children = ( - OBJ_644 /* AnalysisTests */, - OBJ_663 /* CommonsTests */, - OBJ_675 /* ExpressionPassesTests */, - OBJ_694 /* GlobalsProvidersTests */, - OBJ_700 /* GrammarModelBaseTests */, - OBJ_702 /* GraphvizLibTests */, - OBJ_705 /* IntentionPassesTests */, - OBJ_720 /* IntentionsTests */, - OBJ_752 /* KnownTypeTests */, - OBJ_756 /* ObjcGrammarModelsTests */, - OBJ_758 /* ObjcParserTests */, - OBJ_772 /* ObjectiveCFrontendTests */, - OBJ_804 /* SourcePreprocessorsTests */, - OBJ_806 /* SwiftASTTests */, - OBJ_831 /* SwiftRewriterLibTests */, - OBJ_834 /* SwiftRewriterTests */, - OBJ_836 /* SwiftSyntaxRewriterPassesTests */, - OBJ_840 /* SwiftSyntaxSupportTests */, - OBJ_847 /* TestCommonsTests */, - OBJ_850 /* TypeSystemTests */, - OBJ_871 /* UtilsTests */, - OBJ_879 /* WriterTargetOutputTests */, + OBJ_709 /* AnalysisTests */, + OBJ_728 /* CommonsTests */, + OBJ_740 /* ExpressionPassesTests */, + OBJ_759 /* GlobalsProvidersTests */, + OBJ_765 /* GrammarModelBaseTests */, + OBJ_767 /* GraphvizLibTests */, + OBJ_770 /* IntentionPassesTests */, + OBJ_785 /* IntentionsTests */, + OBJ_817 /* JavaScriptFrontendTests */, + OBJ_836 /* JsParserTests */, + OBJ_840 /* KnownTypeTests */, + OBJ_844 /* ObjcGrammarModelsTests */, + OBJ_846 /* ObjcParserTests */, + OBJ_860 /* ObjectiveCFrontendTests */, + OBJ_892 /* SourcePreprocessorsTests */, + OBJ_894 /* SwiftASTTests */, + OBJ_919 /* SwiftRewriterLibTests */, + OBJ_922 /* SwiftRewriterTests */, + OBJ_924 /* SwiftSyntaxRewriterPassesTests */, + OBJ_928 /* SwiftSyntaxSupportTests */, + OBJ_935 /* TestCommonsTests */, + OBJ_938 /* TypeSystemTests */, + OBJ_959 /* UtilsTests */, + OBJ_967 /* WriterTargetOutputTests */, ); name = Tests; path = ""; sourceTree = SOURCE_ROOT; }; - OBJ_644 /* AnalysisTests */ = { + OBJ_709 /* AnalysisTests */ = { isa = PBXGroup; children = ( - OBJ_645 /* CallGraph */, - OBJ_649 /* ControlFlowGraph */, - OBJ_654 /* DefinitionTypePropagatorTests.swift */, - OBJ_655 /* DirectedGraphTests.swift */, - OBJ_656 /* Graphviz+TestUtils.swift */, - OBJ_657 /* ReachingDefinitionAnalyzerTests.swift */, - OBJ_658 /* UsageAnalysis */, + OBJ_710 /* CallGraph */, + OBJ_714 /* ControlFlowGraph */, + OBJ_719 /* DefinitionTypePropagatorTests.swift */, + OBJ_720 /* DirectedGraphTests.swift */, + OBJ_721 /* Graphviz+TestUtils.swift */, + OBJ_722 /* ReachingDefinitionAnalyzerTests.swift */, + OBJ_723 /* UsageAnalysis */, ); name = AnalysisTests; path = Tests/Core/AnalysisTests; sourceTree = SOURCE_ROOT; }; - OBJ_645 /* CallGraph */ = { + OBJ_710 /* CallGraph */ = { isa = PBXGroup; children = ( - OBJ_646 /* CallGraph+CreationTests.swift */, - OBJ_647 /* CallGraphTestUtils.swift */, - OBJ_648 /* CallGraphTests.swift */, + OBJ_711 /* CallGraph+CreationTests.swift */, + OBJ_712 /* CallGraphTestUtils.swift */, + OBJ_713 /* CallGraphTests.swift */, ); name = CallGraph; path = CallGraph; sourceTree = ""; }; - OBJ_649 /* ControlFlowGraph */ = { + OBJ_714 /* ControlFlowGraph */ = { isa = PBXGroup; children = ( - OBJ_650 /* ControlFlowGraph+CreationExpTests.swift */, - OBJ_651 /* ControlFlowGraph+CreationStmtTests.swift */, - OBJ_652 /* ControlFlowGraph+CreationTests.swift */, - OBJ_653 /* ControlFlowGraphTestUtils.swift */, + OBJ_715 /* ControlFlowGraph+CreationExpTests.swift */, + OBJ_716 /* ControlFlowGraph+CreationStmtTests.swift */, + OBJ_717 /* ControlFlowGraph+CreationTests.swift */, + OBJ_718 /* ControlFlowGraphTestUtils.swift */, ); name = ControlFlowGraph; path = ControlFlowGraph; sourceTree = ""; }; - OBJ_658 /* UsageAnalysis */ = { + OBJ_723 /* UsageAnalysis */ = { isa = PBXGroup; children = ( - OBJ_659 /* BaseUsageAnalyzerTests.swift */, - OBJ_660 /* IntentionCollectionUsageAnalyzerTests.swift */, - OBJ_661 /* LocalUsageAnalyzerTests.swift */, - OBJ_662 /* UsageAnalysisTests.swift */, + OBJ_724 /* BaseUsageAnalyzerTests.swift */, + OBJ_725 /* IntentionCollectionUsageAnalyzerTests.swift */, + OBJ_726 /* LocalUsageAnalyzerTests.swift */, + OBJ_727 /* UsageAnalysisTests.swift */, ); name = UsageAnalysis; path = UsageAnalysis; sourceTree = ""; }; - OBJ_663 /* CommonsTests */ = { + OBJ_728 /* CommonsTests */ = { isa = PBXGroup; children = ( - OBJ_664 /* CoreGraphicsCompoundTypeTests.swift */, - OBJ_665 /* FoundationCompoundTypesTests.swift */, - OBJ_666 /* FunctionInvocationTransformerTests.swift */, - OBJ_667 /* SwiftClassInterfaceParserTests.swift */, - OBJ_668 /* UIColorCompoundTypeTests.swift */, - OBJ_669 /* UIControlCompoundTypeTests.swift */, - OBJ_670 /* UIGestureRecognizerCompoundTypeTests.swift */, - OBJ_671 /* UILabelCompoundTypeTests.swift */, - OBJ_672 /* UIResponderCompoundTypeTests.swift */, - OBJ_673 /* UIViewCompoundTypeTests.swift */, - OBJ_674 /* UIViewControllerCompoundTypeTests.swift */, + OBJ_729 /* CoreGraphicsCompoundTypeTests.swift */, + OBJ_730 /* FoundationCompoundTypesTests.swift */, + OBJ_731 /* FunctionInvocationTransformerTests.swift */, + OBJ_732 /* SwiftClassInterfaceParserTests.swift */, + OBJ_733 /* UIColorCompoundTypeTests.swift */, + OBJ_734 /* UIControlCompoundTypeTests.swift */, + OBJ_735 /* UIGestureRecognizerCompoundTypeTests.swift */, + OBJ_736 /* UILabelCompoundTypeTests.swift */, + OBJ_737 /* UIResponderCompoundTypeTests.swift */, + OBJ_738 /* UIViewCompoundTypeTests.swift */, + OBJ_739 /* UIViewControllerCompoundTypeTests.swift */, ); name = CommonsTests; path = Tests/Core/CommonsTests; sourceTree = SOURCE_ROOT; }; - OBJ_675 /* ExpressionPassesTests */ = { + OBJ_740 /* ExpressionPassesTests */ = { isa = PBXGroup; children = ( - OBJ_676 /* ASTRewriterPassApplierTests.swift */, - OBJ_677 /* ASTSimplifierTests.swift */, - OBJ_678 /* Adapters */, - OBJ_680 /* AllocInitExpressionPassTests.swift */, - OBJ_681 /* CanonicalNameExpressionPassTests.swift */, - OBJ_682 /* CompoundTypeApplierExpressionPassTests.swift */, - OBJ_683 /* CoreGraphicsExpressionPassTests.swift */, - OBJ_684 /* EnumRewriterExpressionPassTests.swift */, - OBJ_685 /* ExpressionPassTestCase.swift */, - OBJ_686 /* FoundationExpressionPassTests.swift */, - OBJ_687 /* InitRewriterExpressionPassTests.swift */, - OBJ_688 /* LocalConstantPromotionExpressionPassTests.swift */, - OBJ_689 /* NilValueTransformationsPassTests.swift */, - OBJ_690 /* NumberCommonsExpressionPassTests.swift */, - OBJ_691 /* PropertyAsMethodAccessCorrectingExpressionPassTests.swift */, - OBJ_692 /* UIKitExpressionPassTests.swift */, - OBJ_693 /* VariableNullabilityPromotionExpressionPassTests.swift */, + OBJ_741 /* ASTRewriterPassApplierTests.swift */, + OBJ_742 /* ASTSimplifierTests.swift */, + OBJ_743 /* Adapters */, + OBJ_745 /* AllocInitExpressionPassTests.swift */, + OBJ_746 /* CanonicalNameExpressionPassTests.swift */, + OBJ_747 /* CompoundTypeApplierExpressionPassTests.swift */, + OBJ_748 /* CoreGraphicsExpressionPassTests.swift */, + OBJ_749 /* EnumRewriterExpressionPassTests.swift */, + OBJ_750 /* ExpressionPassTestCase.swift */, + OBJ_751 /* FoundationExpressionPassTests.swift */, + OBJ_752 /* InitRewriterExpressionPassTests.swift */, + OBJ_753 /* LocalConstantPromotionExpressionPassTests.swift */, + OBJ_754 /* NilValueTransformationsPassTests.swift */, + OBJ_755 /* NumberCommonsExpressionPassTests.swift */, + OBJ_756 /* PropertyAsMethodAccessCorrectingExpressionPassTests.swift */, + OBJ_757 /* UIKitExpressionPassTests.swift */, + OBJ_758 /* VariableNullabilityPromotionExpressionPassTests.swift */, ); name = ExpressionPassesTests; path = Tests/Core/ExpressionPassesTests; sourceTree = SOURCE_ROOT; }; - OBJ_678 /* Adapters */ = { + OBJ_743 /* Adapters */ = { isa = PBXGroup; children = ( - OBJ_679 /* ObjectiveCExpressionPassTestAdapter.swift */, + OBJ_744 /* ObjectiveCExpressionPassTestAdapter.swift */, ); name = Adapters; path = Adapters; sourceTree = ""; }; - OBJ_694 /* GlobalsProvidersTests */ = { + OBJ_759 /* GlobalsProvidersTests */ = { isa = PBXGroup; children = ( - OBJ_695 /* BaseGlobalsProviderTestCase.swift */, - OBJ_696 /* CLibGlobalsProvidersTests.swift */, - OBJ_697 /* DefaultGlobalsProvidersSourceTests.swift */, - OBJ_698 /* OpenGLESGlobalsProviderTests.swift */, - OBJ_699 /* UIKitGlobalsProviderTests.swift */, + OBJ_760 /* BaseGlobalsProviderTestCase.swift */, + OBJ_761 /* CLibGlobalsProvidersTests.swift */, + OBJ_762 /* DefaultGlobalsProvidersSourceTests.swift */, + OBJ_763 /* OpenGLESGlobalsProviderTests.swift */, + OBJ_764 /* UIKitGlobalsProviderTests.swift */, ); name = GlobalsProvidersTests; path = "Tests/Frontend/Objective-C/GlobalsProvidersTests"; sourceTree = SOURCE_ROOT; }; - OBJ_7 /* Sources */ = { - isa = PBXGroup; - children = ( - OBJ_8 /* Analysis */, - OBJ_33 /* AntlrCommons */, - OBJ_38 /* Commons */, - OBJ_60 /* ExpressionPasses */, - OBJ_84 /* GlobalsProviders */, - OBJ_91 /* GrammarModelBase */, - OBJ_96 /* GraphvizLib */, - OBJ_100 /* IntentionPasses */, - OBJ_124 /* Intentions */, - OBJ_185 /* KnownType */, - OBJ_200 /* ObjcGrammarModels */, - OBJ_228 /* ObjcParser */, - OBJ_308 /* ObjcParserAntlr */, - OBJ_322 /* ObjectiveCFrontend */, - OBJ_348 /* SourcePreprocessors */, - OBJ_351 /* SwiftAST */, - OBJ_452 /* SwiftRewriter */, - OBJ_461 /* SwiftRewriterCLI */, - OBJ_466 /* SwiftRewriterLib */, - OBJ_482 /* SwiftSyntaxRewriterPasses */, - OBJ_485 /* SwiftSyntaxSupport */, - OBJ_500 /* TestCommons */, - OBJ_576 /* TypeDefinitions */, - OBJ_580 /* TypeSystem */, - OBJ_624 /* Utils */, - OBJ_639 /* WriterTargetOutput */, - ); - name = Sources; - path = ""; - sourceTree = SOURCE_ROOT; - }; - OBJ_700 /* GrammarModelBaseTests */ = { + OBJ_765 /* GrammarModelBaseTests */ = { isa = PBXGroup; children = ( - OBJ_701 /* GrammarModelBaseTests.swift */, + OBJ_766 /* GrammarModelBaseTests.swift */, ); name = GrammarModelBaseTests; path = Tests/Core/GrammarModelBaseTests; sourceTree = SOURCE_ROOT; }; - OBJ_702 /* GraphvizLibTests */ = { + OBJ_767 /* GraphvizLibTests */ = { isa = PBXGroup; children = ( - OBJ_703 /* GraphViz+GraphAttributesTests.swift */, - OBJ_704 /* GraphVizTests.swift */, + OBJ_768 /* GraphViz+GraphAttributesTests.swift */, + OBJ_769 /* GraphVizTests.swift */, ); name = GraphvizLibTests; path = Tests/Core/GraphvizLibTests; sourceTree = SOURCE_ROOT; }; - OBJ_705 /* IntentionPassesTests */ = { + OBJ_770 /* IntentionPassesTests */ = { isa = PBXGroup; children = ( - OBJ_706 /* DetectNoReturnsIntentionPassTests.swift */, - OBJ_707 /* DetectNonnullReturnsIntentionPassTests.swift */, - OBJ_708 /* DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift */, - OBJ_709 /* FileTypeMergingIntentionPassTests.swift */, - OBJ_710 /* ImportDirectiveIntentionPassTests.swift */, - OBJ_711 /* InitAnalysisIntentionPassTests.swift */, - OBJ_712 /* PromoteProtocolPropertyConformanceIntentionPassTests.swift */, - OBJ_713 /* ProtocolNullabilityPropagationToConformersIntentionPassTests.swift */, - OBJ_714 /* RemoveEmptyExtensionsIntentionPassTests.swift */, - OBJ_715 /* StoredPropertyToNominalTypesIntentionPassTests.swift */, - OBJ_716 /* SubscriptDeclarationIntentionPassTests.swift */, - OBJ_717 /* SwiftifyMethodSignaturesIntentionPassTests.swift */, - OBJ_718 /* TestUtils.swift */, - OBJ_719 /* UIKitCorrectorIntentionPassTests.swift */, + OBJ_771 /* DetectNoReturnsIntentionPassTests.swift */, + OBJ_772 /* DetectNonnullReturnsIntentionPassTests.swift */, + OBJ_773 /* DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift */, + OBJ_774 /* FileTypeMergingIntentionPassTests.swift */, + OBJ_775 /* ImportDirectiveIntentionPassTests.swift */, + OBJ_776 /* InitAnalysisIntentionPassTests.swift */, + OBJ_777 /* PromoteProtocolPropertyConformanceIntentionPassTests.swift */, + OBJ_778 /* ProtocolNullabilityPropagationToConformersIntentionPassTests.swift */, + OBJ_779 /* RemoveEmptyExtensionsIntentionPassTests.swift */, + OBJ_780 /* StoredPropertyToNominalTypesIntentionPassTests.swift */, + OBJ_781 /* SubscriptDeclarationIntentionPassTests.swift */, + OBJ_782 /* SwiftifyMethodSignaturesIntentionPassTests.swift */, + OBJ_783 /* TestUtils.swift */, + OBJ_784 /* UIKitCorrectorIntentionPassTests.swift */, ); name = IntentionPassesTests; path = Tests/Core/IntentionPassesTests; sourceTree = SOURCE_ROOT; }; - OBJ_720 /* IntentionsTests */ = { + OBJ_785 /* IntentionsTests */ = { isa = PBXGroup; children = ( - OBJ_721 /* FromSourceIntentionTests.swift */, - OBJ_722 /* FunctionBodyQueueTests.swift */, - OBJ_723 /* Intention+FileTests.swift */, - OBJ_724 /* Intentions */, - OBJ_748 /* Serialization */, - OBJ_750 /* TestUtils */, + OBJ_786 /* FromSourceIntentionTests.swift */, + OBJ_787 /* FunctionBodyQueueTests.swift */, + OBJ_788 /* Intention+FileTests.swift */, + OBJ_789 /* Intentions */, + OBJ_813 /* Serialization */, + OBJ_815 /* TestUtils */, ); name = IntentionsTests; path = Tests/Core/IntentionsTests; sourceTree = SOURCE_ROOT; }; - OBJ_724 /* Intentions */ = { + OBJ_789 /* Intentions */ = { isa = PBXGroup; children = ( - OBJ_725 /* ClassExtensionGenerationIntentionTests.swift */, - OBJ_726 /* ClassGenerationIntentionTests.swift */, - OBJ_727 /* DeinitGenerationIntentionTests.swift */, - OBJ_728 /* EnumCaseGenerationIntentionTests.swift */, - OBJ_729 /* EnumGenerationIntentionTests.swift */, - OBJ_730 /* FileGenerationIntentionTests.swift */, - OBJ_731 /* FunctionBodyIntentionTests.swift */, - OBJ_732 /* GlobalFunctionGenerationIntentionTests.swift */, - OBJ_733 /* GlobalVariableGenerationIntentionTests.swift */, - OBJ_734 /* GlobalVariableInitialValueIntentionTests.swift */, - OBJ_735 /* InitGenerationIntentionTests.swift */, - OBJ_736 /* InstanceVariableGenerationIntentionTests.swift */, - OBJ_737 /* MethodGenerationIntentionTests.swift */, - OBJ_738 /* PropertyGenerationIntentionTests.swift */, - OBJ_739 /* PropertyInitialValueGenerationIntentionTests.swift */, - OBJ_740 /* PropertySynthesizationIntentionTests.swift */, - OBJ_741 /* ProtocolGenerationIntentionTests.swift */, - OBJ_742 /* ProtocolInheritanceIntentionTests.swift */, - OBJ_743 /* ProtocolMethodGenerationIntentionTests.swift */, - OBJ_744 /* ProtocolPropertyGenerationIntentionTests.swift */, - OBJ_745 /* StructGenerationIntentionTests.swift */, - OBJ_746 /* SubscriptGenerationIntentionTests.swift */, - OBJ_747 /* TypealiasIntentionTests.swift */, + OBJ_790 /* ClassExtensionGenerationIntentionTests.swift */, + OBJ_791 /* ClassGenerationIntentionTests.swift */, + OBJ_792 /* DeinitGenerationIntentionTests.swift */, + OBJ_793 /* EnumCaseGenerationIntentionTests.swift */, + OBJ_794 /* EnumGenerationIntentionTests.swift */, + OBJ_795 /* FileGenerationIntentionTests.swift */, + OBJ_796 /* FunctionBodyIntentionTests.swift */, + OBJ_797 /* GlobalFunctionGenerationIntentionTests.swift */, + OBJ_798 /* GlobalVariableGenerationIntentionTests.swift */, + OBJ_799 /* GlobalVariableInitialValueIntentionTests.swift */, + OBJ_800 /* InitGenerationIntentionTests.swift */, + OBJ_801 /* InstanceVariableGenerationIntentionTests.swift */, + OBJ_802 /* MethodGenerationIntentionTests.swift */, + OBJ_803 /* PropertyGenerationIntentionTests.swift */, + OBJ_804 /* PropertyInitialValueGenerationIntentionTests.swift */, + OBJ_805 /* PropertySynthesizationIntentionTests.swift */, + OBJ_806 /* ProtocolGenerationIntentionTests.swift */, + OBJ_807 /* ProtocolInheritanceIntentionTests.swift */, + OBJ_808 /* ProtocolMethodGenerationIntentionTests.swift */, + OBJ_809 /* ProtocolPropertyGenerationIntentionTests.swift */, + OBJ_810 /* StructGenerationIntentionTests.swift */, + OBJ_811 /* SubscriptGenerationIntentionTests.swift */, + OBJ_812 /* TypealiasIntentionTests.swift */, ); name = Intentions; path = Intentions; sourceTree = ""; }; - OBJ_748 /* Serialization */ = { + OBJ_8 /* Analysis */ = { + isa = PBXGroup; + children = ( + OBJ_9 /* CallGraph */, + OBJ_13 /* ControlFlowGraph */, + OBJ_19 /* DefinitionTypePropagator.swift */, + OBJ_20 /* DirectedGraph.swift */, + OBJ_21 /* DirectedGraphBase.swift */, + OBJ_22 /* Graphviz */, + OBJ_24 /* ReachingDefinitionAnalyzer.swift */, + OBJ_25 /* SyntaxNode+ControlFlowGraphSyntaxNode.swift */, + OBJ_26 /* UsageAnalysis */, + ); + name = Analysis; + path = Sources/Core/Analysis; + sourceTree = SOURCE_ROOT; + }; + OBJ_813 /* Serialization */ = { isa = PBXGroup; children = ( - OBJ_749 /* IntentionSerializerTests.swift */, + OBJ_814 /* IntentionSerializerTests.swift */, ); name = Serialization; path = Serialization; sourceTree = ""; }; - OBJ_750 /* TestUtils */ = { + OBJ_815 /* TestUtils */ = { isa = PBXGroup; children = ( - OBJ_751 /* TestIntentionVisitor.swift */, + OBJ_816 /* TestIntentionVisitor.swift */, ); name = TestUtils; path = TestUtils; sourceTree = ""; }; - OBJ_752 /* KnownTypeTests */ = { + OBJ_817 /* JavaScriptFrontendTests */ = { + isa = PBXGroup; + children = ( + OBJ_818 /* ExpressionPasses */, + OBJ_820 /* FixtureBuilders */, + OBJ_823 /* IntentionPasses */, + OBJ_825 /* JavaScript2SwiftRewriter+MultiFilesTests.swift */, + OBJ_826 /* JavaScript2SwiftRewriterJobBuilderTests.swift */, + OBJ_827 /* JavaScript2SwiftRewriterJobTests.swift */, + OBJ_828 /* JavaScript2SwiftRewriterTests.swift */, + OBJ_829 /* JavaScriptExprASTReaderTests.swift */, + OBJ_830 /* JavaScriptFileCollectionStepTests.swift */, + OBJ_831 /* JavaScriptImportDirectiveFileCollectionDelegateTests.swift */, + OBJ_832 /* JavaScriptIntentionCollectorTests.swift */, + OBJ_833 /* JavaScriptObjectGeneratorTests.swift */, + OBJ_834 /* JavaScriptStatementASTReaderTests.swift */, + OBJ_835 /* TestUtils.swift */, + ); + name = JavaScriptFrontendTests; + path = Tests/Frontend/JavaScript/JavaScriptFrontendTests; + sourceTree = SOURCE_ROOT; + }; + OBJ_818 /* ExpressionPasses */ = { + isa = PBXGroup; + children = ( + OBJ_819 /* JavaScriptASTCorrectorExpressionPassTests.swift */, + ); + name = ExpressionPasses; + path = ExpressionPasses; + sourceTree = ""; + }; + OBJ_820 /* FixtureBuilders */ = { + isa = PBXGroup; + children = ( + OBJ_821 /* MultiFileTestBuilder.swift */, + OBJ_822 /* SingleFileTestUtils.swift */, + ); + name = FixtureBuilders; + path = FixtureBuilders; + sourceTree = ""; + }; + OBJ_823 /* IntentionPasses */ = { + isa = PBXGroup; + children = ( + OBJ_824 /* JavaScriptPropertyMergeIntentionPassTests.swift */, + ); + name = IntentionPasses; + path = IntentionPasses; + sourceTree = ""; + }; + OBJ_836 /* JsParserTests */ = { + isa = PBXGroup; + children = ( + OBJ_837 /* JsParserListenerTests.swift */, + OBJ_838 /* JsParserTests.swift */, + OBJ_839 /* Resources.swift */, + ); + name = JsParserTests; + path = Tests/Frontend/JavaScript/JsParserTests; + sourceTree = SOURCE_ROOT; + }; + OBJ_84 /* GlobalsProviders */ = { + isa = PBXGroup; + children = ( + OBJ_85 /* BaseGlobalsProvider.swift */, + OBJ_86 /* CLibGlobalsProviders.swift */, + OBJ_87 /* CompoundedMappingTypesGlobalsProvider.swift */, + OBJ_88 /* DefaultGlobalsProvidersSource.swift */, + OBJ_89 /* OpenGLESGlobalsProvider.swift */, + OBJ_90 /* UIKitGlobalsProvider.swift */, + ); + name = GlobalsProviders; + path = "Sources/Frontend/Objective-C/GlobalsProviders"; + sourceTree = SOURCE_ROOT; + }; + OBJ_840 /* KnownTypeTests */ = { isa = PBXGroup; children = ( - OBJ_753 /* KnownFileBuilderTests.swift */, - OBJ_754 /* KnownTypeSerializerTests.swift */, - OBJ_755 /* TypeFormatter+ExtTests.swift */, + OBJ_841 /* KnownFileBuilderTests.swift */, + OBJ_842 /* KnownTypeSerializerTests.swift */, + OBJ_843 /* TypeFormatter+ExtTests.swift */, ); name = KnownTypeTests; path = Tests/Core/KnownTypeTests; sourceTree = SOURCE_ROOT; }; - OBJ_756 /* ObjcGrammarModelsTests */ = { + OBJ_844 /* ObjcGrammarModelsTests */ = { isa = PBXGroup; children = ( - OBJ_757 /* ObjcGrammarModelsTests.swift */, + OBJ_845 /* ObjcGrammarModelsTests.swift */, ); name = ObjcGrammarModelsTests; path = "Tests/Frontend/Objective-C/ObjcGrammarModelsTests"; sourceTree = SOURCE_ROOT; }; - OBJ_758 /* ObjcParserTests */ = { + OBJ_846 /* ObjcParserTests */ = { isa = PBXGroup; children = ( - OBJ_759 /* DeclarationExtractor */, - OBJ_762 /* DeclarationTranslatorTests.swift */, - OBJ_763 /* DefinitionCollectorTests.swift */, - OBJ_764 /* ObjcParserTests.swift */, - OBJ_765 /* ObjcTypeParserTests.swift */, - OBJ_766 /* TestFixture */, + OBJ_847 /* DeclarationExtractor */, + OBJ_850 /* DeclarationTranslatorTests.swift */, + OBJ_851 /* DefinitionCollectorTests.swift */, + OBJ_852 /* ObjcParserTests.swift */, + OBJ_853 /* ObjcTypeParserTests.swift */, + OBJ_854 /* TestFixture */, ); name = ObjcParserTests; path = "Tests/Frontend/Objective-C/ObjcParserTests"; sourceTree = SOURCE_ROOT; }; - OBJ_759 /* DeclarationExtractor */ = { + OBJ_847 /* DeclarationExtractor */ = { isa = PBXGroup; children = ( - OBJ_760 /* AntlrDeclarationParserTests.swift */, - OBJ_761 /* DeclarationExtractorTests.swift */, + OBJ_848 /* AntlrDeclarationParserTests.swift */, + OBJ_849 /* DeclarationExtractorTests.swift */, ); name = DeclarationExtractor; path = DeclarationExtractor; sourceTree = ""; }; - OBJ_766 /* TestFixture */ = { + OBJ_854 /* TestFixture */ = { isa = PBXGroup; children = ( - OBJ_767 /* AntlrErrorListener.swift */, - OBJ_768 /* BaseParserTestFixture.swift */, - OBJ_769 /* DeclarationExtractor+Asserter.swift */, - OBJ_770 /* DeclarationSyntaxElementType+Asserter.swift */, - OBJ_771 /* DeclarationTranslator+Asserter.swift */, + OBJ_855 /* AntlrErrorListener.swift */, + OBJ_856 /* BaseParserTestFixture.swift */, + OBJ_857 /* DeclarationExtractor+Asserter.swift */, + OBJ_858 /* DeclarationSyntaxElementType+Asserter.swift */, + OBJ_859 /* DeclarationTranslator+Asserter.swift */, ); name = TestFixture; path = TestFixture; sourceTree = ""; }; - OBJ_772 /* ObjectiveCFrontendTests */ = { + OBJ_860 /* ObjectiveCFrontendTests */ = { isa = PBXGroup; children = ( - OBJ_773 /* ASTRewriterPassTests.swift */, - OBJ_774 /* CPreprocessorDirectiveConverterTests.swift */, - OBJ_775 /* ExpressionPasses */, - OBJ_777 /* FixtureBuilders */, - OBJ_780 /* IntentionPasses */, - OBJ_782 /* ObjectiveC2SwiftRewriter+Crashers.swift */, - OBJ_783 /* ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift */, - OBJ_784 /* ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift */, - OBJ_785 /* ObjectiveC2SwiftRewriter+IntentionPassTests.swift */, - OBJ_786 /* ObjectiveC2SwiftRewriter+MultiFilesTests.swift */, - OBJ_787 /* ObjectiveC2SwiftRewriter+NullabilityTests.swift */, - OBJ_788 /* ObjectiveC2SwiftRewriter+SourcePreprocessor.swift */, - OBJ_789 /* ObjectiveC2SwiftRewriter+StmtTests.swift */, - OBJ_790 /* ObjectiveC2SwiftRewriter+ThreadingTests.swift */, - OBJ_791 /* ObjectiveC2SwiftRewriter+TypingTests.swift */, - OBJ_792 /* ObjectiveC2SwiftRewriterJobBuilderTests.swift */, - OBJ_793 /* ObjectiveC2SwiftRewriterJobTests.swift */, - OBJ_794 /* ObjectiveC2SwiftRewriterTests.swift */, - OBJ_795 /* ObjectiveCASTReaderContextTests.swift */, - OBJ_796 /* ObjectiveCExprASTReaderTests.swift */, - OBJ_797 /* ObjectiveCFileCollectionStepTests.swift */, - OBJ_798 /* ObjectiveCImportDirectiveFileCollectionDelegateTests.swift */, - OBJ_799 /* ObjectiveCIntentionCollectorTests.swift */, - OBJ_800 /* ObjectiveCMethodSignatureConverterTests.swift */, - OBJ_801 /* ObjectiveCStatementASTReaderTests.swift */, - OBJ_802 /* PropertyMergeIntentionPassTests.swift */, - OBJ_803 /* TestUtils.swift */, + OBJ_861 /* ASTRewriterPassTests.swift */, + OBJ_862 /* CPreprocessorDirectiveConverterTests.swift */, + OBJ_863 /* ExpressionPasses */, + OBJ_865 /* FixtureBuilders */, + OBJ_868 /* IntentionPasses */, + OBJ_870 /* ObjectiveC2SwiftRewriter+Crashers.swift */, + OBJ_871 /* ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift */, + OBJ_872 /* ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift */, + OBJ_873 /* ObjectiveC2SwiftRewriter+IntentionPassTests.swift */, + OBJ_874 /* ObjectiveC2SwiftRewriter+MultiFilesTests.swift */, + OBJ_875 /* ObjectiveC2SwiftRewriter+NullabilityTests.swift */, + OBJ_876 /* ObjectiveC2SwiftRewriter+SourcePreprocessor.swift */, + OBJ_877 /* ObjectiveC2SwiftRewriter+StmtTests.swift */, + OBJ_878 /* ObjectiveC2SwiftRewriter+ThreadingTests.swift */, + OBJ_879 /* ObjectiveC2SwiftRewriter+TypingTests.swift */, + OBJ_880 /* ObjectiveC2SwiftRewriterJobBuilderTests.swift */, + OBJ_881 /* ObjectiveC2SwiftRewriterJobTests.swift */, + OBJ_882 /* ObjectiveC2SwiftRewriterTests.swift */, + OBJ_883 /* ObjectiveCASTReaderContextTests.swift */, + OBJ_884 /* ObjectiveCExprASTReaderTests.swift */, + OBJ_885 /* ObjectiveCFileCollectionStepTests.swift */, + OBJ_886 /* ObjectiveCImportDirectiveFileCollectionDelegateTests.swift */, + OBJ_887 /* ObjectiveCIntentionCollectorTests.swift */, + OBJ_888 /* ObjectiveCMethodSignatureConverterTests.swift */, + OBJ_889 /* ObjectiveCStatementASTReaderTests.swift */, + OBJ_890 /* PropertyMergeIntentionPassTests.swift */, + OBJ_891 /* TestUtils.swift */, ); name = ObjectiveCFrontendTests; path = "Tests/Frontend/Objective-C/ObjectiveCFrontendTests"; sourceTree = SOURCE_ROOT; }; - OBJ_775 /* ExpressionPasses */ = { + OBJ_863 /* ExpressionPasses */ = { isa = PBXGroup; children = ( - OBJ_776 /* ObjectiveCASTCorrectorExpressionPassTests.swift */, + OBJ_864 /* ObjectiveCASTCorrectorExpressionPassTests.swift */, ); name = ExpressionPasses; path = ExpressionPasses; sourceTree = ""; }; - OBJ_777 /* FixtureBuilders */ = { + OBJ_865 /* FixtureBuilders */ = { isa = PBXGroup; children = ( - OBJ_778 /* MultiFileTestBuilder.swift */, - OBJ_779 /* SingleFileTestUtils.swift */, + OBJ_866 /* MultiFileTestBuilder.swift */, + OBJ_867 /* SingleFileTestUtils.swift */, ); name = FixtureBuilders; path = FixtureBuilders; sourceTree = ""; }; - OBJ_780 /* IntentionPasses */ = { + OBJ_868 /* IntentionPasses */ = { isa = PBXGroup; children = ( - OBJ_781 /* ObjectiveCPropertyMergeIntentionPassTests.swift */, + OBJ_869 /* ObjectiveCPropertyMergeIntentionPassTests.swift */, ); name = IntentionPasses; path = IntentionPasses; sourceTree = ""; }; - OBJ_8 /* Analysis */ = { - isa = PBXGroup; - children = ( - OBJ_9 /* CallGraph */, - OBJ_13 /* ControlFlowGraph */, - OBJ_19 /* DefinitionTypePropagator.swift */, - OBJ_20 /* DirectedGraph.swift */, - OBJ_21 /* DirectedGraphBase.swift */, - OBJ_22 /* Graphviz */, - OBJ_24 /* ReachingDefinitionAnalyzer.swift */, - OBJ_25 /* SyntaxNode+ControlFlowGraphSyntaxNode.swift */, - OBJ_26 /* UsageAnalysis */, - ); - name = Analysis; - path = Sources/Core/Analysis; - sourceTree = SOURCE_ROOT; - }; - OBJ_804 /* SourcePreprocessorsTests */ = { + OBJ_892 /* SourcePreprocessorsTests */ = { isa = PBXGroup; children = ( - OBJ_805 /* QuickSpecPreprocessorTests.swift */, + OBJ_893 /* QuickSpecPreprocessorTests.swift */, ); name = SourcePreprocessorsTests; path = Tests/Core/SourcePreprocessorsTests; sourceTree = SOURCE_ROOT; }; - OBJ_806 /* SwiftASTTests */ = { + OBJ_894 /* SwiftASTTests */ = { isa = PBXGroup; children = ( - OBJ_807 /* AccessLevelTests.swift */, - OBJ_808 /* Expression+MatcherTests.swift */, - OBJ_809 /* Expression */, - OBJ_812 /* ExpressionTests.swift */, - OBJ_813 /* FunctionIdentifierTests.swift */, - OBJ_814 /* FunctionSignatureParserTests.swift */, - OBJ_815 /* PatternTests.swift */, - OBJ_816 /* Serialization */, - OBJ_818 /* StatementTests.swift */, - OBJ_819 /* Structures */, - OBJ_821 /* SwiftOperatorTests.swift */, - OBJ_822 /* SwiftTypeParserTests.swift */, - OBJ_823 /* SwiftTypeTests.swift */, - OBJ_824 /* SyntaxNodeIteratorTests.swift */, - OBJ_825 /* SyntaxNodeRewriterTests.swift */, - OBJ_826 /* SyntaxNodeTests.swift */, - OBJ_827 /* TypeFormatterTests.swift */, - OBJ_828 /* ValueMatcher+MatchersTests.swift */, - OBJ_829 /* ValueMatcherTests.swift */, - OBJ_830 /* ValueTransformerTests.swift */, + OBJ_895 /* AccessLevelTests.swift */, + OBJ_896 /* Expression+MatcherTests.swift */, + OBJ_897 /* Expression */, + OBJ_900 /* ExpressionTests.swift */, + OBJ_901 /* FunctionIdentifierTests.swift */, + OBJ_902 /* FunctionSignatureParserTests.swift */, + OBJ_903 /* PatternTests.swift */, + OBJ_904 /* Serialization */, + OBJ_906 /* StatementTests.swift */, + OBJ_907 /* Structures */, + OBJ_909 /* SwiftOperatorTests.swift */, + OBJ_910 /* SwiftTypeParserTests.swift */, + OBJ_911 /* SwiftTypeTests.swift */, + OBJ_912 /* SyntaxNodeIteratorTests.swift */, + OBJ_913 /* SyntaxNodeRewriterTests.swift */, + OBJ_914 /* SyntaxNodeTests.swift */, + OBJ_915 /* TypeFormatterTests.swift */, + OBJ_916 /* ValueMatcher+MatchersTests.swift */, + OBJ_917 /* ValueMatcherTests.swift */, + OBJ_918 /* ValueTransformerTests.swift */, ); name = SwiftASTTests; path = Tests/Core/SwiftASTTests; sourceTree = SOURCE_ROOT; }; - OBJ_809 /* Expression */ = { + OBJ_897 /* Expression */ = { isa = PBXGroup; children = ( - OBJ_810 /* PostfixExpressionTests.swift */, - OBJ_811 /* SelectorExpressionTests.swift */, + OBJ_898 /* PostfixExpressionTests.swift */, + OBJ_899 /* SelectorExpressionTests.swift */, ); name = Expression; path = Expression; sourceTree = ""; }; - OBJ_816 /* Serialization */ = { + OBJ_9 /* CallGraph */ = { + isa = PBXGroup; + children = ( + OBJ_10 /* CallGraph+Creation.swift */, + OBJ_11 /* CallGraph+Graphviz.swift */, + OBJ_12 /* CallGraph.swift */, + ); + name = CallGraph; + path = CallGraph; + sourceTree = ""; + }; + OBJ_904 /* Serialization */ = { isa = PBXGroup; children = ( - OBJ_817 /* SwiftASTSerializerTests.swift */, + OBJ_905 /* SwiftASTSerializerTests.swift */, ); name = Serialization; path = Serialization; sourceTree = ""; }; - OBJ_819 /* Structures */ = { + OBJ_907 /* Structures */ = { isa = PBXGroup; children = ( - OBJ_820 /* FunctionSignatureTests.swift */, + OBJ_908 /* FunctionSignatureTests.swift */, ); name = Structures; path = Structures; sourceTree = ""; }; - OBJ_831 /* SwiftRewriterLibTests */ = { + OBJ_91 /* GrammarModelBase */ = { + isa = PBXGroup; + children = ( + OBJ_92 /* ASTNode.swift */, + OBJ_93 /* ASTVisitor.swift */, + OBJ_94 /* CommentQuerier.swift */, + OBJ_95 /* RawCodeComment.swift */, + ); + name = GrammarModelBase; + path = Sources/Core/GrammarModelBase; + sourceTree = SOURCE_ROOT; + }; + OBJ_919 /* SwiftRewriterLibTests */ = { isa = PBXGroup; children = ( - OBJ_832 /* ColorizeSyntaxVisitorTests.swift */, - OBJ_833 /* SwiftWriterTests.swift */, + OBJ_920 /* ColorizeSyntaxVisitorTests.swift */, + OBJ_921 /* SwiftWriterTests.swift */, ); name = SwiftRewriterLibTests; path = Tests/SwiftRewriterLibTests; sourceTree = SOURCE_ROOT; }; - OBJ_834 /* SwiftRewriterTests */ = { + OBJ_922 /* SwiftRewriterTests */ = { isa = PBXGroup; children = ( - OBJ_835 /* SwiftRewriterTests.swift */, + OBJ_923 /* SwiftRewriterTests.swift */, ); name = SwiftRewriterTests; path = Tests/SwiftRewriterTests; sourceTree = SOURCE_ROOT; }; - OBJ_836 /* SwiftSyntaxRewriterPassesTests */ = { + OBJ_924 /* SwiftSyntaxRewriterPassesTests */ = { isa = PBXGroup; children = ( - OBJ_837 /* BaseSyntaxRewriterPassTest.swift */, - OBJ_838 /* DefaultSyntaxPassProviderTests.swift */, - OBJ_839 /* StatementSpacingSyntaxPassTests.swift */, + OBJ_925 /* BaseSyntaxRewriterPassTest.swift */, + OBJ_926 /* DefaultSyntaxPassProviderTests.swift */, + OBJ_927 /* StatementSpacingSyntaxPassTests.swift */, ); name = SwiftSyntaxRewriterPassesTests; path = Tests/Core/SwiftSyntaxRewriterPassesTests; sourceTree = SOURCE_ROOT; }; - OBJ_84 /* GlobalsProviders */ = { - isa = PBXGroup; - children = ( - OBJ_85 /* BaseGlobalsProvider.swift */, - OBJ_86 /* CLibGlobalsProviders.swift */, - OBJ_87 /* CompoundedMappingTypesGlobalsProvider.swift */, - OBJ_88 /* DefaultGlobalsProvidersSource.swift */, - OBJ_89 /* OpenGLESGlobalsProvider.swift */, - OBJ_90 /* UIKitGlobalsProvider.swift */, - ); - name = GlobalsProviders; - path = "Sources/Frontend/Objective-C/GlobalsProviders"; - sourceTree = SOURCE_ROOT; - }; - OBJ_840 /* SwiftSyntaxSupportTests */ = { + OBJ_928 /* SwiftSyntaxSupportTests */ = { isa = PBXGroup; children = ( - OBJ_841 /* BaseSwiftSyntaxProducerTests.swift */, - OBJ_842 /* ModifiersSyntaxDecoratorsTests.swift */, - OBJ_843 /* SwiftSyntaxProducer+ExpTests.swift */, - OBJ_844 /* SwiftSyntaxProducer+StmtTests.swift */, - OBJ_845 /* SwiftSyntaxProducerTests.swift */, - OBJ_846 /* SwiftTypeConversionTests.swift */, + OBJ_929 /* BaseSwiftSyntaxProducerTests.swift */, + OBJ_930 /* ModifiersSyntaxDecoratorsTests.swift */, + OBJ_931 /* SwiftSyntaxProducer+ExpTests.swift */, + OBJ_932 /* SwiftSyntaxProducer+StmtTests.swift */, + OBJ_933 /* SwiftSyntaxProducerTests.swift */, + OBJ_934 /* SwiftTypeConversionTests.swift */, ); name = SwiftSyntaxSupportTests; path = Tests/Core/SwiftSyntaxSupportTests; sourceTree = SOURCE_ROOT; }; - OBJ_847 /* TestCommonsTests */ = { + OBJ_935 /* TestCommonsTests */ = { isa = PBXGroup; children = ( - OBJ_848 /* StringDiffTestingTests.swift */, - OBJ_849 /* VirtualFileDiskTests.swift */, + OBJ_936 /* StringDiffTestingTests.swift */, + OBJ_937 /* VirtualFileDiskTests.swift */, ); name = TestCommonsTests; path = Tests/TestCommonsTests; sourceTree = SOURCE_ROOT; }; - OBJ_850 /* TypeSystemTests */ = { + OBJ_938 /* TypeSystemTests */ = { isa = PBXGroup; children = ( - OBJ_851 /* CodeDefinition */, - OBJ_853 /* CodeScope */, - OBJ_855 /* DefaultTypeMapperTests.swift */, - OBJ_856 /* DefaultTypeResolverInvokerTests.swift */, - OBJ_857 /* FixtureBuilders */, - OBJ_859 /* IntentionCollectionTypeSystemTests.swift */, - OBJ_860 /* MemberLookup */, - OBJ_862 /* OverloadResolverTests.swift */, - OBJ_863 /* TypeResolution */, - OBJ_870 /* TypeSystemTests.swift */, + OBJ_939 /* CodeDefinition */, + OBJ_941 /* CodeScope */, + OBJ_943 /* DefaultTypeMapperTests.swift */, + OBJ_944 /* DefaultTypeResolverInvokerTests.swift */, + OBJ_945 /* FixtureBuilders */, + OBJ_947 /* IntentionCollectionTypeSystemTests.swift */, + OBJ_948 /* MemberLookup */, + OBJ_950 /* OverloadResolverTests.swift */, + OBJ_951 /* TypeResolution */, + OBJ_958 /* TypeSystemTests.swift */, ); name = TypeSystemTests; path = Tests/Core/TypeSystemTests; sourceTree = SOURCE_ROOT; }; - OBJ_851 /* CodeDefinition */ = { + OBJ_939 /* CodeDefinition */ = { isa = PBXGroup; children = ( - OBJ_852 /* CodeDefinitionTests.swift */, + OBJ_940 /* CodeDefinitionTests.swift */, ); name = CodeDefinition; path = CodeDefinition; sourceTree = ""; }; - OBJ_853 /* CodeScope */ = { + OBJ_941 /* CodeScope */ = { isa = PBXGroup; children = ( - OBJ_854 /* DefaultCodeScopeTests.swift */, + OBJ_942 /* DefaultCodeScopeTests.swift */, ); name = CodeScope; path = CodeScope; sourceTree = ""; }; - OBJ_857 /* FixtureBuilders */ = { + OBJ_945 /* FixtureBuilders */ = { isa = PBXGroup; children = ( - OBJ_858 /* ExpressionTypeResolverTests+Fixtures.swift */, + OBJ_946 /* ExpressionTypeResolverTests+Fixtures.swift */, ); name = FixtureBuilders; path = FixtureBuilders; sourceTree = ""; }; - OBJ_860 /* MemberLookup */ = { + OBJ_948 /* MemberLookup */ = { isa = PBXGroup; children = ( - OBJ_861 /* KnownTypeMemberLookupTests.swift */, + OBJ_949 /* KnownTypeMemberLookupTests.swift */, ); name = MemberLookup; path = MemberLookup; sourceTree = ""; }; - OBJ_863 /* TypeResolution */ = { + OBJ_951 /* TypeResolution */ = { isa = PBXGroup; children = ( - OBJ_864 /* CallableTypeResolverTests.swift */, - OBJ_865 /* CoercionVerifierTests.swift */, - OBJ_866 /* ExpressionTypeResolverTests+DynamicMemberLookup.swift */, - OBJ_867 /* ExpressionTypeResolverTests.swift */, - OBJ_868 /* IteratorTypeResolverTests.swift */, - OBJ_869 /* PatternMatcherTests.swift */, + OBJ_952 /* CallableTypeResolverTests.swift */, + OBJ_953 /* CoercionVerifierTests.swift */, + OBJ_954 /* ExpressionTypeResolverTests+DynamicMemberLookup.swift */, + OBJ_955 /* ExpressionTypeResolverTests.swift */, + OBJ_956 /* IteratorTypeResolverTests.swift */, + OBJ_957 /* PatternMatcherTests.swift */, ); name = TypeResolution; path = TypeResolution; sourceTree = ""; }; - OBJ_871 /* UtilsTests */ = { + OBJ_959 /* UtilsTests */ = { isa = PBXGroup; children = ( - OBJ_872 /* ConcurrentOperationQueueTests.swift */, - OBJ_873 /* ConcurrentValueTests.swift */, - OBJ_874 /* InvalidSourceTests.swift */, - OBJ_875 /* MutexTests.swift */, - OBJ_876 /* SourceRangeTests.swift */, - OBJ_877 /* StringCodeSourceTests.swift */, - OBJ_878 /* StringTests.swift */, + OBJ_960 /* ConcurrentOperationQueueTests.swift */, + OBJ_961 /* ConcurrentValueTests.swift */, + OBJ_962 /* InvalidSourceTests.swift */, + OBJ_963 /* MutexTests.swift */, + OBJ_964 /* SourceRangeTests.swift */, + OBJ_965 /* StringCodeSourceTests.swift */, + OBJ_966 /* StringTests.swift */, ); name = UtilsTests; path = Tests/UtilsTests; sourceTree = SOURCE_ROOT; }; - OBJ_879 /* WriterTargetOutputTests */ = { + OBJ_96 /* GraphvizLib */ = { + isa = PBXGroup; + children = ( + OBJ_97 /* GraphViz+Attribute.swift */, + OBJ_98 /* GraphViz+GraphAttributes.swift */, + OBJ_99 /* GraphViz.swift */, + ); + name = GraphvizLib; + path = Sources/Core/GraphvizLib; + sourceTree = SOURCE_ROOT; + }; + OBJ_967 /* WriterTargetOutputTests */ = { isa = PBXGroup; children = ( - OBJ_880 /* RewriterOutputTarget.swift */, - OBJ_881 /* StringRewriterOutputTests.swift */, + OBJ_968 /* RewriterOutputTarget.swift */, + OBJ_969 /* StringRewriterOutputTests.swift */, ); name = WriterTargetOutputTests; path = Tests/Core/WriterTargetOutputTests; sourceTree = SOURCE_ROOT; }; - OBJ_882 /* Dependencies */ = { + OBJ_970 /* Dependencies */ = { isa = PBXGroup; children = ( - OBJ_883 /* swift-format 0.50700.1 */, - OBJ_975 /* SwiftSyntax 0.50700.1 */, - OBJ_1030 /* Console 0.8.2 */, - OBJ_1040 /* Antlr4 4.1.2 */, - OBJ_1211 /* swift-argument-parser 1.1.4 */, - OBJ_1263 /* MiniLexer 0.10.0 */, + OBJ_971 /* swift-format 0.50700.1 */, + OBJ_1063 /* SwiftSyntax 0.50700.1 */, + OBJ_1118 /* Console 0.8.2 */, + OBJ_1128 /* Antlr4 4.1.2 */, + OBJ_1299 /* swift-argument-parser 1.1.4 */, + OBJ_1351 /* MiniLexer 0.10.0 */, ); name = Dependencies; path = ""; sourceTree = ""; }; - OBJ_883 /* swift-format 0.50700.1 */ = { + OBJ_971 /* swift-format 0.50700.1 */ = { isa = PBXGroup; children = ( - OBJ_884 /* SwiftFormat */, - OBJ_894 /* SwiftFormatConfiguration */, - OBJ_898 /* SwiftFormatCore */, - OBJ_912 /* SwiftFormatPrettyPrint */, - OBJ_922 /* SwiftFormatRules */, - OBJ_968 /* SwiftFormatWhitespaceLinter */, - OBJ_973 /* swift-format */, - OBJ_974 /* Package.swift */, + OBJ_972 /* SwiftFormat */, + OBJ_982 /* SwiftFormatConfiguration */, + OBJ_986 /* SwiftFormatCore */, + OBJ_1000 /* SwiftFormatPrettyPrint */, + OBJ_1010 /* SwiftFormatRules */, + OBJ_1056 /* SwiftFormatWhitespaceLinter */, + OBJ_1061 /* swift-format */, + OBJ_1062 /* Package.swift */, ); name = "swift-format 0.50700.1"; path = ""; sourceTree = SOURCE_ROOT; }; - OBJ_884 /* SwiftFormat */ = { + OBJ_972 /* SwiftFormat */ = { isa = PBXGroup; children = ( - OBJ_885 /* DebugOptions.swift */, - OBJ_886 /* Exports.swift */, - OBJ_887 /* FormatPipeline.swift */, - OBJ_888 /* LintPipeline.swift */, - OBJ_889 /* Pipelines+Generated.swift */, - OBJ_890 /* SwiftFormatError.swift */, - OBJ_891 /* SwiftFormatter.swift */, - OBJ_892 /* SwiftLinter.swift */, - OBJ_893 /* SyntaxValidatingVisitor.swift */, + OBJ_973 /* DebugOptions.swift */, + OBJ_974 /* Exports.swift */, + OBJ_975 /* FormatPipeline.swift */, + OBJ_976 /* LintPipeline.swift */, + OBJ_977 /* Pipelines+Generated.swift */, + OBJ_978 /* SwiftFormatError.swift */, + OBJ_979 /* SwiftFormatter.swift */, + OBJ_980 /* SwiftLinter.swift */, + OBJ_981 /* SyntaxValidatingVisitor.swift */, ); name = SwiftFormat; path = ".build/checkouts/swift-format/Sources/SwiftFormat"; sourceTree = SOURCE_ROOT; }; - OBJ_894 /* SwiftFormatConfiguration */ = { + OBJ_982 /* SwiftFormatConfiguration */ = { isa = PBXGroup; children = ( - OBJ_895 /* Configuration.swift */, - OBJ_896 /* Indent.swift */, - OBJ_897 /* RuleRegistry+Generated.swift */, + OBJ_983 /* Configuration.swift */, + OBJ_984 /* Indent.swift */, + OBJ_985 /* RuleRegistry+Generated.swift */, ); name = SwiftFormatConfiguration; path = ".build/checkouts/swift-format/Sources/SwiftFormatConfiguration"; sourceTree = SOURCE_ROOT; }; - OBJ_898 /* SwiftFormatCore */ = { + OBJ_986 /* SwiftFormatCore */ = { isa = PBXGroup; children = ( - OBJ_899 /* Context.swift */, - OBJ_900 /* Finding+Convenience.swift */, - OBJ_901 /* Finding.swift */, - OBJ_902 /* FindingCategorizing.swift */, - OBJ_903 /* FindingEmitter.swift */, - OBJ_904 /* Rule.swift */, - OBJ_905 /* RuleBasedFindingCategory.swift */, - OBJ_906 /* RuleMask.swift */, - OBJ_907 /* RuleState.swift */, - OBJ_908 /* SyntaxFormatRule.swift */, - OBJ_909 /* SyntaxLintRule.swift */, - OBJ_910 /* SyntaxProtocol+Convenience.swift */, - OBJ_911 /* Trivia+Convenience.swift */, + OBJ_987 /* Context.swift */, + OBJ_988 /* Finding+Convenience.swift */, + OBJ_989 /* Finding.swift */, + OBJ_990 /* FindingCategorizing.swift */, + OBJ_991 /* FindingEmitter.swift */, + OBJ_992 /* Rule.swift */, + OBJ_993 /* RuleBasedFindingCategory.swift */, + OBJ_994 /* RuleMask.swift */, + OBJ_995 /* RuleState.swift */, + OBJ_996 /* SyntaxFormatRule.swift */, + OBJ_997 /* SyntaxLintRule.swift */, + OBJ_998 /* SyntaxProtocol+Convenience.swift */, + OBJ_999 /* Trivia+Convenience.swift */, ); name = SwiftFormatCore; path = ".build/checkouts/swift-format/Sources/SwiftFormatCore"; sourceTree = SOURCE_ROOT; }; - OBJ_9 /* CallGraph */ = { - isa = PBXGroup; - children = ( - OBJ_10 /* CallGraph+Creation.swift */, - OBJ_11 /* CallGraph+Graphviz.swift */, - OBJ_12 /* CallGraph.swift */, - ); - name = CallGraph; - path = CallGraph; - sourceTree = ""; - }; - OBJ_91 /* GrammarModelBase */ = { - isa = PBXGroup; - children = ( - OBJ_92 /* ASTNode.swift */, - OBJ_93 /* ASTVisitor.swift */, - OBJ_94 /* CommentQuerier.swift */, - OBJ_95 /* RawCodeComment.swift */, - ); - name = GrammarModelBase; - path = Sources/Core/GrammarModelBase; - sourceTree = SOURCE_ROOT; - }; - OBJ_912 /* SwiftFormatPrettyPrint */ = { - isa = PBXGroup; - children = ( - OBJ_913 /* Comment.swift */, - OBJ_914 /* Indent+Length.swift */, - OBJ_915 /* OperatorContext.swift */, - OBJ_916 /* PrettyPrint.swift */, - OBJ_917 /* PrettyPrintFindingCategory.swift */, - OBJ_918 /* SequenceExprFolding.swift */, - OBJ_919 /* Token.swift */, - OBJ_920 /* TokenStreamCreator.swift */, - OBJ_921 /* Verbatim.swift */, - ); - name = SwiftFormatPrettyPrint; - path = ".build/checkouts/swift-format/Sources/SwiftFormatPrettyPrint"; - sourceTree = SOURCE_ROOT; - }; - OBJ_922 /* SwiftFormatRules */ = { - isa = PBXGroup; - children = ( - OBJ_923 /* AddModifierRewriter.swift */, - OBJ_924 /* AllPublicDeclarationsHaveDocumentation.swift */, - OBJ_925 /* AlwaysUseLowerCamelCase.swift */, - OBJ_926 /* AmbiguousTrailingClosureOverload.swift */, - OBJ_927 /* BeginDocumentationCommentWithOneLineSummary.swift */, - OBJ_928 /* DeclSyntaxProtocol+Comments.swift */, - OBJ_929 /* DoNotUseSemicolons.swift */, - OBJ_930 /* DontRepeatTypeInStaticProperties.swift */, - OBJ_931 /* FileScopedDeclarationPrivacy.swift */, - OBJ_932 /* FullyIndirectEnum.swift */, - OBJ_933 /* FunctionDeclSyntax+Convenience.swift */, - OBJ_934 /* GroupNumericLiterals.swift */, - OBJ_935 /* IdentifiersMustBeASCII.swift */, - OBJ_936 /* ImportsXCTestVisitor.swift */, - OBJ_937 /* ModifierListSyntax+Convenience.swift */, - OBJ_938 /* NeverForceUnwrap.swift */, - OBJ_939 /* NeverUseForceTry.swift */, - OBJ_940 /* NeverUseImplicitlyUnwrappedOptionals.swift */, - OBJ_941 /* NoAccessLevelOnExtensionDeclaration.swift */, - OBJ_942 /* NoBlockComments.swift */, - OBJ_943 /* NoCasesWithOnlyFallthrough.swift */, - OBJ_944 /* NoEmptyTrailingClosureParentheses.swift */, - OBJ_945 /* NoLabelsInCasePatterns.swift */, - OBJ_946 /* NoLeadingUnderscores.swift */, - OBJ_947 /* NoParensAroundConditions.swift */, - OBJ_948 /* NoPlaygroundLiterals.swift */, - OBJ_949 /* NoVoidReturnOnFunctionSignature.swift */, - OBJ_950 /* OneCasePerLine.swift */, - OBJ_951 /* OneVariableDeclarationPerLine.swift */, - OBJ_952 /* OnlyOneTrailingClosureArgument.swift */, - OBJ_953 /* OrderedImports.swift */, - OBJ_954 /* ReplaceTrivia.swift */, - OBJ_955 /* ReturnVoidInsteadOfEmptyTuple.swift */, - OBJ_956 /* RuleNameCache+Generated.swift */, - OBJ_957 /* SemicolonSyntaxProtocol.swift */, - OBJ_958 /* TokenSyntax+Convenience.swift */, - OBJ_959 /* UseEarlyExits.swift */, - OBJ_960 /* UseLetInEveryBoundCaseVariable.swift */, - OBJ_961 /* UseShorthandTypeNames.swift */, - OBJ_962 /* UseSingleLinePropertyGetter.swift */, - OBJ_963 /* UseSynthesizedInitializer.swift */, - OBJ_964 /* UseTripleSlashForDocumentationComments.swift */, - OBJ_965 /* UseWhereClausesInForLoops.swift */, - OBJ_966 /* ValidateDocumentationComments.swift */, - OBJ_967 /* VarDeclSyntax+Convenience.swift */, - ); - name = SwiftFormatRules; - path = ".build/checkouts/swift-format/Sources/SwiftFormatRules"; - sourceTree = SOURCE_ROOT; - }; - OBJ_96 /* GraphvizLib */ = { - isa = PBXGroup; - children = ( - OBJ_97 /* GraphViz+Attribute.swift */, - OBJ_98 /* GraphViz+GraphAttributes.swift */, - OBJ_99 /* GraphViz.swift */, - ); - name = GraphvizLib; - path = Sources/Core/GraphvizLib; - sourceTree = SOURCE_ROOT; - }; - OBJ_968 /* SwiftFormatWhitespaceLinter */ = { - isa = PBXGroup; - children = ( - OBJ_969 /* LazySplitSequence.swift */, - OBJ_970 /* RememberingIterator.swift */, - OBJ_971 /* WhitespaceFindingCategory.swift */, - OBJ_972 /* WhitespaceLinter.swift */, - ); - name = SwiftFormatWhitespaceLinter; - path = ".build/checkouts/swift-format/Sources/SwiftFormatWhitespaceLinter"; - sourceTree = SOURCE_ROOT; - }; - OBJ_973 /* swift-format */ = { - isa = PBXGroup; - children = ( - ); - name = "swift-format"; - path = ".build/checkouts/swift-format/Sources/swift-format"; - sourceTree = SOURCE_ROOT; - }; - OBJ_975 /* SwiftSyntax 0.50700.1 */ = { - isa = PBXGroup; - children = ( - OBJ_976 /* SwiftSyntax */, - OBJ_1015 /* SwiftSyntaxBuilder */, - OBJ_1016 /* SwiftSyntaxParser */, - OBJ_1022 /* _CSwiftSyntax */, - OBJ_1029 /* Package.swift */, - ); - name = "SwiftSyntax 0.50700.1"; - path = ""; - sourceTree = SOURCE_ROOT; - }; - OBJ_976 /* SwiftSyntax */ = { - isa = PBXGroup; - children = ( - OBJ_977 /* AbsolutePosition.swift */, - OBJ_978 /* AtomicCounter.swift */, - OBJ_979 /* CNodes.swift */, - OBJ_980 /* IncrementalParseTransition.swift */, - OBJ_981 /* RawSyntax.swift */, - OBJ_982 /* SourceLength.swift */, - OBJ_983 /* SourceLocation.swift */, - OBJ_984 /* SourcePresence.swift */, - OBJ_985 /* Syntax.swift */, - OBJ_986 /* SyntaxChildren.swift */, - OBJ_987 /* SyntaxClassifier.swift */, - OBJ_988 /* SyntaxData.swift */, - OBJ_989 /* SyntaxOtherNodes.swift */, - OBJ_990 /* SyntaxVerifier.swift */, - OBJ_991 /* Utils.swift */, - OBJ_992 /* _SyntaxParserInterop.swift */, - OBJ_993 /* gyb_generated */, - ); - name = SwiftSyntax; - path = ".build/checkouts/swift-syntax/Sources/SwiftSyntax"; - sourceTree = SOURCE_ROOT; - }; - OBJ_993 /* gyb_generated */ = { - isa = PBXGroup; - children = ( - OBJ_994 /* Misc.swift */, - OBJ_995 /* SyntaxAnyVisitor.swift */, - OBJ_996 /* SyntaxBaseNodes.swift */, - OBJ_997 /* SyntaxBuilders.swift */, - OBJ_998 /* SyntaxClassification.swift */, - OBJ_999 /* SyntaxCollections.swift */, - OBJ_1000 /* SyntaxEnum.swift */, - OBJ_1001 /* SyntaxFactory.swift */, - OBJ_1002 /* SyntaxKind.swift */, - OBJ_1003 /* SyntaxRewriter.swift */, - OBJ_1004 /* SyntaxTraits.swift */, - OBJ_1005 /* SyntaxVisitor.swift */, - OBJ_1006 /* TokenKind.swift */, - OBJ_1007 /* Trivia.swift */, - OBJ_1008 /* syntax_nodes */, - ); - name = gyb_generated; - path = gyb_generated; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ antlr4-swift::Antlr4 /* Antlr4 */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1556 /* Build configuration list for PBXNativeTarget "Antlr4" */; + buildConfigurationList = OBJ_1658 /* Build configuration list for PBXNativeTarget "Antlr4" */; buildPhases = ( - OBJ_1559 /* Sources */, - OBJ_1715 /* Frameworks */, + OBJ_1661 /* Sources */, + OBJ_1817 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_1717 /* PBXTargetDependency */, + OBJ_1819 /* PBXTargetDependency */, ); name = Antlr4; productName = Antlr4; @@ -7611,10 +8419,10 @@ }; antlr4-swift::CAntlrShims /* CAntlrShims */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1793 /* Build configuration list for PBXNativeTarget "CAntlrShims" */; + buildConfigurationList = OBJ_1895 /* Build configuration list for PBXNativeTarget "CAntlrShims" */; buildPhases = ( - OBJ_1796 /* Sources */, - OBJ_1798 /* Frameworks */, + OBJ_1898 /* Sources */, + OBJ_1900 /* Frameworks */, ); buildRules = ( ); @@ -7627,9 +8435,9 @@ }; antlr4-swift::SwiftPMPackageDescription /* Antlr4PackageDescription */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1719 /* Build configuration list for PBXNativeTarget "Antlr4PackageDescription" */; + buildConfigurationList = OBJ_1821 /* Build configuration list for PBXNativeTarget "Antlr4PackageDescription" */; buildPhases = ( - OBJ_1722 /* Sources */, + OBJ_1824 /* Sources */, ); buildRules = ( ); @@ -7641,10 +8449,10 @@ }; console::Console /* Console */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1950 /* Build configuration list for PBXNativeTarget "Console" */; + buildConfigurationList = OBJ_2058 /* Build configuration list for PBXNativeTarget "Console" */; buildPhases = ( - OBJ_1953 /* Sources */, - OBJ_1961 /* Frameworks */, + OBJ_2061 /* Sources */, + OBJ_2069 /* Frameworks */, ); buildRules = ( ); @@ -7657,9 +8465,9 @@ }; console::SwiftPMPackageDescription /* ConsolePackageDescription */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1963 /* Build configuration list for PBXNativeTarget "ConsolePackageDescription" */; + buildConfigurationList = OBJ_2071 /* Build configuration list for PBXNativeTarget "ConsolePackageDescription" */; buildPhases = ( - OBJ_1966 /* Sources */, + OBJ_2074 /* Sources */, ); buildRules = ( ); @@ -7671,10 +8479,10 @@ }; minilexer::MiniLexer /* MiniLexer */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2865 /* Build configuration list for PBXNativeTarget "MiniLexer" */; + buildConfigurationList = OBJ_3394 /* Build configuration list for PBXNativeTarget "MiniLexer" */; buildPhases = ( - OBJ_2868 /* Sources */, - OBJ_2877 /* Frameworks */, + OBJ_3397 /* Sources */, + OBJ_3406 /* Frameworks */, ); buildRules = ( ); @@ -7687,9 +8495,9 @@ }; minilexer::SwiftPMPackageDescription /* MiniLexerPackageDescription */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2879 /* Build configuration list for PBXNativeTarget "MiniLexerPackageDescription" */; + buildConfigurationList = OBJ_3408 /* Build configuration list for PBXNativeTarget "MiniLexerPackageDescription" */; buildPhases = ( - OBJ_2882 /* Sources */, + OBJ_3411 /* Sources */, ); buildRules = ( ); @@ -7701,15 +8509,15 @@ }; minilexer::TypeLexing /* TypeLexing */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4850 /* Build configuration list for PBXNativeTarget "TypeLexing" */; + buildConfigurationList = OBJ_5475 /* Build configuration list for PBXNativeTarget "TypeLexing" */; buildPhases = ( - OBJ_4853 /* Sources */, - OBJ_4855 /* Frameworks */, + OBJ_5478 /* Sources */, + OBJ_5480 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_4857 /* PBXTargetDependency */, + OBJ_5482 /* PBXTargetDependency */, ); name = TypeLexing; productName = TypeLexing; @@ -7718,15 +8526,15 @@ }; swift-argument-parser::ArgumentParser /* ArgumentParser */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1740 /* Build configuration list for PBXNativeTarget "ArgumentParser" */; + buildConfigurationList = OBJ_1842 /* Build configuration list for PBXNativeTarget "ArgumentParser" */; buildPhases = ( - OBJ_1743 /* Sources */, - OBJ_1783 /* Frameworks */, + OBJ_1845 /* Sources */, + OBJ_1885 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_1785 /* PBXTargetDependency */, + OBJ_1887 /* PBXTargetDependency */, ); name = ArgumentParser; productName = ArgumentParser; @@ -7735,10 +8543,10 @@ }; swift-argument-parser::ArgumentParserToolInfo /* ArgumentParserToolInfo */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1787 /* Build configuration list for PBXNativeTarget "ArgumentParserToolInfo" */; + buildConfigurationList = OBJ_1889 /* Build configuration list for PBXNativeTarget "ArgumentParserToolInfo" */; buildPhases = ( - OBJ_1790 /* Sources */, - OBJ_1792 /* Frameworks */, + OBJ_1892 /* Sources */, + OBJ_1894 /* Frameworks */, ); buildRules = ( ); @@ -7751,9 +8559,9 @@ }; swift-argument-parser::SwiftPMPackageDescription /* swift-argument-parserPackageDescription */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_5168 /* Build configuration list for PBXNativeTarget "swift-argument-parserPackageDescription" */; + buildConfigurationList = OBJ_5805 /* Build configuration list for PBXNativeTarget "swift-argument-parserPackageDescription" */; buildPhases = ( - OBJ_5171 /* Sources */, + OBJ_5808 /* Sources */, ); buildRules = ( ); @@ -7765,22 +8573,22 @@ }; swift-format::SwiftFormat /* SwiftFormat */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3672 /* Build configuration list for PBXNativeTarget "SwiftFormat" */; + buildConfigurationList = OBJ_4231 /* Build configuration list for PBXNativeTarget "SwiftFormat" */; buildPhases = ( - OBJ_3675 /* Sources */, - OBJ_3685 /* Frameworks */, + OBJ_4234 /* Sources */, + OBJ_4244 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3694 /* PBXTargetDependency */, - OBJ_3695 /* PBXTargetDependency */, - OBJ_3696 /* PBXTargetDependency */, - OBJ_3697 /* PBXTargetDependency */, - OBJ_3698 /* PBXTargetDependency */, - OBJ_3699 /* PBXTargetDependency */, - OBJ_3700 /* PBXTargetDependency */, - OBJ_3701 /* PBXTargetDependency */, + OBJ_4253 /* PBXTargetDependency */, + OBJ_4254 /* PBXTargetDependency */, + OBJ_4255 /* PBXTargetDependency */, + OBJ_4256 /* PBXTargetDependency */, + OBJ_4257 /* PBXTargetDependency */, + OBJ_4258 /* PBXTargetDependency */, + OBJ_4259 /* PBXTargetDependency */, + OBJ_4260 /* PBXTargetDependency */, ); name = SwiftFormat; productName = SwiftFormat; @@ -7789,10 +8597,10 @@ }; swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3702 /* Build configuration list for PBXNativeTarget "SwiftFormatConfiguration" */; + buildConfigurationList = OBJ_4261 /* Build configuration list for PBXNativeTarget "SwiftFormatConfiguration" */; buildPhases = ( - OBJ_3705 /* Sources */, - OBJ_3709 /* Frameworks */, + OBJ_4264 /* Sources */, + OBJ_4268 /* Frameworks */, ); buildRules = ( ); @@ -7805,17 +8613,17 @@ }; swift-format::SwiftFormatCore /* SwiftFormatCore */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3710 /* Build configuration list for PBXNativeTarget "SwiftFormatCore" */; + buildConfigurationList = OBJ_4269 /* Build configuration list for PBXNativeTarget "SwiftFormatCore" */; buildPhases = ( - OBJ_3713 /* Sources */, - OBJ_3727 /* Frameworks */, + OBJ_4272 /* Sources */, + OBJ_4286 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3731 /* PBXTargetDependency */, - OBJ_3732 /* PBXTargetDependency */, - OBJ_3733 /* PBXTargetDependency */, + OBJ_4290 /* PBXTargetDependency */, + OBJ_4291 /* PBXTargetDependency */, + OBJ_4292 /* PBXTargetDependency */, ); name = SwiftFormatCore; productName = SwiftFormatCore; @@ -7824,18 +8632,18 @@ }; swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3734 /* Build configuration list for PBXNativeTarget "SwiftFormatPrettyPrint" */; + buildConfigurationList = OBJ_4293 /* Build configuration list for PBXNativeTarget "SwiftFormatPrettyPrint" */; buildPhases = ( - OBJ_3737 /* Sources */, - OBJ_3747 /* Frameworks */, + OBJ_4296 /* Sources */, + OBJ_4306 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3752 /* PBXTargetDependency */, - OBJ_3753 /* PBXTargetDependency */, - OBJ_3754 /* PBXTargetDependency */, - OBJ_3755 /* PBXTargetDependency */, + OBJ_4311 /* PBXTargetDependency */, + OBJ_4312 /* PBXTargetDependency */, + OBJ_4313 /* PBXTargetDependency */, + OBJ_4314 /* PBXTargetDependency */, ); name = SwiftFormatPrettyPrint; productName = SwiftFormatPrettyPrint; @@ -7844,18 +8652,18 @@ }; swift-format::SwiftFormatRules /* SwiftFormatRules */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3756 /* Build configuration list for PBXNativeTarget "SwiftFormatRules" */; + buildConfigurationList = OBJ_4315 /* Build configuration list for PBXNativeTarget "SwiftFormatRules" */; buildPhases = ( - OBJ_3759 /* Sources */, - OBJ_3805 /* Frameworks */, + OBJ_4318 /* Sources */, + OBJ_4364 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3810 /* PBXTargetDependency */, - OBJ_3811 /* PBXTargetDependency */, - OBJ_3812 /* PBXTargetDependency */, - OBJ_3813 /* PBXTargetDependency */, + OBJ_4369 /* PBXTargetDependency */, + OBJ_4370 /* PBXTargetDependency */, + OBJ_4371 /* PBXTargetDependency */, + OBJ_4372 /* PBXTargetDependency */, ); name = SwiftFormatRules; productName = SwiftFormatRules; @@ -7864,18 +8672,18 @@ }; swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3814 /* Build configuration list for PBXNativeTarget "SwiftFormatWhitespaceLinter" */; + buildConfigurationList = OBJ_4373 /* Build configuration list for PBXNativeTarget "SwiftFormatWhitespaceLinter" */; buildPhases = ( - OBJ_3817 /* Sources */, - OBJ_3822 /* Frameworks */, + OBJ_4376 /* Sources */, + OBJ_4381 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3827 /* PBXTargetDependency */, - OBJ_3828 /* PBXTargetDependency */, - OBJ_3829 /* PBXTargetDependency */, - OBJ_3830 /* PBXTargetDependency */, + OBJ_4386 /* PBXTargetDependency */, + OBJ_4387 /* PBXTargetDependency */, + OBJ_4388 /* PBXTargetDependency */, + OBJ_4389 /* PBXTargetDependency */, ); name = SwiftFormatWhitespaceLinter; productName = SwiftFormatWhitespaceLinter; @@ -7884,9 +8692,9 @@ }; swift-format::SwiftPMPackageDescription /* swift-formatPackageDescription */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_5174 /* Build configuration list for PBXNativeTarget "swift-formatPackageDescription" */; + buildConfigurationList = OBJ_5811 /* Build configuration list for PBXNativeTarget "swift-formatPackageDescription" */; buildPhases = ( - OBJ_5177 /* Sources */, + OBJ_5814 /* Sources */, ); buildRules = ( ); @@ -7898,9 +8706,9 @@ }; swift-syntax::SwiftPMPackageDescription /* SwiftSyntaxPackageDescription */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4355 /* Build configuration list for PBXNativeTarget "SwiftSyntaxPackageDescription" */; + buildConfigurationList = OBJ_4953 /* Build configuration list for PBXNativeTarget "SwiftSyntaxPackageDescription" */; buildPhases = ( - OBJ_4358 /* Sources */, + OBJ_4956 /* Sources */, ); buildRules = ( ); @@ -7912,15 +8720,15 @@ }; swift-syntax::SwiftSyntax /* SwiftSyntax */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4311 /* Build configuration list for PBXNativeTarget "SwiftSyntax" */; + buildConfigurationList = OBJ_4909 /* Build configuration list for PBXNativeTarget "SwiftSyntax" */; buildPhases = ( - OBJ_4314 /* Sources */, - OBJ_4351 /* Frameworks */, + OBJ_4912 /* Sources */, + OBJ_4949 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_4353 /* PBXTargetDependency */, + OBJ_4951 /* PBXTargetDependency */, ); name = SwiftSyntax; productName = SwiftSyntax; @@ -7929,16 +8737,16 @@ }; swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4360 /* Build configuration list for PBXNativeTarget "SwiftSyntaxParser" */; + buildConfigurationList = OBJ_4958 /* Build configuration list for PBXNativeTarget "SwiftSyntaxParser" */; buildPhases = ( - OBJ_4363 /* Sources */, - OBJ_4368 /* Frameworks */, + OBJ_4961 /* Sources */, + OBJ_4966 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_4371 /* PBXTargetDependency */, - OBJ_4372 /* PBXTargetDependency */, + OBJ_4969 /* PBXTargetDependency */, + OBJ_4970 /* PBXTargetDependency */, ); name = SwiftSyntaxParser; productName = SwiftSyntaxParser; @@ -7947,10 +8755,10 @@ }; swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_5161 /* Build configuration list for PBXNativeTarget "_CSwiftSyntax" */; + buildConfigurationList = OBJ_5798 /* Build configuration list for PBXNativeTarget "_CSwiftSyntax" */; buildPhases = ( - OBJ_5164 /* Sources */, - OBJ_5166 /* Frameworks */, + OBJ_5801 /* Sources */, + OBJ_5803 /* Frameworks */, ); buildRules = ( ); @@ -7963,50 +8771,17 @@ }; swiftrewriter::Analysis /* Analysis */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1357 /* Build configuration list for PBXNativeTarget "Analysis" */; + buildConfigurationList = OBJ_1450 /* Build configuration list for PBXNativeTarget "Analysis" */; buildPhases = ( - OBJ_1360 /* Sources */, - OBJ_1381 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - OBJ_1402 /* PBXTargetDependency */, - OBJ_1404 /* PBXTargetDependency */, - OBJ_1406 /* PBXTargetDependency */, - OBJ_1408 /* PBXTargetDependency */, - OBJ_1410 /* PBXTargetDependency */, - OBJ_1412 /* PBXTargetDependency */, - OBJ_1414 /* PBXTargetDependency */, - OBJ_1416 /* PBXTargetDependency */, - OBJ_1418 /* PBXTargetDependency */, - OBJ_1420 /* PBXTargetDependency */, - OBJ_1422 /* PBXTargetDependency */, - OBJ_1424 /* PBXTargetDependency */, - OBJ_1426 /* PBXTargetDependency */, - OBJ_1428 /* PBXTargetDependency */, - OBJ_1430 /* PBXTargetDependency */, - OBJ_1432 /* PBXTargetDependency */, - OBJ_1434 /* PBXTargetDependency */, - OBJ_1436 /* PBXTargetDependency */, - OBJ_1438 /* PBXTargetDependency */, - OBJ_1440 /* PBXTargetDependency */, - ); - name = Analysis; - productName = Analysis; - productReference = swiftrewriter::Analysis::Product /* Analysis.framework */; - productType = "com.apple.product-type.framework"; - }; - swiftrewriter::AnalysisTests /* AnalysisTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = OBJ_1443 /* Build configuration list for PBXNativeTarget "AnalysisTests" */; - buildPhases = ( - OBJ_1446 /* Sources */, - OBJ_1462 /* Frameworks */, + OBJ_1453 /* Sources */, + OBJ_1474 /* Frameworks */, ); buildRules = ( ); dependencies = ( + OBJ_1495 /* PBXTargetDependency */, + OBJ_1497 /* PBXTargetDependency */, + OBJ_1499 /* PBXTargetDependency */, OBJ_1501 /* PBXTargetDependency */, OBJ_1503 /* PBXTargetDependency */, OBJ_1505 /* PBXTargetDependency */, @@ -8024,27 +8799,63 @@ OBJ_1529 /* PBXTargetDependency */, OBJ_1531 /* PBXTargetDependency */, OBJ_1533 /* PBXTargetDependency */, - OBJ_1535 /* PBXTargetDependency */, - OBJ_1536 /* PBXTargetDependency */, - OBJ_1537 /* PBXTargetDependency */, - OBJ_1538 /* PBXTargetDependency */, - OBJ_1539 /* PBXTargetDependency */, - OBJ_1540 /* PBXTargetDependency */, - OBJ_1541 /* PBXTargetDependency */, - OBJ_1542 /* PBXTargetDependency */, - OBJ_1543 /* PBXTargetDependency */, - OBJ_1544 /* PBXTargetDependency */, - OBJ_1545 /* PBXTargetDependency */, - OBJ_1546 /* PBXTargetDependency */, - OBJ_1547 /* PBXTargetDependency */, - OBJ_1548 /* PBXTargetDependency */, - OBJ_1549 /* PBXTargetDependency */, - OBJ_1550 /* PBXTargetDependency */, - OBJ_1551 /* PBXTargetDependency */, - OBJ_1552 /* PBXTargetDependency */, - OBJ_1553 /* PBXTargetDependency */, - OBJ_1554 /* PBXTargetDependency */, - OBJ_1555 /* PBXTargetDependency */, + ); + name = Analysis; + productName = Analysis; + productReference = swiftrewriter::Analysis::Product /* Analysis.framework */; + productType = "com.apple.product-type.framework"; + }; + swiftrewriter::AnalysisTests /* AnalysisTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_1536 /* Build configuration list for PBXNativeTarget "AnalysisTests" */; + buildPhases = ( + OBJ_1539 /* Sources */, + OBJ_1555 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_1597 /* PBXTargetDependency */, + OBJ_1599 /* PBXTargetDependency */, + OBJ_1601 /* PBXTargetDependency */, + OBJ_1603 /* PBXTargetDependency */, + OBJ_1605 /* PBXTargetDependency */, + OBJ_1607 /* PBXTargetDependency */, + OBJ_1609 /* PBXTargetDependency */, + OBJ_1611 /* PBXTargetDependency */, + OBJ_1613 /* PBXTargetDependency */, + OBJ_1615 /* PBXTargetDependency */, + OBJ_1617 /* PBXTargetDependency */, + OBJ_1619 /* PBXTargetDependency */, + OBJ_1621 /* PBXTargetDependency */, + OBJ_1623 /* PBXTargetDependency */, + OBJ_1625 /* PBXTargetDependency */, + OBJ_1627 /* PBXTargetDependency */, + OBJ_1629 /* PBXTargetDependency */, + OBJ_1631 /* PBXTargetDependency */, + OBJ_1633 /* PBXTargetDependency */, + OBJ_1635 /* PBXTargetDependency */, + OBJ_1637 /* PBXTargetDependency */, + OBJ_1638 /* PBXTargetDependency */, + OBJ_1639 /* PBXTargetDependency */, + OBJ_1640 /* PBXTargetDependency */, + OBJ_1641 /* PBXTargetDependency */, + OBJ_1642 /* PBXTargetDependency */, + OBJ_1643 /* PBXTargetDependency */, + OBJ_1644 /* PBXTargetDependency */, + OBJ_1645 /* PBXTargetDependency */, + OBJ_1646 /* PBXTargetDependency */, + OBJ_1647 /* PBXTargetDependency */, + OBJ_1648 /* PBXTargetDependency */, + OBJ_1649 /* PBXTargetDependency */, + OBJ_1650 /* PBXTargetDependency */, + OBJ_1651 /* PBXTargetDependency */, + OBJ_1652 /* PBXTargetDependency */, + OBJ_1653 /* PBXTargetDependency */, + OBJ_1654 /* PBXTargetDependency */, + OBJ_1655 /* PBXTargetDependency */, + OBJ_1656 /* PBXTargetDependency */, + OBJ_1657 /* PBXTargetDependency */, ); name = AnalysisTests; productName = AnalysisTests; @@ -8053,17 +8864,17 @@ }; swiftrewriter::AntlrCommons /* AntlrCommons */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1724 /* Build configuration list for PBXNativeTarget "AntlrCommons" */; + buildConfigurationList = OBJ_1826 /* Build configuration list for PBXNativeTarget "AntlrCommons" */; buildPhases = ( - OBJ_1727 /* Sources */, - OBJ_1732 /* Frameworks */, + OBJ_1829 /* Sources */, + OBJ_1834 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_1736 /* PBXTargetDependency */, - OBJ_1737 /* PBXTargetDependency */, - OBJ_1738 /* PBXTargetDependency */, + OBJ_1838 /* PBXTargetDependency */, + OBJ_1839 /* PBXTargetDependency */, + OBJ_1840 /* PBXTargetDependency */, ); name = AntlrCommons; productName = AntlrCommons; @@ -8072,102 +8883,48 @@ }; swiftrewriter::Commons /* Commons */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1799 /* Build configuration list for PBXNativeTarget "Commons" */; - buildPhases = ( - OBJ_1802 /* Sources */, - OBJ_1824 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - OBJ_1843 /* PBXTargetDependency */, - OBJ_1844 /* PBXTargetDependency */, - OBJ_1845 /* PBXTargetDependency */, - OBJ_1846 /* PBXTargetDependency */, - OBJ_1847 /* PBXTargetDependency */, - OBJ_1848 /* PBXTargetDependency */, - OBJ_1849 /* PBXTargetDependency */, - OBJ_1850 /* PBXTargetDependency */, - OBJ_1851 /* PBXTargetDependency */, - OBJ_1852 /* PBXTargetDependency */, - OBJ_1853 /* PBXTargetDependency */, - OBJ_1854 /* PBXTargetDependency */, - OBJ_1855 /* PBXTargetDependency */, - OBJ_1856 /* PBXTargetDependency */, - OBJ_1857 /* PBXTargetDependency */, - OBJ_1858 /* PBXTargetDependency */, - OBJ_1859 /* PBXTargetDependency */, - OBJ_1860 /* PBXTargetDependency */, - ); - name = Commons; - productName = Commons; - productReference = swiftrewriter::Commons::Product /* Commons.framework */; - productType = "com.apple.product-type.framework"; - }; - swiftrewriter::CommonsTests /* CommonsTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = OBJ_1862 /* Build configuration list for PBXNativeTarget "CommonsTests" */; + buildConfigurationList = OBJ_1901 /* Build configuration list for PBXNativeTarget "Commons" */; buildPhases = ( - OBJ_1865 /* Sources */, - OBJ_1877 /* Frameworks */, + OBJ_1904 /* Sources */, + OBJ_1926 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_1914 /* PBXTargetDependency */, - OBJ_1915 /* PBXTargetDependency */, - OBJ_1916 /* PBXTargetDependency */, - OBJ_1917 /* PBXTargetDependency */, - OBJ_1918 /* PBXTargetDependency */, - OBJ_1919 /* PBXTargetDependency */, - OBJ_1920 /* PBXTargetDependency */, - OBJ_1921 /* PBXTargetDependency */, - OBJ_1922 /* PBXTargetDependency */, - OBJ_1923 /* PBXTargetDependency */, - OBJ_1924 /* PBXTargetDependency */, - OBJ_1925 /* PBXTargetDependency */, - OBJ_1926 /* PBXTargetDependency */, - OBJ_1927 /* PBXTargetDependency */, - OBJ_1928 /* PBXTargetDependency */, - OBJ_1929 /* PBXTargetDependency */, - OBJ_1930 /* PBXTargetDependency */, - OBJ_1931 /* PBXTargetDependency */, - OBJ_1932 /* PBXTargetDependency */, - OBJ_1933 /* PBXTargetDependency */, - OBJ_1934 /* PBXTargetDependency */, - OBJ_1935 /* PBXTargetDependency */, - OBJ_1936 /* PBXTargetDependency */, - OBJ_1937 /* PBXTargetDependency */, - OBJ_1938 /* PBXTargetDependency */, - OBJ_1939 /* PBXTargetDependency */, - OBJ_1940 /* PBXTargetDependency */, - OBJ_1941 /* PBXTargetDependency */, - OBJ_1942 /* PBXTargetDependency */, - OBJ_1943 /* PBXTargetDependency */, - OBJ_1944 /* PBXTargetDependency */, OBJ_1945 /* PBXTargetDependency */, OBJ_1946 /* PBXTargetDependency */, OBJ_1947 /* PBXTargetDependency */, OBJ_1948 /* PBXTargetDependency */, OBJ_1949 /* PBXTargetDependency */, + OBJ_1950 /* PBXTargetDependency */, + OBJ_1951 /* PBXTargetDependency */, + OBJ_1952 /* PBXTargetDependency */, + OBJ_1953 /* PBXTargetDependency */, + OBJ_1954 /* PBXTargetDependency */, + OBJ_1955 /* PBXTargetDependency */, + OBJ_1956 /* PBXTargetDependency */, + OBJ_1957 /* PBXTargetDependency */, + OBJ_1958 /* PBXTargetDependency */, + OBJ_1959 /* PBXTargetDependency */, + OBJ_1960 /* PBXTargetDependency */, + OBJ_1961 /* PBXTargetDependency */, + OBJ_1962 /* PBXTargetDependency */, ); - name = CommonsTests; - productName = CommonsTests; - productReference = swiftrewriter::CommonsTests::Product /* CommonsTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; + name = Commons; + productName = Commons; + productReference = swiftrewriter::Commons::Product /* Commons.framework */; + productType = "com.apple.product-type.framework"; }; - swiftrewriter::ExpressionPasses /* ExpressionPasses */ = { + swiftrewriter::CommonsTests /* CommonsTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_1968 /* Build configuration list for PBXNativeTarget "ExpressionPasses" */; + buildConfigurationList = OBJ_1964 /* Build configuration list for PBXNativeTarget "CommonsTests" */; buildPhases = ( - OBJ_1971 /* Sources */, - OBJ_1995 /* Frameworks */, + OBJ_1967 /* Sources */, + OBJ_1979 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_2017 /* PBXTargetDependency */, - OBJ_2018 /* PBXTargetDependency */, OBJ_2019 /* PBXTargetDependency */, OBJ_2020 /* PBXTargetDependency */, OBJ_2021 /* PBXTargetDependency */, @@ -8187,48 +8944,42 @@ OBJ_2035 /* PBXTargetDependency */, OBJ_2036 /* PBXTargetDependency */, OBJ_2037 /* PBXTargetDependency */, + OBJ_2038 /* PBXTargetDependency */, + OBJ_2039 /* PBXTargetDependency */, + OBJ_2040 /* PBXTargetDependency */, + OBJ_2041 /* PBXTargetDependency */, + OBJ_2042 /* PBXTargetDependency */, + OBJ_2043 /* PBXTargetDependency */, + OBJ_2044 /* PBXTargetDependency */, + OBJ_2045 /* PBXTargetDependency */, + OBJ_2046 /* PBXTargetDependency */, + OBJ_2047 /* PBXTargetDependency */, + OBJ_2048 /* PBXTargetDependency */, + OBJ_2049 /* PBXTargetDependency */, + OBJ_2050 /* PBXTargetDependency */, + OBJ_2051 /* PBXTargetDependency */, + OBJ_2052 /* PBXTargetDependency */, + OBJ_2053 /* PBXTargetDependency */, + OBJ_2054 /* PBXTargetDependency */, + OBJ_2055 /* PBXTargetDependency */, + OBJ_2056 /* PBXTargetDependency */, + OBJ_2057 /* PBXTargetDependency */, ); - name = ExpressionPasses; - productName = ExpressionPasses; - productReference = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; - productType = "com.apple.product-type.framework"; + name = CommonsTests; + productName = CommonsTests; + productReference = swiftrewriter::CommonsTests::Product /* CommonsTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::ExpressionPassesTests /* ExpressionPassesTests */ = { + swiftrewriter::ExpressionPasses /* ExpressionPasses */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2039 /* Build configuration list for PBXNativeTarget "ExpressionPassesTests" */; + buildConfigurationList = OBJ_2076 /* Build configuration list for PBXNativeTarget "ExpressionPasses" */; buildPhases = ( - OBJ_2042 /* Sources */, - OBJ_2060 /* Frameworks */, + OBJ_2079 /* Sources */, + OBJ_2103 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_2099 /* PBXTargetDependency */, - OBJ_2100 /* PBXTargetDependency */, - OBJ_2101 /* PBXTargetDependency */, - OBJ_2102 /* PBXTargetDependency */, - OBJ_2103 /* PBXTargetDependency */, - OBJ_2104 /* PBXTargetDependency */, - OBJ_2105 /* PBXTargetDependency */, - OBJ_2106 /* PBXTargetDependency */, - OBJ_2107 /* PBXTargetDependency */, - OBJ_2108 /* PBXTargetDependency */, - OBJ_2109 /* PBXTargetDependency */, - OBJ_2110 /* PBXTargetDependency */, - OBJ_2111 /* PBXTargetDependency */, - OBJ_2112 /* PBXTargetDependency */, - OBJ_2113 /* PBXTargetDependency */, - OBJ_2114 /* PBXTargetDependency */, - OBJ_2115 /* PBXTargetDependency */, - OBJ_2116 /* PBXTargetDependency */, - OBJ_2117 /* PBXTargetDependency */, - OBJ_2118 /* PBXTargetDependency */, - OBJ_2119 /* PBXTargetDependency */, - OBJ_2120 /* PBXTargetDependency */, - OBJ_2121 /* PBXTargetDependency */, - OBJ_2122 /* PBXTargetDependency */, - OBJ_2123 /* PBXTargetDependency */, - OBJ_2124 /* PBXTargetDependency */, OBJ_2125 /* PBXTargetDependency */, OBJ_2126 /* PBXTargetDependency */, OBJ_2127 /* PBXTargetDependency */, @@ -8241,57 +8992,56 @@ OBJ_2134 /* PBXTargetDependency */, OBJ_2135 /* PBXTargetDependency */, OBJ_2136 /* PBXTargetDependency */, + OBJ_2137 /* PBXTargetDependency */, + OBJ_2138 /* PBXTargetDependency */, + OBJ_2139 /* PBXTargetDependency */, + OBJ_2140 /* PBXTargetDependency */, + OBJ_2141 /* PBXTargetDependency */, + OBJ_2142 /* PBXTargetDependency */, + OBJ_2143 /* PBXTargetDependency */, + OBJ_2144 /* PBXTargetDependency */, + OBJ_2145 /* PBXTargetDependency */, ); - name = ExpressionPassesTests; - productName = ExpressionPassesTests; - productReference = swiftrewriter::ExpressionPassesTests::Product /* ExpressionPassesTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - swiftrewriter::GlobalsProviders /* GlobalsProviders */ = { - isa = PBXNativeTarget; - buildConfigurationList = OBJ_2137 /* Build configuration list for PBXNativeTarget "GlobalsProviders" */; - buildPhases = ( - OBJ_2140 /* Sources */, - OBJ_2147 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - OBJ_2167 /* PBXTargetDependency */, - OBJ_2168 /* PBXTargetDependency */, - OBJ_2169 /* PBXTargetDependency */, - OBJ_2170 /* PBXTargetDependency */, - OBJ_2171 /* PBXTargetDependency */, - OBJ_2172 /* PBXTargetDependency */, - OBJ_2173 /* PBXTargetDependency */, - OBJ_2174 /* PBXTargetDependency */, - OBJ_2175 /* PBXTargetDependency */, - OBJ_2176 /* PBXTargetDependency */, - OBJ_2177 /* PBXTargetDependency */, - OBJ_2178 /* PBXTargetDependency */, - OBJ_2179 /* PBXTargetDependency */, - OBJ_2180 /* PBXTargetDependency */, - OBJ_2181 /* PBXTargetDependency */, - OBJ_2182 /* PBXTargetDependency */, - OBJ_2183 /* PBXTargetDependency */, - OBJ_2184 /* PBXTargetDependency */, - OBJ_2185 /* PBXTargetDependency */, - ); - name = GlobalsProviders; - productName = GlobalsProviders; - productReference = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; + name = ExpressionPasses; + productName = ExpressionPasses; + productReference = swiftrewriter::ExpressionPasses::Product /* ExpressionPasses.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::GlobalsProvidersTests /* GlobalsProvidersTests */ = { + swiftrewriter::ExpressionPassesTests /* ExpressionPassesTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2187 /* Build configuration list for PBXNativeTarget "GlobalsProvidersTests" */; + buildConfigurationList = OBJ_2147 /* Build configuration list for PBXNativeTarget "ExpressionPassesTests" */; buildPhases = ( - OBJ_2190 /* Sources */, - OBJ_2196 /* Frameworks */, + OBJ_2150 /* Sources */, + OBJ_2168 /* Frameworks */, ); buildRules = ( ); dependencies = ( + OBJ_2210 /* PBXTargetDependency */, + OBJ_2211 /* PBXTargetDependency */, + OBJ_2212 /* PBXTargetDependency */, + OBJ_2213 /* PBXTargetDependency */, + OBJ_2214 /* PBXTargetDependency */, + OBJ_2215 /* PBXTargetDependency */, + OBJ_2216 /* PBXTargetDependency */, + OBJ_2217 /* PBXTargetDependency */, + OBJ_2218 /* PBXTargetDependency */, + OBJ_2219 /* PBXTargetDependency */, + OBJ_2220 /* PBXTargetDependency */, + OBJ_2221 /* PBXTargetDependency */, + OBJ_2222 /* PBXTargetDependency */, + OBJ_2223 /* PBXTargetDependency */, + OBJ_2224 /* PBXTargetDependency */, + OBJ_2225 /* PBXTargetDependency */, + OBJ_2226 /* PBXTargetDependency */, + OBJ_2227 /* PBXTargetDependency */, + OBJ_2228 /* PBXTargetDependency */, + OBJ_2229 /* PBXTargetDependency */, + OBJ_2230 /* PBXTargetDependency */, + OBJ_2231 /* PBXTargetDependency */, + OBJ_2232 /* PBXTargetDependency */, + OBJ_2233 /* PBXTargetDependency */, + OBJ_2234 /* PBXTargetDependency */, OBJ_2235 /* PBXTargetDependency */, OBJ_2236 /* PBXTargetDependency */, OBJ_2237 /* PBXTargetDependency */, @@ -8308,99 +9058,62 @@ OBJ_2248 /* PBXTargetDependency */, OBJ_2249 /* PBXTargetDependency */, OBJ_2250 /* PBXTargetDependency */, - OBJ_2251 /* PBXTargetDependency */, - OBJ_2252 /* PBXTargetDependency */, - OBJ_2253 /* PBXTargetDependency */, - OBJ_2254 /* PBXTargetDependency */, - OBJ_2255 /* PBXTargetDependency */, - OBJ_2256 /* PBXTargetDependency */, - OBJ_2257 /* PBXTargetDependency */, - OBJ_2258 /* PBXTargetDependency */, - OBJ_2259 /* PBXTargetDependency */, - OBJ_2260 /* PBXTargetDependency */, - OBJ_2261 /* PBXTargetDependency */, - OBJ_2262 /* PBXTargetDependency */, - OBJ_2263 /* PBXTargetDependency */, - OBJ_2264 /* PBXTargetDependency */, - OBJ_2265 /* PBXTargetDependency */, - OBJ_2266 /* PBXTargetDependency */, - OBJ_2267 /* PBXTargetDependency */, - OBJ_2268 /* PBXTargetDependency */, - OBJ_2269 /* PBXTargetDependency */, - OBJ_2270 /* PBXTargetDependency */, - OBJ_2271 /* PBXTargetDependency */, - OBJ_2272 /* PBXTargetDependency */, ); - name = GlobalsProvidersTests; - productName = GlobalsProvidersTests; - productReference = swiftrewriter::GlobalsProvidersTests::Product /* GlobalsProvidersTests.xctest */; + name = ExpressionPassesTests; + productName = ExpressionPassesTests; + productReference = swiftrewriter::ExpressionPassesTests::Product /* ExpressionPassesTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::GrammarModelBase /* GrammarModelBase */ = { + swiftrewriter::GlobalsProviders /* GlobalsProviders */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2273 /* Build configuration list for PBXNativeTarget "GrammarModelBase" */; + buildConfigurationList = OBJ_2251 /* Build configuration list for PBXNativeTarget "GlobalsProviders" */; buildPhases = ( - OBJ_2276 /* Sources */, - OBJ_2281 /* Frameworks */, + OBJ_2254 /* Sources */, + OBJ_2261 /* Frameworks */, ); buildRules = ( ); dependencies = ( + OBJ_2281 /* PBXTargetDependency */, + OBJ_2282 /* PBXTargetDependency */, + OBJ_2283 /* PBXTargetDependency */, + OBJ_2284 /* PBXTargetDependency */, OBJ_2285 /* PBXTargetDependency */, OBJ_2286 /* PBXTargetDependency */, OBJ_2287 /* PBXTargetDependency */, - ); - name = GrammarModelBase; - productName = GrammarModelBase; - productReference = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; - productType = "com.apple.product-type.framework"; - }; - swiftrewriter::GrammarModelBaseTests /* GrammarModelBaseTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = OBJ_2289 /* Build configuration list for PBXNativeTarget "GrammarModelBaseTests" */; - buildPhases = ( - OBJ_2292 /* Sources */, - OBJ_2294 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( + OBJ_2288 /* PBXTargetDependency */, + OBJ_2289 /* PBXTargetDependency */, + OBJ_2290 /* PBXTargetDependency */, + OBJ_2291 /* PBXTargetDependency */, + OBJ_2292 /* PBXTargetDependency */, + OBJ_2293 /* PBXTargetDependency */, + OBJ_2294 /* PBXTargetDependency */, + OBJ_2295 /* PBXTargetDependency */, + OBJ_2296 /* PBXTargetDependency */, + OBJ_2297 /* PBXTargetDependency */, + OBJ_2298 /* PBXTargetDependency */, OBJ_2299 /* PBXTargetDependency */, - OBJ_2300 /* PBXTargetDependency */, - OBJ_2301 /* PBXTargetDependency */, - OBJ_2302 /* PBXTargetDependency */, - ); - name = GrammarModelBaseTests; - productName = GrammarModelBaseTests; - productReference = swiftrewriter::GrammarModelBaseTests::Product /* GrammarModelBaseTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - swiftrewriter::GraphvizLib /* GraphvizLib */ = { - isa = PBXNativeTarget; - buildConfigurationList = OBJ_2303 /* Build configuration list for PBXNativeTarget "GraphvizLib" */; - buildPhases = ( - OBJ_2306 /* Sources */, - OBJ_2310 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( ); - name = GraphvizLib; - productName = GraphvizLib; - productReference = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; + name = GlobalsProviders; + productName = GlobalsProviders; + productReference = swiftrewriter::GlobalsProviders::Product /* GlobalsProviders.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::GraphvizLibTests /* GraphvizLibTests */ = { + swiftrewriter::GlobalsProvidersTests /* GlobalsProvidersTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2312 /* Build configuration list for PBXNativeTarget "GraphvizLibTests" */; + buildConfigurationList = OBJ_2301 /* Build configuration list for PBXNativeTarget "GlobalsProvidersTests" */; buildPhases = ( - OBJ_2315 /* Sources */, - OBJ_2318 /* Frameworks */, + OBJ_2304 /* Sources */, + OBJ_2310 /* Frameworks */, ); buildRules = ( ); dependencies = ( + OBJ_2352 /* PBXTargetDependency */, + OBJ_2353 /* PBXTargetDependency */, + OBJ_2354 /* PBXTargetDependency */, + OBJ_2355 /* PBXTargetDependency */, + OBJ_2356 /* PBXTargetDependency */, OBJ_2357 /* PBXTargetDependency */, OBJ_2358 /* PBXTargetDependency */, OBJ_2359 /* PBXTargetDependency */, @@ -8437,236 +9150,254 @@ OBJ_2390 /* PBXTargetDependency */, OBJ_2391 /* PBXTargetDependency */, OBJ_2392 /* PBXTargetDependency */, - OBJ_2393 /* PBXTargetDependency */, - OBJ_2394 /* PBXTargetDependency */, ); - name = GraphvizLibTests; - productName = GraphvizLibTests; - productReference = swiftrewriter::GraphvizLibTests::Product /* GraphvizLibTests.xctest */; + name = GlobalsProvidersTests; + productName = GlobalsProvidersTests; + productReference = swiftrewriter::GlobalsProvidersTests::Product /* GlobalsProvidersTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::IntentionPasses /* IntentionPasses */ = { + swiftrewriter::GrammarModelBase /* GrammarModelBase */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2395 /* Build configuration list for PBXNativeTarget "IntentionPasses" */; + buildConfigurationList = OBJ_2393 /* Build configuration list for PBXNativeTarget "GrammarModelBase" */; buildPhases = ( - OBJ_2398 /* Sources */, - OBJ_2420 /* Frameworks */, + OBJ_2396 /* Sources */, + OBJ_2401 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_2442 /* PBXTargetDependency */, - OBJ_2443 /* PBXTargetDependency */, - OBJ_2444 /* PBXTargetDependency */, - OBJ_2445 /* PBXTargetDependency */, - OBJ_2446 /* PBXTargetDependency */, - OBJ_2447 /* PBXTargetDependency */, - OBJ_2448 /* PBXTargetDependency */, - OBJ_2449 /* PBXTargetDependency */, - OBJ_2450 /* PBXTargetDependency */, - OBJ_2451 /* PBXTargetDependency */, - OBJ_2452 /* PBXTargetDependency */, - OBJ_2453 /* PBXTargetDependency */, - OBJ_2454 /* PBXTargetDependency */, - OBJ_2455 /* PBXTargetDependency */, - OBJ_2456 /* PBXTargetDependency */, - OBJ_2457 /* PBXTargetDependency */, - OBJ_2458 /* PBXTargetDependency */, - OBJ_2459 /* PBXTargetDependency */, - OBJ_2460 /* PBXTargetDependency */, - OBJ_2461 /* PBXTargetDependency */, - OBJ_2462 /* PBXTargetDependency */, + OBJ_2405 /* PBXTargetDependency */, + OBJ_2406 /* PBXTargetDependency */, + OBJ_2407 /* PBXTargetDependency */, ); - name = IntentionPasses; - productName = IntentionPasses; - productReference = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; + name = GrammarModelBase; + productName = GrammarModelBase; + productReference = swiftrewriter::GrammarModelBase::Product /* GrammarModelBase.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::IntentionPassesTests /* IntentionPassesTests */ = { + swiftrewriter::GrammarModelBaseTests /* GrammarModelBaseTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2464 /* Build configuration list for PBXNativeTarget "IntentionPassesTests" */; + buildConfigurationList = OBJ_2409 /* Build configuration list for PBXNativeTarget "GrammarModelBaseTests" */; buildPhases = ( - OBJ_2467 /* Sources */, - OBJ_2482 /* Frameworks */, + OBJ_2412 /* Sources */, + OBJ_2414 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_2521 /* PBXTargetDependency */, - OBJ_2522 /* PBXTargetDependency */, - OBJ_2523 /* PBXTargetDependency */, - OBJ_2524 /* PBXTargetDependency */, - OBJ_2525 /* PBXTargetDependency */, - OBJ_2526 /* PBXTargetDependency */, - OBJ_2527 /* PBXTargetDependency */, - OBJ_2528 /* PBXTargetDependency */, - OBJ_2529 /* PBXTargetDependency */, - OBJ_2530 /* PBXTargetDependency */, - OBJ_2531 /* PBXTargetDependency */, - OBJ_2532 /* PBXTargetDependency */, - OBJ_2533 /* PBXTargetDependency */, - OBJ_2534 /* PBXTargetDependency */, - OBJ_2535 /* PBXTargetDependency */, - OBJ_2536 /* PBXTargetDependency */, - OBJ_2537 /* PBXTargetDependency */, - OBJ_2538 /* PBXTargetDependency */, - OBJ_2539 /* PBXTargetDependency */, - OBJ_2540 /* PBXTargetDependency */, - OBJ_2541 /* PBXTargetDependency */, - OBJ_2542 /* PBXTargetDependency */, - OBJ_2543 /* PBXTargetDependency */, - OBJ_2544 /* PBXTargetDependency */, - OBJ_2545 /* PBXTargetDependency */, - OBJ_2546 /* PBXTargetDependency */, - OBJ_2547 /* PBXTargetDependency */, - OBJ_2548 /* PBXTargetDependency */, - OBJ_2549 /* PBXTargetDependency */, - OBJ_2550 /* PBXTargetDependency */, - OBJ_2551 /* PBXTargetDependency */, - OBJ_2552 /* PBXTargetDependency */, - OBJ_2553 /* PBXTargetDependency */, - OBJ_2554 /* PBXTargetDependency */, - OBJ_2555 /* PBXTargetDependency */, - OBJ_2556 /* PBXTargetDependency */, - OBJ_2557 /* PBXTargetDependency */, - OBJ_2558 /* PBXTargetDependency */, + OBJ_2419 /* PBXTargetDependency */, + OBJ_2420 /* PBXTargetDependency */, + OBJ_2421 /* PBXTargetDependency */, + OBJ_2422 /* PBXTargetDependency */, ); - name = IntentionPassesTests; - productName = IntentionPassesTests; - productReference = swiftrewriter::IntentionPassesTests::Product /* IntentionPassesTests.xctest */; + name = GrammarModelBaseTests; + productName = GrammarModelBaseTests; + productReference = swiftrewriter::GrammarModelBaseTests::Product /* GrammarModelBaseTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::Intentions /* Intentions */ = { + swiftrewriter::GraphvizLib /* GraphvizLib */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2559 /* Build configuration list for PBXNativeTarget "Intentions" */; + buildConfigurationList = OBJ_2423 /* Build configuration list for PBXNativeTarget "GraphvizLib" */; buildPhases = ( - OBJ_2562 /* Sources */, - OBJ_2618 /* Frameworks */, + OBJ_2426 /* Sources */, + OBJ_2430 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_2629 /* PBXTargetDependency */, - OBJ_2630 /* PBXTargetDependency */, - OBJ_2631 /* PBXTargetDependency */, - OBJ_2632 /* PBXTargetDependency */, - OBJ_2633 /* PBXTargetDependency */, - OBJ_2634 /* PBXTargetDependency */, - OBJ_2635 /* PBXTargetDependency */, - OBJ_2636 /* PBXTargetDependency */, - OBJ_2637 /* PBXTargetDependency */, - OBJ_2638 /* PBXTargetDependency */, ); - name = Intentions; - productName = Intentions; - productReference = swiftrewriter::Intentions::Product /* Intentions.framework */; + name = GraphvizLib; + productName = GraphvizLib; + productReference = swiftrewriter::GraphvizLib::Product /* GraphvizLib.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::IntentionsTests /* IntentionsTests */ = { + swiftrewriter::GraphvizLibTests /* GraphvizLibTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2640 /* Build configuration list for PBXNativeTarget "IntentionsTests" */; + buildConfigurationList = OBJ_2432 /* Build configuration list for PBXNativeTarget "GraphvizLibTests" */; buildPhases = ( - OBJ_2643 /* Sources */, - OBJ_2672 /* Frameworks */, + OBJ_2435 /* Sources */, + OBJ_2438 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_2711 /* PBXTargetDependency */, - OBJ_2712 /* PBXTargetDependency */, - OBJ_2713 /* PBXTargetDependency */, - OBJ_2714 /* PBXTargetDependency */, - OBJ_2715 /* PBXTargetDependency */, - OBJ_2716 /* PBXTargetDependency */, - OBJ_2717 /* PBXTargetDependency */, - OBJ_2718 /* PBXTargetDependency */, - OBJ_2719 /* PBXTargetDependency */, - OBJ_2720 /* PBXTargetDependency */, - OBJ_2721 /* PBXTargetDependency */, - OBJ_2722 /* PBXTargetDependency */, - OBJ_2723 /* PBXTargetDependency */, - OBJ_2724 /* PBXTargetDependency */, - OBJ_2725 /* PBXTargetDependency */, - OBJ_2726 /* PBXTargetDependency */, - OBJ_2727 /* PBXTargetDependency */, - OBJ_2728 /* PBXTargetDependency */, - OBJ_2729 /* PBXTargetDependency */, - OBJ_2730 /* PBXTargetDependency */, - OBJ_2731 /* PBXTargetDependency */, - OBJ_2732 /* PBXTargetDependency */, - OBJ_2733 /* PBXTargetDependency */, - OBJ_2734 /* PBXTargetDependency */, - OBJ_2735 /* PBXTargetDependency */, - OBJ_2736 /* PBXTargetDependency */, - OBJ_2737 /* PBXTargetDependency */, - OBJ_2738 /* PBXTargetDependency */, - OBJ_2739 /* PBXTargetDependency */, - OBJ_2740 /* PBXTargetDependency */, - OBJ_2741 /* PBXTargetDependency */, - OBJ_2742 /* PBXTargetDependency */, - OBJ_2743 /* PBXTargetDependency */, - OBJ_2744 /* PBXTargetDependency */, - OBJ_2745 /* PBXTargetDependency */, - OBJ_2746 /* PBXTargetDependency */, - OBJ_2747 /* PBXTargetDependency */, - OBJ_2748 /* PBXTargetDependency */, + OBJ_2480 /* PBXTargetDependency */, + OBJ_2481 /* PBXTargetDependency */, + OBJ_2482 /* PBXTargetDependency */, + OBJ_2483 /* PBXTargetDependency */, + OBJ_2484 /* PBXTargetDependency */, + OBJ_2485 /* PBXTargetDependency */, + OBJ_2486 /* PBXTargetDependency */, + OBJ_2487 /* PBXTargetDependency */, + OBJ_2488 /* PBXTargetDependency */, + OBJ_2489 /* PBXTargetDependency */, + OBJ_2490 /* PBXTargetDependency */, + OBJ_2491 /* PBXTargetDependency */, + OBJ_2492 /* PBXTargetDependency */, + OBJ_2493 /* PBXTargetDependency */, + OBJ_2494 /* PBXTargetDependency */, + OBJ_2495 /* PBXTargetDependency */, + OBJ_2496 /* PBXTargetDependency */, + OBJ_2497 /* PBXTargetDependency */, + OBJ_2498 /* PBXTargetDependency */, + OBJ_2499 /* PBXTargetDependency */, + OBJ_2500 /* PBXTargetDependency */, + OBJ_2501 /* PBXTargetDependency */, + OBJ_2502 /* PBXTargetDependency */, + OBJ_2503 /* PBXTargetDependency */, + OBJ_2504 /* PBXTargetDependency */, + OBJ_2505 /* PBXTargetDependency */, + OBJ_2506 /* PBXTargetDependency */, + OBJ_2507 /* PBXTargetDependency */, + OBJ_2508 /* PBXTargetDependency */, + OBJ_2509 /* PBXTargetDependency */, + OBJ_2510 /* PBXTargetDependency */, + OBJ_2511 /* PBXTargetDependency */, + OBJ_2512 /* PBXTargetDependency */, + OBJ_2513 /* PBXTargetDependency */, + OBJ_2514 /* PBXTargetDependency */, + OBJ_2515 /* PBXTargetDependency */, + OBJ_2516 /* PBXTargetDependency */, + OBJ_2517 /* PBXTargetDependency */, + OBJ_2518 /* PBXTargetDependency */, + OBJ_2519 /* PBXTargetDependency */, + OBJ_2520 /* PBXTargetDependency */, ); - name = IntentionsTests; - productName = IntentionsTests; - productReference = swiftrewriter::IntentionsTests::Product /* IntentionsTests.xctest */; + name = GraphvizLibTests; + productName = GraphvizLibTests; + productReference = swiftrewriter::GraphvizLibTests::Product /* GraphvizLibTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::KnownType /* KnownType */ = { + swiftrewriter::IntentionPasses /* IntentionPasses */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2749 /* Build configuration list for PBXNativeTarget "KnownType" */; + buildConfigurationList = OBJ_2521 /* Build configuration list for PBXNativeTarget "IntentionPasses" */; buildPhases = ( - OBJ_2752 /* Sources */, - OBJ_2767 /* Frameworks */, + OBJ_2524 /* Sources */, + OBJ_2546 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_2774 /* PBXTargetDependency */, - OBJ_2775 /* PBXTargetDependency */, - OBJ_2776 /* PBXTargetDependency */, - OBJ_2777 /* PBXTargetDependency */, - OBJ_2778 /* PBXTargetDependency */, - OBJ_2779 /* PBXTargetDependency */, + OBJ_2568 /* PBXTargetDependency */, + OBJ_2569 /* PBXTargetDependency */, + OBJ_2570 /* PBXTargetDependency */, + OBJ_2571 /* PBXTargetDependency */, + OBJ_2572 /* PBXTargetDependency */, + OBJ_2573 /* PBXTargetDependency */, + OBJ_2574 /* PBXTargetDependency */, + OBJ_2575 /* PBXTargetDependency */, + OBJ_2576 /* PBXTargetDependency */, + OBJ_2577 /* PBXTargetDependency */, + OBJ_2578 /* PBXTargetDependency */, + OBJ_2579 /* PBXTargetDependency */, + OBJ_2580 /* PBXTargetDependency */, + OBJ_2581 /* PBXTargetDependency */, + OBJ_2582 /* PBXTargetDependency */, + OBJ_2583 /* PBXTargetDependency */, + OBJ_2584 /* PBXTargetDependency */, + OBJ_2585 /* PBXTargetDependency */, + OBJ_2586 /* PBXTargetDependency */, + OBJ_2587 /* PBXTargetDependency */, + OBJ_2588 /* PBXTargetDependency */, ); - name = KnownType; - productName = KnownType; - productReference = swiftrewriter::KnownType::Product /* KnownType.framework */; + name = IntentionPasses; + productName = IntentionPasses; + productReference = swiftrewriter::IntentionPasses::Product /* IntentionPasses.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::KnownTypeTests /* KnownTypeTests */ = { + swiftrewriter::IntentionPassesTests /* IntentionPassesTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_2590 /* Build configuration list for PBXNativeTarget "IntentionPassesTests" */; + buildPhases = ( + OBJ_2593 /* Sources */, + OBJ_2608 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_2650 /* PBXTargetDependency */, + OBJ_2651 /* PBXTargetDependency */, + OBJ_2652 /* PBXTargetDependency */, + OBJ_2653 /* PBXTargetDependency */, + OBJ_2654 /* PBXTargetDependency */, + OBJ_2655 /* PBXTargetDependency */, + OBJ_2656 /* PBXTargetDependency */, + OBJ_2657 /* PBXTargetDependency */, + OBJ_2658 /* PBXTargetDependency */, + OBJ_2659 /* PBXTargetDependency */, + OBJ_2660 /* PBXTargetDependency */, + OBJ_2661 /* PBXTargetDependency */, + OBJ_2662 /* PBXTargetDependency */, + OBJ_2663 /* PBXTargetDependency */, + OBJ_2664 /* PBXTargetDependency */, + OBJ_2665 /* PBXTargetDependency */, + OBJ_2666 /* PBXTargetDependency */, + OBJ_2667 /* PBXTargetDependency */, + OBJ_2668 /* PBXTargetDependency */, + OBJ_2669 /* PBXTargetDependency */, + OBJ_2670 /* PBXTargetDependency */, + OBJ_2671 /* PBXTargetDependency */, + OBJ_2672 /* PBXTargetDependency */, + OBJ_2673 /* PBXTargetDependency */, + OBJ_2674 /* PBXTargetDependency */, + OBJ_2675 /* PBXTargetDependency */, + OBJ_2676 /* PBXTargetDependency */, + OBJ_2677 /* PBXTargetDependency */, + OBJ_2678 /* PBXTargetDependency */, + OBJ_2679 /* PBXTargetDependency */, + OBJ_2680 /* PBXTargetDependency */, + OBJ_2681 /* PBXTargetDependency */, + OBJ_2682 /* PBXTargetDependency */, + OBJ_2683 /* PBXTargetDependency */, + OBJ_2684 /* PBXTargetDependency */, + OBJ_2685 /* PBXTargetDependency */, + OBJ_2686 /* PBXTargetDependency */, + OBJ_2687 /* PBXTargetDependency */, + OBJ_2688 /* PBXTargetDependency */, + OBJ_2689 /* PBXTargetDependency */, + OBJ_2690 /* PBXTargetDependency */, + ); + name = IntentionPassesTests; + productName = IntentionPassesTests; + productReference = swiftrewriter::IntentionPassesTests::Product /* IntentionPassesTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + swiftrewriter::Intentions /* Intentions */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_2691 /* Build configuration list for PBXNativeTarget "Intentions" */; + buildPhases = ( + OBJ_2694 /* Sources */, + OBJ_2750 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_2761 /* PBXTargetDependency */, + OBJ_2762 /* PBXTargetDependency */, + OBJ_2763 /* PBXTargetDependency */, + OBJ_2764 /* PBXTargetDependency */, + OBJ_2765 /* PBXTargetDependency */, + OBJ_2766 /* PBXTargetDependency */, + OBJ_2767 /* PBXTargetDependency */, + OBJ_2768 /* PBXTargetDependency */, + OBJ_2769 /* PBXTargetDependency */, + OBJ_2770 /* PBXTargetDependency */, + ); + name = Intentions; + productName = Intentions; + productReference = swiftrewriter::Intentions::Product /* Intentions.framework */; + productType = "com.apple.product-type.framework"; + }; + swiftrewriter::IntentionsTests /* IntentionsTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2781 /* Build configuration list for PBXNativeTarget "KnownTypeTests" */; + buildConfigurationList = OBJ_2772 /* Build configuration list for PBXNativeTarget "IntentionsTests" */; buildPhases = ( - OBJ_2784 /* Sources */, - OBJ_2788 /* Frameworks */, + OBJ_2775 /* Sources */, + OBJ_2804 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_2827 /* PBXTargetDependency */, - OBJ_2828 /* PBXTargetDependency */, - OBJ_2829 /* PBXTargetDependency */, - OBJ_2830 /* PBXTargetDependency */, - OBJ_2831 /* PBXTargetDependency */, - OBJ_2832 /* PBXTargetDependency */, - OBJ_2833 /* PBXTargetDependency */, - OBJ_2834 /* PBXTargetDependency */, - OBJ_2835 /* PBXTargetDependency */, - OBJ_2836 /* PBXTargetDependency */, - OBJ_2837 /* PBXTargetDependency */, - OBJ_2838 /* PBXTargetDependency */, - OBJ_2839 /* PBXTargetDependency */, - OBJ_2840 /* PBXTargetDependency */, - OBJ_2841 /* PBXTargetDependency */, - OBJ_2842 /* PBXTargetDependency */, - OBJ_2843 /* PBXTargetDependency */, - OBJ_2844 /* PBXTargetDependency */, - OBJ_2845 /* PBXTargetDependency */, OBJ_2846 /* PBXTargetDependency */, OBJ_2847 /* PBXTargetDependency */, OBJ_2848 /* PBXTargetDependency */, @@ -8686,108 +9417,153 @@ OBJ_2862 /* PBXTargetDependency */, OBJ_2863 /* PBXTargetDependency */, OBJ_2864 /* PBXTargetDependency */, + OBJ_2865 /* PBXTargetDependency */, + OBJ_2866 /* PBXTargetDependency */, + OBJ_2867 /* PBXTargetDependency */, + OBJ_2868 /* PBXTargetDependency */, + OBJ_2869 /* PBXTargetDependency */, + OBJ_2870 /* PBXTargetDependency */, + OBJ_2871 /* PBXTargetDependency */, + OBJ_2872 /* PBXTargetDependency */, + OBJ_2873 /* PBXTargetDependency */, + OBJ_2874 /* PBXTargetDependency */, + OBJ_2875 /* PBXTargetDependency */, + OBJ_2876 /* PBXTargetDependency */, + OBJ_2877 /* PBXTargetDependency */, + OBJ_2878 /* PBXTargetDependency */, + OBJ_2879 /* PBXTargetDependency */, + OBJ_2880 /* PBXTargetDependency */, + OBJ_2881 /* PBXTargetDependency */, + OBJ_2882 /* PBXTargetDependency */, + OBJ_2883 /* PBXTargetDependency */, + OBJ_2884 /* PBXTargetDependency */, + OBJ_2885 /* PBXTargetDependency */, + OBJ_2886 /* PBXTargetDependency */, ); - name = KnownTypeTests; - productName = KnownTypeTests; - productReference = swiftrewriter::KnownTypeTests::Product /* KnownTypeTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */ = { - isa = PBXNativeTarget; - buildConfigurationList = OBJ_2884 /* Build configuration list for PBXNativeTarget "ObjcGrammarModels" */; - buildPhases = ( - OBJ_2887 /* Sources */, - OBJ_2915 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - OBJ_2922 /* PBXTargetDependency */, - OBJ_2923 /* PBXTargetDependency */, - OBJ_2924 /* PBXTargetDependency */, - OBJ_2925 /* PBXTargetDependency */, - OBJ_2926 /* PBXTargetDependency */, - OBJ_2927 /* PBXTargetDependency */, - ); - name = ObjcGrammarModels; - productName = ObjcGrammarModels; - productReference = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; - productType = "com.apple.product-type.framework"; - }; - swiftrewriter::ObjcGrammarModelsTests /* ObjcGrammarModelsTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = OBJ_2929 /* Build configuration list for PBXNativeTarget "ObjcGrammarModelsTests" */; - buildPhases = ( - OBJ_2932 /* Sources */, - OBJ_2934 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - OBJ_2942 /* PBXTargetDependency */, - OBJ_2943 /* PBXTargetDependency */, - OBJ_2944 /* PBXTargetDependency */, - OBJ_2945 /* PBXTargetDependency */, - OBJ_2946 /* PBXTargetDependency */, - OBJ_2947 /* PBXTargetDependency */, - OBJ_2948 /* PBXTargetDependency */, - ); - name = ObjcGrammarModelsTests; - productName = ObjcGrammarModelsTests; - productReference = swiftrewriter::ObjcGrammarModelsTests::Product /* ObjcGrammarModelsTests.xctest */; + name = IntentionsTests; + productName = IntentionsTests; + productReference = swiftrewriter::IntentionsTests::Product /* IntentionsTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::ObjcParser /* ObjcParser */ = { + swiftrewriter::JavaScriptFrontend /* JavaScriptFrontend */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_2949 /* Build configuration list for PBXNativeTarget "ObjcParser" */; + buildConfigurationList = OBJ_2888 /* Build configuration list for PBXNativeTarget "JavaScriptFrontend" */; buildPhases = ( - OBJ_2952 /* Sources */, - OBJ_3023 /* Frameworks */, + OBJ_2891 /* Sources */, + OBJ_2912 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3033 /* PBXTargetDependency */, - OBJ_3034 /* PBXTargetDependency */, - OBJ_3035 /* PBXTargetDependency */, - OBJ_3036 /* PBXTargetDependency */, - OBJ_3037 /* PBXTargetDependency */, - OBJ_3038 /* PBXTargetDependency */, - OBJ_3039 /* PBXTargetDependency */, - OBJ_3040 /* PBXTargetDependency */, - OBJ_3041 /* PBXTargetDependency */, - ); - name = ObjcParser; - productName = ObjcParser; - productReference = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; + OBJ_2952 /* PBXTargetDependency */, + OBJ_2953 /* PBXTargetDependency */, + OBJ_2954 /* PBXTargetDependency */, + OBJ_2955 /* PBXTargetDependency */, + OBJ_2956 /* PBXTargetDependency */, + OBJ_2957 /* PBXTargetDependency */, + OBJ_2958 /* PBXTargetDependency */, + OBJ_2959 /* PBXTargetDependency */, + OBJ_2960 /* PBXTargetDependency */, + OBJ_2961 /* PBXTargetDependency */, + OBJ_2962 /* PBXTargetDependency */, + OBJ_2963 /* PBXTargetDependency */, + OBJ_2964 /* PBXTargetDependency */, + OBJ_2965 /* PBXTargetDependency */, + OBJ_2966 /* PBXTargetDependency */, + OBJ_2967 /* PBXTargetDependency */, + OBJ_2968 /* PBXTargetDependency */, + OBJ_2969 /* PBXTargetDependency */, + OBJ_2970 /* PBXTargetDependency */, + OBJ_2971 /* PBXTargetDependency */, + OBJ_2972 /* PBXTargetDependency */, + OBJ_2973 /* PBXTargetDependency */, + OBJ_2974 /* PBXTargetDependency */, + OBJ_2975 /* PBXTargetDependency */, + OBJ_2976 /* PBXTargetDependency */, + OBJ_2977 /* PBXTargetDependency */, + OBJ_2978 /* PBXTargetDependency */, + OBJ_2979 /* PBXTargetDependency */, + OBJ_2980 /* PBXTargetDependency */, + OBJ_2981 /* PBXTargetDependency */, + OBJ_2982 /* PBXTargetDependency */, + OBJ_2983 /* PBXTargetDependency */, + OBJ_2984 /* PBXTargetDependency */, + OBJ_2985 /* PBXTargetDependency */, + OBJ_2986 /* PBXTargetDependency */, + OBJ_2987 /* PBXTargetDependency */, + OBJ_2988 /* PBXTargetDependency */, + OBJ_2989 /* PBXTargetDependency */, + OBJ_2990 /* PBXTargetDependency */, + ); + name = JavaScriptFrontend; + productName = JavaScriptFrontend; + productReference = swiftrewriter::JavaScriptFrontend::Product /* JavaScriptFrontend.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */ = { + swiftrewriter::JavaScriptFrontendTests /* JavaScriptFrontendTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3042 /* Build configuration list for PBXNativeTarget "ObjcParserAntlr" */; + buildConfigurationList = OBJ_2992 /* Build configuration list for PBXNativeTarget "JavaScriptFrontendTests" */; buildPhases = ( - OBJ_3045 /* Sources */, - OBJ_3059 /* Frameworks */, + OBJ_2995 /* Sources */, + OBJ_3011 /* Frameworks */, ); buildRules = ( ); dependencies = ( + OBJ_3054 /* PBXTargetDependency */, + OBJ_3055 /* PBXTargetDependency */, + OBJ_3056 /* PBXTargetDependency */, + OBJ_3057 /* PBXTargetDependency */, + OBJ_3058 /* PBXTargetDependency */, + OBJ_3059 /* PBXTargetDependency */, + OBJ_3060 /* PBXTargetDependency */, + OBJ_3061 /* PBXTargetDependency */, + OBJ_3062 /* PBXTargetDependency */, + OBJ_3063 /* PBXTargetDependency */, OBJ_3064 /* PBXTargetDependency */, OBJ_3065 /* PBXTargetDependency */, OBJ_3066 /* PBXTargetDependency */, OBJ_3067 /* PBXTargetDependency */, - ); - name = ObjcParserAntlr; - productName = ObjcParserAntlr; - productReference = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; - productType = "com.apple.product-type.framework"; + OBJ_3068 /* PBXTargetDependency */, + OBJ_3069 /* PBXTargetDependency */, + OBJ_3070 /* PBXTargetDependency */, + OBJ_3071 /* PBXTargetDependency */, + OBJ_3072 /* PBXTargetDependency */, + OBJ_3073 /* PBXTargetDependency */, + OBJ_3074 /* PBXTargetDependency */, + OBJ_3075 /* PBXTargetDependency */, + OBJ_3076 /* PBXTargetDependency */, + OBJ_3077 /* PBXTargetDependency */, + OBJ_3078 /* PBXTargetDependency */, + OBJ_3079 /* PBXTargetDependency */, + OBJ_3080 /* PBXTargetDependency */, + OBJ_3081 /* PBXTargetDependency */, + OBJ_3082 /* PBXTargetDependency */, + OBJ_3083 /* PBXTargetDependency */, + OBJ_3084 /* PBXTargetDependency */, + OBJ_3085 /* PBXTargetDependency */, + OBJ_3086 /* PBXTargetDependency */, + OBJ_3087 /* PBXTargetDependency */, + OBJ_3088 /* PBXTargetDependency */, + OBJ_3089 /* PBXTargetDependency */, + OBJ_3090 /* PBXTargetDependency */, + OBJ_3091 /* PBXTargetDependency */, + OBJ_3092 /* PBXTargetDependency */, + OBJ_3093 /* PBXTargetDependency */, + OBJ_3094 /* PBXTargetDependency */, + OBJ_3095 /* PBXTargetDependency */, + ); + name = JavaScriptFrontendTests; + productName = JavaScriptFrontendTests; + productReference = swiftrewriter::JavaScriptFrontendTests::Product /* JavaScriptFrontendTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::ObjcParserTests /* ObjcParserTests */ = { + swiftrewriter::JsGrammarModels /* JsGrammarModels */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3069 /* Build configuration list for PBXNativeTarget "ObjcParserTests" */; + buildConfigurationList = OBJ_3096 /* Build configuration list for PBXNativeTarget "JsGrammarModels" */; buildPhases = ( - OBJ_3072 /* Sources */, - OBJ_3084 /* Frameworks */, + OBJ_3099 /* Sources */, + OBJ_3116 /* Frameworks */, ); buildRules = ( ); @@ -8798,27 +9574,22 @@ OBJ_3126 /* PBXTargetDependency */, OBJ_3127 /* PBXTargetDependency */, OBJ_3128 /* PBXTargetDependency */, - OBJ_3129 /* PBXTargetDependency */, - OBJ_3130 /* PBXTargetDependency */, - OBJ_3131 /* PBXTargetDependency */, - OBJ_3132 /* PBXTargetDependency */, - OBJ_3133 /* PBXTargetDependency */, - OBJ_3134 /* PBXTargetDependency */, - OBJ_3135 /* PBXTargetDependency */, - OBJ_3136 /* PBXTargetDependency */, - OBJ_3137 /* PBXTargetDependency */, - OBJ_3138 /* PBXTargetDependency */, - OBJ_3139 /* PBXTargetDependency */, - OBJ_3140 /* PBXTargetDependency */, - OBJ_3141 /* PBXTargetDependency */, - OBJ_3142 /* PBXTargetDependency */, - OBJ_3143 /* PBXTargetDependency */, - OBJ_3144 /* PBXTargetDependency */, - OBJ_3145 /* PBXTargetDependency */, - OBJ_3146 /* PBXTargetDependency */, - OBJ_3147 /* PBXTargetDependency */, - OBJ_3148 /* PBXTargetDependency */, - OBJ_3149 /* PBXTargetDependency */, + ); + name = JsGrammarModels; + productName = JsGrammarModels; + productReference = swiftrewriter::JsGrammarModels::Product /* JsGrammarModels.framework */; + productType = "com.apple.product-type.framework"; + }; + swiftrewriter::JsParser /* JsParser */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_3129 /* Build configuration list for PBXNativeTarget "JsParser" */; + buildPhases = ( + OBJ_3132 /* Sources */, + OBJ_3140 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( OBJ_3150 /* PBXTargetDependency */, OBJ_3151 /* PBXTargetDependency */, OBJ_3152 /* PBXTargetDependency */, @@ -8828,30 +9599,42 @@ OBJ_3156 /* PBXTargetDependency */, OBJ_3157 /* PBXTargetDependency */, OBJ_3158 /* PBXTargetDependency */, - OBJ_3159 /* PBXTargetDependency */, - OBJ_3160 /* PBXTargetDependency */, ); - name = ObjcParserTests; - productName = ObjcParserTests; - productReference = swiftrewriter::ObjcParserTests::Product /* ObjcParserTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; + name = JsParser; + productName = JsParser; + productReference = swiftrewriter::JsParser::Product /* JsParser.framework */; + productType = "com.apple.product-type.framework"; }; - swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */ = { + swiftrewriter::JsParserAntlr /* JsParserAntlr */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_3159 /* Build configuration list for PBXNativeTarget "JsParserAntlr" */; + buildPhases = ( + OBJ_3162 /* Sources */, + OBJ_3172 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_3177 /* PBXTargetDependency */, + OBJ_3178 /* PBXTargetDependency */, + OBJ_3179 /* PBXTargetDependency */, + OBJ_3180 /* PBXTargetDependency */, + ); + name = JsParserAntlr; + productName = JsParserAntlr; + productReference = swiftrewriter::JsParserAntlr::Product /* JsParserAntlr.framework */; + productType = "com.apple.product-type.framework"; + }; + swiftrewriter::JsParserTests /* JsParserTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3161 /* Build configuration list for PBXNativeTarget "ObjectiveCFrontend" */; + buildConfigurationList = OBJ_3182 /* Build configuration list for PBXNativeTarget "JsParserTests" */; buildPhases = ( - OBJ_3164 /* Sources */, - OBJ_3188 /* Frameworks */, + OBJ_3185 /* Sources */, + OBJ_3189 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3225 /* PBXTargetDependency */, - OBJ_3226 /* PBXTargetDependency */, - OBJ_3227 /* PBXTargetDependency */, - OBJ_3228 /* PBXTargetDependency */, - OBJ_3229 /* PBXTargetDependency */, - OBJ_3230 /* PBXTargetDependency */, OBJ_3231 /* PBXTargetDependency */, OBJ_3232 /* PBXTargetDependency */, OBJ_3233 /* PBXTargetDependency */, @@ -8882,42 +9665,55 @@ OBJ_3258 /* PBXTargetDependency */, OBJ_3259 /* PBXTargetDependency */, OBJ_3260 /* PBXTargetDependency */, - ); - name = ObjectiveCFrontend; - productName = ObjectiveCFrontend; - productReference = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; + OBJ_3261 /* PBXTargetDependency */, + OBJ_3262 /* PBXTargetDependency */, + OBJ_3263 /* PBXTargetDependency */, + OBJ_3264 /* PBXTargetDependency */, + OBJ_3265 /* PBXTargetDependency */, + OBJ_3266 /* PBXTargetDependency */, + OBJ_3267 /* PBXTargetDependency */, + OBJ_3268 /* PBXTargetDependency */, + OBJ_3269 /* PBXTargetDependency */, + OBJ_3270 /* PBXTargetDependency */, + OBJ_3271 /* PBXTargetDependency */, + ); + name = JsParserTests; + productName = JsParserTests; + productReference = swiftrewriter::JsParserTests::Product /* JsParserTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + swiftrewriter::KnownType /* KnownType */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_3272 /* Build configuration list for PBXNativeTarget "KnownType" */; + buildPhases = ( + OBJ_3275 /* Sources */, + OBJ_3290 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_3297 /* PBXTargetDependency */, + OBJ_3298 /* PBXTargetDependency */, + OBJ_3299 /* PBXTargetDependency */, + OBJ_3300 /* PBXTargetDependency */, + OBJ_3301 /* PBXTargetDependency */, + OBJ_3302 /* PBXTargetDependency */, + ); + name = KnownType; + productName = KnownType; + productReference = swiftrewriter::KnownType::Product /* KnownType.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::ObjectiveCFrontendTests /* ObjectiveCFrontendTests */ = { + swiftrewriter::KnownTypeTests /* KnownTypeTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3262 /* Build configuration list for PBXNativeTarget "ObjectiveCFrontendTests" */; + buildConfigurationList = OBJ_3304 /* Build configuration list for PBXNativeTarget "KnownTypeTests" */; buildPhases = ( - OBJ_3265 /* Sources */, - OBJ_3294 /* Frameworks */, + OBJ_3307 /* Sources */, + OBJ_3311 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3333 /* PBXTargetDependency */, - OBJ_3334 /* PBXTargetDependency */, - OBJ_3335 /* PBXTargetDependency */, - OBJ_3336 /* PBXTargetDependency */, - OBJ_3337 /* PBXTargetDependency */, - OBJ_3338 /* PBXTargetDependency */, - OBJ_3339 /* PBXTargetDependency */, - OBJ_3340 /* PBXTargetDependency */, - OBJ_3341 /* PBXTargetDependency */, - OBJ_3342 /* PBXTargetDependency */, - OBJ_3343 /* PBXTargetDependency */, - OBJ_3344 /* PBXTargetDependency */, - OBJ_3345 /* PBXTargetDependency */, - OBJ_3346 /* PBXTargetDependency */, - OBJ_3347 /* PBXTargetDependency */, - OBJ_3348 /* PBXTargetDependency */, - OBJ_3349 /* PBXTargetDependency */, - OBJ_3350 /* PBXTargetDependency */, - OBJ_3351 /* PBXTargetDependency */, - OBJ_3352 /* PBXTargetDependency */, OBJ_3353 /* PBXTargetDependency */, OBJ_3354 /* PBXTargetDependency */, OBJ_3355 /* PBXTargetDependency */, @@ -8936,134 +9732,135 @@ OBJ_3368 /* PBXTargetDependency */, OBJ_3369 /* PBXTargetDependency */, OBJ_3370 /* PBXTargetDependency */, + OBJ_3371 /* PBXTargetDependency */, + OBJ_3372 /* PBXTargetDependency */, + OBJ_3373 /* PBXTargetDependency */, + OBJ_3374 /* PBXTargetDependency */, + OBJ_3375 /* PBXTargetDependency */, + OBJ_3376 /* PBXTargetDependency */, + OBJ_3377 /* PBXTargetDependency */, + OBJ_3378 /* PBXTargetDependency */, + OBJ_3379 /* PBXTargetDependency */, + OBJ_3380 /* PBXTargetDependency */, + OBJ_3381 /* PBXTargetDependency */, + OBJ_3382 /* PBXTargetDependency */, + OBJ_3383 /* PBXTargetDependency */, + OBJ_3384 /* PBXTargetDependency */, + OBJ_3385 /* PBXTargetDependency */, + OBJ_3386 /* PBXTargetDependency */, + OBJ_3387 /* PBXTargetDependency */, + OBJ_3388 /* PBXTargetDependency */, + OBJ_3389 /* PBXTargetDependency */, + OBJ_3390 /* PBXTargetDependency */, + OBJ_3391 /* PBXTargetDependency */, + OBJ_3392 /* PBXTargetDependency */, + OBJ_3393 /* PBXTargetDependency */, ); - name = ObjectiveCFrontendTests; - productName = ObjectiveCFrontendTests; - productReference = swiftrewriter::ObjectiveCFrontendTests::Product /* ObjectiveCFrontendTests.xctest */; + name = KnownTypeTests; + productName = KnownTypeTests; + productReference = swiftrewriter::KnownTypeTests::Product /* KnownTypeTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::SourcePreprocessors /* SourcePreprocessors */ = { + swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3371 /* Build configuration list for PBXNativeTarget "SourcePreprocessors" */; + buildConfigurationList = OBJ_3413 /* Build configuration list for PBXNativeTarget "ObjcGrammarModels" */; buildPhases = ( - OBJ_3374 /* Sources */, - OBJ_3377 /* Frameworks */, + OBJ_3416 /* Sources */, + OBJ_3444 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3380 /* PBXTargetDependency */, - OBJ_3381 /* PBXTargetDependency */, + OBJ_3451 /* PBXTargetDependency */, + OBJ_3452 /* PBXTargetDependency */, + OBJ_3453 /* PBXTargetDependency */, + OBJ_3454 /* PBXTargetDependency */, + OBJ_3455 /* PBXTargetDependency */, + OBJ_3456 /* PBXTargetDependency */, ); - name = SourcePreprocessors; - productName = SourcePreprocessors; - productReference = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; + name = ObjcGrammarModels; + productName = ObjcGrammarModels; + productReference = swiftrewriter::ObjcGrammarModels::Product /* ObjcGrammarModels.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::SourcePreprocessorsTests /* SourcePreprocessorsTests */ = { + swiftrewriter::ObjcGrammarModelsTests /* ObjcGrammarModelsTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3383 /* Build configuration list for PBXNativeTarget "SourcePreprocessorsTests" */; + buildConfigurationList = OBJ_3458 /* Build configuration list for PBXNativeTarget "ObjcGrammarModelsTests" */; buildPhases = ( - OBJ_3386 /* Sources */, - OBJ_3388 /* Frameworks */, + OBJ_3461 /* Sources */, + OBJ_3463 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3425 /* PBXTargetDependency */, - OBJ_3426 /* PBXTargetDependency */, - OBJ_3427 /* PBXTargetDependency */, - OBJ_3428 /* PBXTargetDependency */, - OBJ_3429 /* PBXTargetDependency */, - OBJ_3430 /* PBXTargetDependency */, - OBJ_3431 /* PBXTargetDependency */, - OBJ_3432 /* PBXTargetDependency */, - OBJ_3433 /* PBXTargetDependency */, - OBJ_3434 /* PBXTargetDependency */, - OBJ_3435 /* PBXTargetDependency */, - OBJ_3436 /* PBXTargetDependency */, - OBJ_3437 /* PBXTargetDependency */, - OBJ_3438 /* PBXTargetDependency */, - OBJ_3439 /* PBXTargetDependency */, - OBJ_3440 /* PBXTargetDependency */, - OBJ_3441 /* PBXTargetDependency */, - OBJ_3442 /* PBXTargetDependency */, - OBJ_3443 /* PBXTargetDependency */, - OBJ_3444 /* PBXTargetDependency */, - OBJ_3445 /* PBXTargetDependency */, - OBJ_3446 /* PBXTargetDependency */, - OBJ_3447 /* PBXTargetDependency */, - OBJ_3448 /* PBXTargetDependency */, - OBJ_3449 /* PBXTargetDependency */, - OBJ_3450 /* PBXTargetDependency */, - OBJ_3451 /* PBXTargetDependency */, - OBJ_3452 /* PBXTargetDependency */, - OBJ_3453 /* PBXTargetDependency */, - OBJ_3454 /* PBXTargetDependency */, - OBJ_3455 /* PBXTargetDependency */, - OBJ_3456 /* PBXTargetDependency */, - OBJ_3457 /* PBXTargetDependency */, - OBJ_3458 /* PBXTargetDependency */, - OBJ_3459 /* PBXTargetDependency */, - OBJ_3460 /* PBXTargetDependency */, + OBJ_3471 /* PBXTargetDependency */, + OBJ_3472 /* PBXTargetDependency */, + OBJ_3473 /* PBXTargetDependency */, + OBJ_3474 /* PBXTargetDependency */, + OBJ_3475 /* PBXTargetDependency */, + OBJ_3476 /* PBXTargetDependency */, + OBJ_3477 /* PBXTargetDependency */, ); - name = SourcePreprocessorsTests; - productName = SourcePreprocessorsTests; - productReference = swiftrewriter::SourcePreprocessorsTests::Product /* SourcePreprocessorsTests.xctest */; + name = ObjcGrammarModelsTests; + productName = ObjcGrammarModelsTests; + productReference = swiftrewriter::ObjcGrammarModelsTests::Product /* ObjcGrammarModelsTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::SwiftAST /* SwiftAST */ = { + swiftrewriter::ObjcParser /* ObjcParser */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3461 /* Build configuration list for PBXNativeTarget "SwiftAST" */; + buildConfigurationList = OBJ_3478 /* Build configuration list for PBXNativeTarget "ObjcParser" */; buildPhases = ( - OBJ_3464 /* Sources */, - OBJ_3558 /* Frameworks */, + OBJ_3481 /* Sources */, + OBJ_3552 /* Frameworks */, ); buildRules = ( ); dependencies = ( + OBJ_3562 /* PBXTargetDependency */, + OBJ_3563 /* PBXTargetDependency */, OBJ_3564 /* PBXTargetDependency */, OBJ_3565 /* PBXTargetDependency */, OBJ_3566 /* PBXTargetDependency */, OBJ_3567 /* PBXTargetDependency */, OBJ_3568 /* PBXTargetDependency */, + OBJ_3569 /* PBXTargetDependency */, + OBJ_3570 /* PBXTargetDependency */, ); - name = SwiftAST; - productName = SwiftAST; - productReference = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; + name = ObjcParser; + productName = ObjcParser; + productReference = swiftrewriter::ObjcParser::Product /* ObjcParser.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::SwiftASTTests /* SwiftASTTests */ = { + swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_3571 /* Build configuration list for PBXNativeTarget "ObjcParserAntlr" */; + buildPhases = ( + OBJ_3574 /* Sources */, + OBJ_3588 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_3593 /* PBXTargetDependency */, + OBJ_3594 /* PBXTargetDependency */, + OBJ_3595 /* PBXTargetDependency */, + OBJ_3596 /* PBXTargetDependency */, + ); + name = ObjcParserAntlr; + productName = ObjcParserAntlr; + productReference = swiftrewriter::ObjcParserAntlr::Product /* ObjcParserAntlr.framework */; + productType = "com.apple.product-type.framework"; + }; + swiftrewriter::ObjcParserTests /* ObjcParserTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3570 /* Build configuration list for PBXNativeTarget "SwiftASTTests" */; + buildConfigurationList = OBJ_3598 /* Build configuration list for PBXNativeTarget "ObjcParserTests" */; buildPhases = ( - OBJ_3573 /* Sources */, - OBJ_3595 /* Frameworks */, + OBJ_3601 /* Sources */, + OBJ_3613 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3634 /* PBXTargetDependency */, - OBJ_3635 /* PBXTargetDependency */, - OBJ_3636 /* PBXTargetDependency */, - OBJ_3637 /* PBXTargetDependency */, - OBJ_3638 /* PBXTargetDependency */, - OBJ_3639 /* PBXTargetDependency */, - OBJ_3640 /* PBXTargetDependency */, - OBJ_3641 /* PBXTargetDependency */, - OBJ_3642 /* PBXTargetDependency */, - OBJ_3643 /* PBXTargetDependency */, - OBJ_3644 /* PBXTargetDependency */, - OBJ_3645 /* PBXTargetDependency */, - OBJ_3646 /* PBXTargetDependency */, - OBJ_3647 /* PBXTargetDependency */, - OBJ_3648 /* PBXTargetDependency */, - OBJ_3649 /* PBXTargetDependency */, - OBJ_3650 /* PBXTargetDependency */, - OBJ_3651 /* PBXTargetDependency */, - OBJ_3652 /* PBXTargetDependency */, - OBJ_3653 /* PBXTargetDependency */, - OBJ_3654 /* PBXTargetDependency */, OBJ_3655 /* PBXTargetDependency */, OBJ_3656 /* PBXTargetDependency */, OBJ_3657 /* PBXTargetDependency */, @@ -9081,38 +9878,112 @@ OBJ_3669 /* PBXTargetDependency */, OBJ_3670 /* PBXTargetDependency */, OBJ_3671 /* PBXTargetDependency */, + OBJ_3672 /* PBXTargetDependency */, + OBJ_3673 /* PBXTargetDependency */, + OBJ_3674 /* PBXTargetDependency */, + OBJ_3675 /* PBXTargetDependency */, + OBJ_3676 /* PBXTargetDependency */, + OBJ_3677 /* PBXTargetDependency */, + OBJ_3678 /* PBXTargetDependency */, + OBJ_3679 /* PBXTargetDependency */, + OBJ_3680 /* PBXTargetDependency */, + OBJ_3681 /* PBXTargetDependency */, + OBJ_3682 /* PBXTargetDependency */, + OBJ_3683 /* PBXTargetDependency */, + OBJ_3684 /* PBXTargetDependency */, + OBJ_3685 /* PBXTargetDependency */, + OBJ_3686 /* PBXTargetDependency */, + OBJ_3687 /* PBXTargetDependency */, + OBJ_3688 /* PBXTargetDependency */, + OBJ_3689 /* PBXTargetDependency */, + OBJ_3690 /* PBXTargetDependency */, + OBJ_3691 /* PBXTargetDependency */, + OBJ_3692 /* PBXTargetDependency */, + OBJ_3693 /* PBXTargetDependency */, + OBJ_3694 /* PBXTargetDependency */, + OBJ_3695 /* PBXTargetDependency */, ); - name = SwiftASTTests; - productName = SwiftASTTests; - productReference = swiftrewriter::SwiftASTTests::Product /* SwiftASTTests.xctest */; + name = ObjcParserTests; + productName = ObjcParserTests; + productReference = swiftrewriter::ObjcParserTests::Product /* ObjcParserTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::SwiftPMPackageDescription /* SwiftRewriterPackageDescription */ = { + swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4186 /* Build configuration list for PBXNativeTarget "SwiftRewriterPackageDescription" */; + buildConfigurationList = OBJ_3696 /* Build configuration list for PBXNativeTarget "ObjectiveCFrontend" */; buildPhases = ( - OBJ_4189 /* Sources */, + OBJ_3699 /* Sources */, + OBJ_3723 /* Frameworks */, ); buildRules = ( ); dependencies = ( + OBJ_3763 /* PBXTargetDependency */, + OBJ_3764 /* PBXTargetDependency */, + OBJ_3765 /* PBXTargetDependency */, + OBJ_3766 /* PBXTargetDependency */, + OBJ_3767 /* PBXTargetDependency */, + OBJ_3768 /* PBXTargetDependency */, + OBJ_3769 /* PBXTargetDependency */, + OBJ_3770 /* PBXTargetDependency */, + OBJ_3771 /* PBXTargetDependency */, + OBJ_3772 /* PBXTargetDependency */, + OBJ_3773 /* PBXTargetDependency */, + OBJ_3774 /* PBXTargetDependency */, + OBJ_3775 /* PBXTargetDependency */, + OBJ_3776 /* PBXTargetDependency */, + OBJ_3777 /* PBXTargetDependency */, + OBJ_3778 /* PBXTargetDependency */, + OBJ_3779 /* PBXTargetDependency */, + OBJ_3780 /* PBXTargetDependency */, + OBJ_3781 /* PBXTargetDependency */, + OBJ_3782 /* PBXTargetDependency */, + OBJ_3783 /* PBXTargetDependency */, + OBJ_3784 /* PBXTargetDependency */, + OBJ_3785 /* PBXTargetDependency */, + OBJ_3786 /* PBXTargetDependency */, + OBJ_3787 /* PBXTargetDependency */, + OBJ_3788 /* PBXTargetDependency */, + OBJ_3789 /* PBXTargetDependency */, + OBJ_3790 /* PBXTargetDependency */, + OBJ_3791 /* PBXTargetDependency */, + OBJ_3792 /* PBXTargetDependency */, + OBJ_3793 /* PBXTargetDependency */, + OBJ_3794 /* PBXTargetDependency */, + OBJ_3795 /* PBXTargetDependency */, + OBJ_3796 /* PBXTargetDependency */, + OBJ_3797 /* PBXTargetDependency */, + OBJ_3798 /* PBXTargetDependency */, + OBJ_3799 /* PBXTargetDependency */, + OBJ_3800 /* PBXTargetDependency */, + OBJ_3801 /* PBXTargetDependency */, ); - name = SwiftRewriterPackageDescription; - productName = SwiftRewriterPackageDescription; + name = ObjectiveCFrontend; + productName = ObjectiveCFrontend; + productReference = swiftrewriter::ObjectiveCFrontend::Product /* ObjectiveCFrontend.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::SwiftRewriter /* SwiftRewriter */ = { + swiftrewriter::ObjectiveCFrontendTests /* ObjectiveCFrontendTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3832 /* Build configuration list for PBXNativeTarget "SwiftRewriter" */; + buildConfigurationList = OBJ_3803 /* Build configuration list for PBXNativeTarget "ObjectiveCFrontendTests" */; buildPhases = ( - OBJ_3835 /* Sources */, - OBJ_3844 /* Frameworks */, + OBJ_3806 /* Sources */, + OBJ_3835 /* Frameworks */, ); buildRules = ( ); dependencies = ( + OBJ_3877 /* PBXTargetDependency */, + OBJ_3878 /* PBXTargetDependency */, + OBJ_3879 /* PBXTargetDependency */, + OBJ_3880 /* PBXTargetDependency */, + OBJ_3881 /* PBXTargetDependency */, + OBJ_3882 /* PBXTargetDependency */, + OBJ_3883 /* PBXTargetDependency */, + OBJ_3884 /* PBXTargetDependency */, OBJ_3885 /* PBXTargetDependency */, OBJ_3886 /* PBXTargetDependency */, + OBJ_3887 /* PBXTargetDependency */, OBJ_3888 /* PBXTargetDependency */, OBJ_3889 /* PBXTargetDependency */, OBJ_3890 /* PBXTargetDependency */, @@ -9143,32 +10014,40 @@ OBJ_3915 /* PBXTargetDependency */, OBJ_3916 /* PBXTargetDependency */, OBJ_3917 /* PBXTargetDependency */, - OBJ_3918 /* PBXTargetDependency */, - OBJ_3919 /* PBXTargetDependency */, - OBJ_3920 /* PBXTargetDependency */, - OBJ_3921 /* PBXTargetDependency */, - OBJ_3922 /* PBXTargetDependency */, - OBJ_3923 /* PBXTargetDependency */, - OBJ_3924 /* PBXTargetDependency */, - OBJ_3925 /* PBXTargetDependency */, ); - name = SwiftRewriter; - productName = SwiftRewriter; - productReference = swiftrewriter::SwiftRewriter::Product /* SwiftRewriter */; - productType = "com.apple.product-type.tool"; + name = ObjectiveCFrontendTests; + productName = ObjectiveCFrontendTests; + productReference = swiftrewriter::ObjectiveCFrontendTests::Product /* ObjectiveCFrontendTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::SwiftRewriterCLI /* SwiftRewriterCLI */ = { + swiftrewriter::SourcePreprocessors /* SourcePreprocessors */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_3918 /* Build configuration list for PBXNativeTarget "SourcePreprocessors" */; + buildPhases = ( + OBJ_3921 /* Sources */, + OBJ_3924 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_3927 /* PBXTargetDependency */, + OBJ_3928 /* PBXTargetDependency */, + ); + name = SourcePreprocessors; + productName = SourcePreprocessors; + productReference = swiftrewriter::SourcePreprocessors::Product /* SourcePreprocessors.framework */; + productType = "com.apple.product-type.framework"; + }; + swiftrewriter::SourcePreprocessorsTests /* SourcePreprocessorsTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_3926 /* Build configuration list for PBXNativeTarget "SwiftRewriterCLI" */; + buildConfigurationList = OBJ_3930 /* Build configuration list for PBXNativeTarget "SourcePreprocessorsTests" */; buildPhases = ( - OBJ_3929 /* Sources */, - OBJ_3934 /* Frameworks */, + OBJ_3933 /* Sources */, + OBJ_3935 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_3973 /* PBXTargetDependency */, - OBJ_3974 /* PBXTargetDependency */, OBJ_3975 /* PBXTargetDependency */, OBJ_3976 /* PBXTargetDependency */, OBJ_3977 /* PBXTargetDependency */, @@ -9205,217 +10084,120 @@ OBJ_4008 /* PBXTargetDependency */, OBJ_4009 /* PBXTargetDependency */, OBJ_4010 /* PBXTargetDependency */, + OBJ_4011 /* PBXTargetDependency */, + OBJ_4012 /* PBXTargetDependency */, + OBJ_4013 /* PBXTargetDependency */, ); - name = SwiftRewriterCLI; - productName = SwiftRewriterCLI; - productReference = swiftrewriter::SwiftRewriterCLI::Product /* SwiftRewriterCLI.framework */; - productType = "com.apple.product-type.framework"; + name = SourcePreprocessorsTests; + productName = SourcePreprocessorsTests; + productReference = swiftrewriter::SourcePreprocessorsTests::Product /* SourcePreprocessorsTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */ = { + swiftrewriter::SwiftAST /* SwiftAST */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4011 /* Build configuration list for PBXNativeTarget "SwiftRewriterLib" */; + buildConfigurationList = OBJ_4014 /* Build configuration list for PBXNativeTarget "SwiftAST" */; buildPhases = ( - OBJ_4014 /* Sources */, - OBJ_4030 /* Frameworks */, + OBJ_4017 /* Sources */, + OBJ_4111 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_4066 /* PBXTargetDependency */, - OBJ_4067 /* PBXTargetDependency */, - OBJ_4068 /* PBXTargetDependency */, - OBJ_4069 /* PBXTargetDependency */, - OBJ_4070 /* PBXTargetDependency */, - OBJ_4071 /* PBXTargetDependency */, - OBJ_4072 /* PBXTargetDependency */, - OBJ_4073 /* PBXTargetDependency */, - OBJ_4074 /* PBXTargetDependency */, - OBJ_4075 /* PBXTargetDependency */, - OBJ_4076 /* PBXTargetDependency */, - OBJ_4077 /* PBXTargetDependency */, - OBJ_4078 /* PBXTargetDependency */, - OBJ_4079 /* PBXTargetDependency */, - OBJ_4080 /* PBXTargetDependency */, - OBJ_4081 /* PBXTargetDependency */, - OBJ_4082 /* PBXTargetDependency */, - OBJ_4083 /* PBXTargetDependency */, - OBJ_4084 /* PBXTargetDependency */, - OBJ_4085 /* PBXTargetDependency */, - OBJ_4086 /* PBXTargetDependency */, - OBJ_4087 /* PBXTargetDependency */, - OBJ_4088 /* PBXTargetDependency */, - OBJ_4089 /* PBXTargetDependency */, - OBJ_4090 /* PBXTargetDependency */, - OBJ_4091 /* PBXTargetDependency */, - OBJ_4092 /* PBXTargetDependency */, - OBJ_4093 /* PBXTargetDependency */, - OBJ_4094 /* PBXTargetDependency */, - OBJ_4095 /* PBXTargetDependency */, - OBJ_4096 /* PBXTargetDependency */, - OBJ_4097 /* PBXTargetDependency */, - OBJ_4098 /* PBXTargetDependency */, - OBJ_4099 /* PBXTargetDependency */, - OBJ_4100 /* PBXTargetDependency */, + OBJ_4117 /* PBXTargetDependency */, + OBJ_4118 /* PBXTargetDependency */, + OBJ_4119 /* PBXTargetDependency */, + OBJ_4120 /* PBXTargetDependency */, + OBJ_4121 /* PBXTargetDependency */, ); - name = SwiftRewriterLib; - productName = SwiftRewriterLib; - productReference = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; + name = SwiftAST; + productName = SwiftAST; + productReference = swiftrewriter::SwiftAST::Product /* SwiftAST.framework */; productType = "com.apple.product-type.framework"; }; - swiftrewriter::SwiftRewriterLibTests /* SwiftRewriterLibTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = OBJ_4102 /* Build configuration list for PBXNativeTarget "SwiftRewriterLibTests" */; - buildPhases = ( - OBJ_4105 /* Sources */, - OBJ_4108 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - OBJ_4147 /* PBXTargetDependency */, - OBJ_4148 /* PBXTargetDependency */, - OBJ_4149 /* PBXTargetDependency */, - OBJ_4150 /* PBXTargetDependency */, - OBJ_4151 /* PBXTargetDependency */, - OBJ_4152 /* PBXTargetDependency */, - OBJ_4153 /* PBXTargetDependency */, - OBJ_4154 /* PBXTargetDependency */, - OBJ_4155 /* PBXTargetDependency */, - OBJ_4156 /* PBXTargetDependency */, - OBJ_4157 /* PBXTargetDependency */, - OBJ_4158 /* PBXTargetDependency */, - OBJ_4159 /* PBXTargetDependency */, - OBJ_4160 /* PBXTargetDependency */, - OBJ_4161 /* PBXTargetDependency */, - OBJ_4162 /* PBXTargetDependency */, - OBJ_4163 /* PBXTargetDependency */, - OBJ_4164 /* PBXTargetDependency */, - OBJ_4165 /* PBXTargetDependency */, - OBJ_4166 /* PBXTargetDependency */, - OBJ_4167 /* PBXTargetDependency */, - OBJ_4168 /* PBXTargetDependency */, - OBJ_4169 /* PBXTargetDependency */, - OBJ_4170 /* PBXTargetDependency */, - OBJ_4171 /* PBXTargetDependency */, - OBJ_4172 /* PBXTargetDependency */, - OBJ_4173 /* PBXTargetDependency */, - OBJ_4174 /* PBXTargetDependency */, - OBJ_4175 /* PBXTargetDependency */, - OBJ_4176 /* PBXTargetDependency */, - OBJ_4177 /* PBXTargetDependency */, - OBJ_4178 /* PBXTargetDependency */, - OBJ_4179 /* PBXTargetDependency */, - OBJ_4180 /* PBXTargetDependency */, - OBJ_4181 /* PBXTargetDependency */, - OBJ_4182 /* PBXTargetDependency */, - OBJ_4183 /* PBXTargetDependency */, - OBJ_4184 /* PBXTargetDependency */, - ); - name = SwiftRewriterLibTests; - productName = SwiftRewriterLibTests; - productReference = swiftrewriter::SwiftRewriterLibTests::Product /* SwiftRewriterLibTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - swiftrewriter::SwiftRewriterTests /* SwiftRewriterTests */ = { + swiftrewriter::SwiftASTTests /* SwiftASTTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4224 /* Build configuration list for PBXNativeTarget "SwiftRewriterTests" */; + buildConfigurationList = OBJ_4123 /* Build configuration list for PBXNativeTarget "SwiftASTTests" */; buildPhases = ( - OBJ_4227 /* Sources */, - OBJ_4229 /* Frameworks */, + OBJ_4126 /* Sources */, + OBJ_4148 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_4270 /* PBXTargetDependency */, - OBJ_4271 /* PBXTargetDependency */, - OBJ_4272 /* PBXTargetDependency */, - OBJ_4273 /* PBXTargetDependency */, - OBJ_4274 /* PBXTargetDependency */, - OBJ_4275 /* PBXTargetDependency */, - OBJ_4276 /* PBXTargetDependency */, - OBJ_4277 /* PBXTargetDependency */, - OBJ_4278 /* PBXTargetDependency */, - OBJ_4279 /* PBXTargetDependency */, - OBJ_4280 /* PBXTargetDependency */, - OBJ_4281 /* PBXTargetDependency */, - OBJ_4282 /* PBXTargetDependency */, - OBJ_4283 /* PBXTargetDependency */, - OBJ_4284 /* PBXTargetDependency */, - OBJ_4285 /* PBXTargetDependency */, - OBJ_4286 /* PBXTargetDependency */, - OBJ_4287 /* PBXTargetDependency */, - OBJ_4288 /* PBXTargetDependency */, - OBJ_4289 /* PBXTargetDependency */, - OBJ_4290 /* PBXTargetDependency */, - OBJ_4291 /* PBXTargetDependency */, - OBJ_4292 /* PBXTargetDependency */, - OBJ_4293 /* PBXTargetDependency */, - OBJ_4294 /* PBXTargetDependency */, - OBJ_4295 /* PBXTargetDependency */, - OBJ_4296 /* PBXTargetDependency */, - OBJ_4297 /* PBXTargetDependency */, - OBJ_4298 /* PBXTargetDependency */, - OBJ_4299 /* PBXTargetDependency */, - OBJ_4300 /* PBXTargetDependency */, - OBJ_4301 /* PBXTargetDependency */, - OBJ_4302 /* PBXTargetDependency */, - OBJ_4303 /* PBXTargetDependency */, - OBJ_4304 /* PBXTargetDependency */, - OBJ_4305 /* PBXTargetDependency */, - OBJ_4306 /* PBXTargetDependency */, - OBJ_4307 /* PBXTargetDependency */, - OBJ_4308 /* PBXTargetDependency */, - OBJ_4309 /* PBXTargetDependency */, - OBJ_4310 /* PBXTargetDependency */, + OBJ_4190 /* PBXTargetDependency */, + OBJ_4191 /* PBXTargetDependency */, + OBJ_4192 /* PBXTargetDependency */, + OBJ_4193 /* PBXTargetDependency */, + OBJ_4194 /* PBXTargetDependency */, + OBJ_4195 /* PBXTargetDependency */, + OBJ_4196 /* PBXTargetDependency */, + OBJ_4197 /* PBXTargetDependency */, + OBJ_4198 /* PBXTargetDependency */, + OBJ_4199 /* PBXTargetDependency */, + OBJ_4200 /* PBXTargetDependency */, + OBJ_4201 /* PBXTargetDependency */, + OBJ_4202 /* PBXTargetDependency */, + OBJ_4203 /* PBXTargetDependency */, + OBJ_4204 /* PBXTargetDependency */, + OBJ_4205 /* PBXTargetDependency */, + OBJ_4206 /* PBXTargetDependency */, + OBJ_4207 /* PBXTargetDependency */, + OBJ_4208 /* PBXTargetDependency */, + OBJ_4209 /* PBXTargetDependency */, + OBJ_4210 /* PBXTargetDependency */, + OBJ_4211 /* PBXTargetDependency */, + OBJ_4212 /* PBXTargetDependency */, + OBJ_4213 /* PBXTargetDependency */, + OBJ_4214 /* PBXTargetDependency */, + OBJ_4215 /* PBXTargetDependency */, + OBJ_4216 /* PBXTargetDependency */, + OBJ_4217 /* PBXTargetDependency */, + OBJ_4218 /* PBXTargetDependency */, + OBJ_4219 /* PBXTargetDependency */, + OBJ_4220 /* PBXTargetDependency */, + OBJ_4221 /* PBXTargetDependency */, + OBJ_4222 /* PBXTargetDependency */, + OBJ_4223 /* PBXTargetDependency */, + OBJ_4224 /* PBXTargetDependency */, + OBJ_4225 /* PBXTargetDependency */, + OBJ_4226 /* PBXTargetDependency */, + OBJ_4227 /* PBXTargetDependency */, + OBJ_4228 /* PBXTargetDependency */, + OBJ_4229 /* PBXTargetDependency */, + OBJ_4230 /* PBXTargetDependency */, ); - name = SwiftRewriterTests; - productName = SwiftRewriterTests; - productReference = swiftrewriter::SwiftRewriterTests::Product /* SwiftRewriterTests.xctest */; + name = SwiftASTTests; + productName = SwiftASTTests; + productReference = swiftrewriter::SwiftASTTests::Product /* SwiftASTTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */ = { + swiftrewriter::SwiftPMPackageDescription /* SwiftRewriterPackageDescription */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4373 /* Build configuration list for PBXNativeTarget "SwiftSyntaxRewriterPasses" */; + buildConfigurationList = OBJ_4774 /* Build configuration list for PBXNativeTarget "SwiftRewriterPackageDescription" */; buildPhases = ( - OBJ_4376 /* Sources */, - OBJ_4379 /* Frameworks */, + OBJ_4777 /* Sources */, ); buildRules = ( ); dependencies = ( - OBJ_4392 /* PBXTargetDependency */, - OBJ_4393 /* PBXTargetDependency */, - OBJ_4394 /* PBXTargetDependency */, - OBJ_4395 /* PBXTargetDependency */, - OBJ_4396 /* PBXTargetDependency */, - OBJ_4397 /* PBXTargetDependency */, - OBJ_4398 /* PBXTargetDependency */, - OBJ_4399 /* PBXTargetDependency */, - OBJ_4400 /* PBXTargetDependency */, - OBJ_4401 /* PBXTargetDependency */, - OBJ_4402 /* PBXTargetDependency */, - OBJ_4403 /* PBXTargetDependency */, ); - name = SwiftSyntaxRewriterPasses; - productName = SwiftSyntaxRewriterPasses; - productReference = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; + name = SwiftRewriterPackageDescription; + productName = SwiftRewriterPackageDescription; productType = "com.apple.product-type.framework"; }; - swiftrewriter::SwiftSyntaxRewriterPassesTests /* SwiftSyntaxRewriterPassesTests */ = { + swiftrewriter::SwiftRewriter /* SwiftRewriter */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4404 /* Build configuration list for PBXNativeTarget "SwiftSyntaxRewriterPassesTests" */; + buildConfigurationList = OBJ_4391 /* Build configuration list for PBXNativeTarget "SwiftRewriter" */; buildPhases = ( - OBJ_4407 /* Sources */, - OBJ_4411 /* Frameworks */, + OBJ_4394 /* Sources */, + OBJ_4406 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_4450 /* PBXTargetDependency */, OBJ_4451 /* PBXTargetDependency */, OBJ_4452 /* PBXTargetDependency */, OBJ_4453 /* PBXTargetDependency */, - OBJ_4454 /* PBXTargetDependency */, OBJ_4455 /* PBXTargetDependency */, OBJ_4456 /* PBXTargetDependency */, OBJ_4457 /* PBXTargetDependency */, @@ -9449,49 +10231,62 @@ OBJ_4485 /* PBXTargetDependency */, OBJ_4486 /* PBXTargetDependency */, OBJ_4487 /* PBXTargetDependency */, + OBJ_4488 /* PBXTargetDependency */, + OBJ_4489 /* PBXTargetDependency */, + OBJ_4490 /* PBXTargetDependency */, + OBJ_4491 /* PBXTargetDependency */, + OBJ_4492 /* PBXTargetDependency */, + OBJ_4493 /* PBXTargetDependency */, + OBJ_4494 /* PBXTargetDependency */, + OBJ_4495 /* PBXTargetDependency */, ); - name = SwiftSyntaxRewriterPassesTests; - productName = SwiftSyntaxRewriterPassesTests; - productReference = swiftrewriter::SwiftSyntaxRewriterPassesTests::Product /* SwiftSyntaxRewriterPassesTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */ = { - isa = PBXNativeTarget; - buildConfigurationList = OBJ_4488 /* Build configuration list for PBXNativeTarget "SwiftSyntaxSupport" */; - buildPhases = ( - OBJ_4491 /* Sources */, - OBJ_4506 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - OBJ_4518 /* PBXTargetDependency */, - OBJ_4519 /* PBXTargetDependency */, - OBJ_4520 /* PBXTargetDependency */, - OBJ_4521 /* PBXTargetDependency */, - OBJ_4522 /* PBXTargetDependency */, - OBJ_4523 /* PBXTargetDependency */, - OBJ_4524 /* PBXTargetDependency */, - OBJ_4525 /* PBXTargetDependency */, - OBJ_4526 /* PBXTargetDependency */, - OBJ_4527 /* PBXTargetDependency */, - OBJ_4528 /* PBXTargetDependency */, - ); - name = SwiftSyntaxSupport; - productName = SwiftSyntaxSupport; - productReference = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; - productType = "com.apple.product-type.framework"; + name = SwiftRewriter; + productName = SwiftRewriter; + productReference = swiftrewriter::SwiftRewriter::Product /* SwiftRewriter */; + productType = "com.apple.product-type.tool"; }; - swiftrewriter::SwiftSyntaxSupportTests /* SwiftSyntaxSupportTests */ = { + swiftrewriter::SwiftRewriterCLI /* SwiftRewriterCLI */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4529 /* Build configuration list for PBXNativeTarget "SwiftSyntaxSupportTests" */; + buildConfigurationList = OBJ_4496 /* Build configuration list for PBXNativeTarget "SwiftRewriterCLI" */; buildPhases = ( - OBJ_4532 /* Sources */, - OBJ_4539 /* Frameworks */, + OBJ_4499 /* Sources */, + OBJ_4504 /* Frameworks */, ); buildRules = ( ); dependencies = ( + OBJ_4546 /* PBXTargetDependency */, + OBJ_4547 /* PBXTargetDependency */, + OBJ_4548 /* PBXTargetDependency */, + OBJ_4549 /* PBXTargetDependency */, + OBJ_4550 /* PBXTargetDependency */, + OBJ_4551 /* PBXTargetDependency */, + OBJ_4552 /* PBXTargetDependency */, + OBJ_4553 /* PBXTargetDependency */, + OBJ_4554 /* PBXTargetDependency */, + OBJ_4555 /* PBXTargetDependency */, + OBJ_4556 /* PBXTargetDependency */, + OBJ_4557 /* PBXTargetDependency */, + OBJ_4558 /* PBXTargetDependency */, + OBJ_4559 /* PBXTargetDependency */, + OBJ_4560 /* PBXTargetDependency */, + OBJ_4561 /* PBXTargetDependency */, + OBJ_4562 /* PBXTargetDependency */, + OBJ_4563 /* PBXTargetDependency */, + OBJ_4564 /* PBXTargetDependency */, + OBJ_4565 /* PBXTargetDependency */, + OBJ_4566 /* PBXTargetDependency */, + OBJ_4567 /* PBXTargetDependency */, + OBJ_4568 /* PBXTargetDependency */, + OBJ_4569 /* PBXTargetDependency */, + OBJ_4570 /* PBXTargetDependency */, + OBJ_4571 /* PBXTargetDependency */, + OBJ_4572 /* PBXTargetDependency */, + OBJ_4573 /* PBXTargetDependency */, + OBJ_4574 /* PBXTargetDependency */, + OBJ_4575 /* PBXTargetDependency */, + OBJ_4576 /* PBXTargetDependency */, + OBJ_4577 /* PBXTargetDependency */, OBJ_4578 /* PBXTargetDependency */, OBJ_4579 /* PBXTargetDependency */, OBJ_4580 /* PBXTargetDependency */, @@ -9501,59 +10296,76 @@ OBJ_4584 /* PBXTargetDependency */, OBJ_4585 /* PBXTargetDependency */, OBJ_4586 /* PBXTargetDependency */, - OBJ_4587 /* PBXTargetDependency */, - OBJ_4588 /* PBXTargetDependency */, - OBJ_4589 /* PBXTargetDependency */, - OBJ_4590 /* PBXTargetDependency */, - OBJ_4591 /* PBXTargetDependency */, - OBJ_4592 /* PBXTargetDependency */, - OBJ_4593 /* PBXTargetDependency */, - OBJ_4594 /* PBXTargetDependency */, - OBJ_4595 /* PBXTargetDependency */, - OBJ_4596 /* PBXTargetDependency */, - OBJ_4597 /* PBXTargetDependency */, - OBJ_4598 /* PBXTargetDependency */, - OBJ_4599 /* PBXTargetDependency */, - OBJ_4600 /* PBXTargetDependency */, - OBJ_4601 /* PBXTargetDependency */, - OBJ_4602 /* PBXTargetDependency */, - OBJ_4603 /* PBXTargetDependency */, - OBJ_4604 /* PBXTargetDependency */, - OBJ_4605 /* PBXTargetDependency */, - OBJ_4606 /* PBXTargetDependency */, - OBJ_4607 /* PBXTargetDependency */, - OBJ_4608 /* PBXTargetDependency */, - OBJ_4609 /* PBXTargetDependency */, - OBJ_4610 /* PBXTargetDependency */, - OBJ_4611 /* PBXTargetDependency */, - OBJ_4612 /* PBXTargetDependency */, - OBJ_4613 /* PBXTargetDependency */, - OBJ_4614 /* PBXTargetDependency */, - OBJ_4615 /* PBXTargetDependency */, ); - name = SwiftSyntaxSupportTests; - productName = SwiftSyntaxSupportTests; - productReference = swiftrewriter::SwiftSyntaxSupportTests::Product /* SwiftSyntaxSupportTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; + name = SwiftRewriterCLI; + productName = SwiftRewriterCLI; + productReference = swiftrewriter::SwiftRewriterCLI::Product /* SwiftRewriterCLI.framework */; + productType = "com.apple.product-type.framework"; }; - swiftrewriter::TestCommons /* TestCommons */ = { + swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4616 /* Build configuration list for PBXNativeTarget "TestCommons" */; + buildConfigurationList = OBJ_4587 /* Build configuration list for PBXNativeTarget "SwiftRewriterLib" */; buildPhases = ( - OBJ_4619 /* Sources */, - OBJ_4686 /* Frameworks */, + OBJ_4590 /* Sources */, + OBJ_4606 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_4645 /* PBXTargetDependency */, + OBJ_4646 /* PBXTargetDependency */, + OBJ_4647 /* PBXTargetDependency */, + OBJ_4648 /* PBXTargetDependency */, + OBJ_4649 /* PBXTargetDependency */, + OBJ_4650 /* PBXTargetDependency */, + OBJ_4651 /* PBXTargetDependency */, + OBJ_4652 /* PBXTargetDependency */, + OBJ_4653 /* PBXTargetDependency */, + OBJ_4654 /* PBXTargetDependency */, + OBJ_4655 /* PBXTargetDependency */, + OBJ_4656 /* PBXTargetDependency */, + OBJ_4657 /* PBXTargetDependency */, + OBJ_4658 /* PBXTargetDependency */, + OBJ_4659 /* PBXTargetDependency */, + OBJ_4660 /* PBXTargetDependency */, + OBJ_4661 /* PBXTargetDependency */, + OBJ_4662 /* PBXTargetDependency */, + OBJ_4663 /* PBXTargetDependency */, + OBJ_4664 /* PBXTargetDependency */, + OBJ_4665 /* PBXTargetDependency */, + OBJ_4666 /* PBXTargetDependency */, + OBJ_4667 /* PBXTargetDependency */, + OBJ_4668 /* PBXTargetDependency */, + OBJ_4669 /* PBXTargetDependency */, + OBJ_4670 /* PBXTargetDependency */, + OBJ_4671 /* PBXTargetDependency */, + OBJ_4672 /* PBXTargetDependency */, + OBJ_4673 /* PBXTargetDependency */, + OBJ_4674 /* PBXTargetDependency */, + OBJ_4675 /* PBXTargetDependency */, + OBJ_4676 /* PBXTargetDependency */, + OBJ_4677 /* PBXTargetDependency */, + OBJ_4678 /* PBXTargetDependency */, + OBJ_4679 /* PBXTargetDependency */, + OBJ_4680 /* PBXTargetDependency */, + OBJ_4681 /* PBXTargetDependency */, + OBJ_4682 /* PBXTargetDependency */, + ); + name = SwiftRewriterLib; + productName = SwiftRewriterLib; + productReference = swiftrewriter::SwiftRewriterLib::Product /* SwiftRewriterLib.framework */; + productType = "com.apple.product-type.framework"; + }; + swiftrewriter::SwiftRewriterLibTests /* SwiftRewriterLibTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_4684 /* Build configuration list for PBXNativeTarget "SwiftRewriterLibTests" */; + buildPhases = ( + OBJ_4687 /* Sources */, + OBJ_4690 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_4724 /* PBXTargetDependency */, - OBJ_4725 /* PBXTargetDependency */, - OBJ_4726 /* PBXTargetDependency */, - OBJ_4727 /* PBXTargetDependency */, - OBJ_4728 /* PBXTargetDependency */, - OBJ_4729 /* PBXTargetDependency */, - OBJ_4730 /* PBXTargetDependency */, - OBJ_4731 /* PBXTargetDependency */, OBJ_4732 /* PBXTargetDependency */, OBJ_4733 /* PBXTargetDependency */, OBJ_4734 /* PBXTargetDependency */, @@ -9583,72 +10395,373 @@ OBJ_4758 /* PBXTargetDependency */, OBJ_4759 /* PBXTargetDependency */, OBJ_4760 /* PBXTargetDependency */, + OBJ_4761 /* PBXTargetDependency */, + OBJ_4762 /* PBXTargetDependency */, + OBJ_4763 /* PBXTargetDependency */, + OBJ_4764 /* PBXTargetDependency */, + OBJ_4765 /* PBXTargetDependency */, + OBJ_4766 /* PBXTargetDependency */, + OBJ_4767 /* PBXTargetDependency */, + OBJ_4768 /* PBXTargetDependency */, + OBJ_4769 /* PBXTargetDependency */, + OBJ_4770 /* PBXTargetDependency */, + OBJ_4771 /* PBXTargetDependency */, + OBJ_4772 /* PBXTargetDependency */, ); - name = TestCommons; - productName = TestCommons; - productReference = swiftrewriter::TestCommons::Product /* TestCommons.framework */; - productType = "com.apple.product-type.framework"; + name = SwiftRewriterLibTests; + productName = SwiftRewriterLibTests; + productReference = swiftrewriter::SwiftRewriterLibTests::Product /* SwiftRewriterLibTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; }; - swiftrewriter::TestCommonsTests /* TestCommonsTests */ = { + swiftrewriter::SwiftRewriterTests /* SwiftRewriterTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4761 /* Build configuration list for PBXNativeTarget "TestCommonsTests" */; + buildConfigurationList = OBJ_4814 /* Build configuration list for PBXNativeTarget "SwiftRewriterTests" */; buildPhases = ( - OBJ_4764 /* Sources */, - OBJ_4767 /* Frameworks */, + OBJ_4817 /* Sources */, + OBJ_4819 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_4806 /* PBXTargetDependency */, - OBJ_4807 /* PBXTargetDependency */, - OBJ_4808 /* PBXTargetDependency */, - OBJ_4809 /* PBXTargetDependency */, - OBJ_4810 /* PBXTargetDependency */, - OBJ_4811 /* PBXTargetDependency */, - OBJ_4812 /* PBXTargetDependency */, - OBJ_4813 /* PBXTargetDependency */, - OBJ_4814 /* PBXTargetDependency */, - OBJ_4815 /* PBXTargetDependency */, - OBJ_4816 /* PBXTargetDependency */, - OBJ_4817 /* PBXTargetDependency */, - OBJ_4818 /* PBXTargetDependency */, - OBJ_4819 /* PBXTargetDependency */, - OBJ_4820 /* PBXTargetDependency */, - OBJ_4821 /* PBXTargetDependency */, - OBJ_4822 /* PBXTargetDependency */, - OBJ_4823 /* PBXTargetDependency */, - OBJ_4824 /* PBXTargetDependency */, - OBJ_4825 /* PBXTargetDependency */, - OBJ_4826 /* PBXTargetDependency */, - OBJ_4827 /* PBXTargetDependency */, - OBJ_4828 /* PBXTargetDependency */, - OBJ_4829 /* PBXTargetDependency */, - OBJ_4830 /* PBXTargetDependency */, - OBJ_4831 /* PBXTargetDependency */, - OBJ_4832 /* PBXTargetDependency */, - OBJ_4833 /* PBXTargetDependency */, - OBJ_4834 /* PBXTargetDependency */, - OBJ_4835 /* PBXTargetDependency */, - OBJ_4836 /* PBXTargetDependency */, - OBJ_4837 /* PBXTargetDependency */, - OBJ_4838 /* PBXTargetDependency */, - OBJ_4839 /* PBXTargetDependency */, - OBJ_4840 /* PBXTargetDependency */, - OBJ_4841 /* PBXTargetDependency */, - OBJ_4842 /* PBXTargetDependency */, - OBJ_4843 /* PBXTargetDependency */, + OBJ_4864 /* PBXTargetDependency */, + OBJ_4865 /* PBXTargetDependency */, + OBJ_4866 /* PBXTargetDependency */, + OBJ_4867 /* PBXTargetDependency */, + OBJ_4868 /* PBXTargetDependency */, + OBJ_4869 /* PBXTargetDependency */, + OBJ_4870 /* PBXTargetDependency */, + OBJ_4871 /* PBXTargetDependency */, + OBJ_4872 /* PBXTargetDependency */, + OBJ_4873 /* PBXTargetDependency */, + OBJ_4874 /* PBXTargetDependency */, + OBJ_4875 /* PBXTargetDependency */, + OBJ_4876 /* PBXTargetDependency */, + OBJ_4877 /* PBXTargetDependency */, + OBJ_4878 /* PBXTargetDependency */, + OBJ_4879 /* PBXTargetDependency */, + OBJ_4880 /* PBXTargetDependency */, + OBJ_4881 /* PBXTargetDependency */, + OBJ_4882 /* PBXTargetDependency */, + OBJ_4883 /* PBXTargetDependency */, + OBJ_4884 /* PBXTargetDependency */, + OBJ_4885 /* PBXTargetDependency */, + OBJ_4886 /* PBXTargetDependency */, + OBJ_4887 /* PBXTargetDependency */, + OBJ_4888 /* PBXTargetDependency */, + OBJ_4889 /* PBXTargetDependency */, + OBJ_4890 /* PBXTargetDependency */, + OBJ_4891 /* PBXTargetDependency */, + OBJ_4892 /* PBXTargetDependency */, + OBJ_4893 /* PBXTargetDependency */, + OBJ_4894 /* PBXTargetDependency */, + OBJ_4895 /* PBXTargetDependency */, + OBJ_4896 /* PBXTargetDependency */, + OBJ_4897 /* PBXTargetDependency */, + OBJ_4898 /* PBXTargetDependency */, + OBJ_4899 /* PBXTargetDependency */, + OBJ_4900 /* PBXTargetDependency */, + OBJ_4901 /* PBXTargetDependency */, + OBJ_4902 /* PBXTargetDependency */, + OBJ_4903 /* PBXTargetDependency */, + OBJ_4904 /* PBXTargetDependency */, + OBJ_4905 /* PBXTargetDependency */, + OBJ_4906 /* PBXTargetDependency */, + OBJ_4907 /* PBXTargetDependency */, + OBJ_4908 /* PBXTargetDependency */, ); - name = TestCommonsTests; + name = SwiftRewriterTests; + productName = SwiftRewriterTests; + productReference = swiftrewriter::SwiftRewriterTests::Product /* SwiftRewriterTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_4971 /* Build configuration list for PBXNativeTarget "SwiftSyntaxRewriterPasses" */; + buildPhases = ( + OBJ_4974 /* Sources */, + OBJ_4977 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_4990 /* PBXTargetDependency */, + OBJ_4991 /* PBXTargetDependency */, + OBJ_4992 /* PBXTargetDependency */, + OBJ_4993 /* PBXTargetDependency */, + OBJ_4994 /* PBXTargetDependency */, + OBJ_4995 /* PBXTargetDependency */, + OBJ_4996 /* PBXTargetDependency */, + OBJ_4997 /* PBXTargetDependency */, + OBJ_4998 /* PBXTargetDependency */, + OBJ_4999 /* PBXTargetDependency */, + OBJ_5000 /* PBXTargetDependency */, + OBJ_5001 /* PBXTargetDependency */, + ); + name = SwiftSyntaxRewriterPasses; + productName = SwiftSyntaxRewriterPasses; + productReference = swiftrewriter::SwiftSyntaxRewriterPasses::Product /* SwiftSyntaxRewriterPasses.framework */; + productType = "com.apple.product-type.framework"; + }; + swiftrewriter::SwiftSyntaxRewriterPassesTests /* SwiftSyntaxRewriterPassesTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_5002 /* Build configuration list for PBXNativeTarget "SwiftSyntaxRewriterPassesTests" */; + buildPhases = ( + OBJ_5005 /* Sources */, + OBJ_5009 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_5051 /* PBXTargetDependency */, + OBJ_5052 /* PBXTargetDependency */, + OBJ_5053 /* PBXTargetDependency */, + OBJ_5054 /* PBXTargetDependency */, + OBJ_5055 /* PBXTargetDependency */, + OBJ_5056 /* PBXTargetDependency */, + OBJ_5057 /* PBXTargetDependency */, + OBJ_5058 /* PBXTargetDependency */, + OBJ_5059 /* PBXTargetDependency */, + OBJ_5060 /* PBXTargetDependency */, + OBJ_5061 /* PBXTargetDependency */, + OBJ_5062 /* PBXTargetDependency */, + OBJ_5063 /* PBXTargetDependency */, + OBJ_5064 /* PBXTargetDependency */, + OBJ_5065 /* PBXTargetDependency */, + OBJ_5066 /* PBXTargetDependency */, + OBJ_5067 /* PBXTargetDependency */, + OBJ_5068 /* PBXTargetDependency */, + OBJ_5069 /* PBXTargetDependency */, + OBJ_5070 /* PBXTargetDependency */, + OBJ_5071 /* PBXTargetDependency */, + OBJ_5072 /* PBXTargetDependency */, + OBJ_5073 /* PBXTargetDependency */, + OBJ_5074 /* PBXTargetDependency */, + OBJ_5075 /* PBXTargetDependency */, + OBJ_5076 /* PBXTargetDependency */, + OBJ_5077 /* PBXTargetDependency */, + OBJ_5078 /* PBXTargetDependency */, + OBJ_5079 /* PBXTargetDependency */, + OBJ_5080 /* PBXTargetDependency */, + OBJ_5081 /* PBXTargetDependency */, + OBJ_5082 /* PBXTargetDependency */, + OBJ_5083 /* PBXTargetDependency */, + OBJ_5084 /* PBXTargetDependency */, + OBJ_5085 /* PBXTargetDependency */, + OBJ_5086 /* PBXTargetDependency */, + OBJ_5087 /* PBXTargetDependency */, + OBJ_5088 /* PBXTargetDependency */, + OBJ_5089 /* PBXTargetDependency */, + OBJ_5090 /* PBXTargetDependency */, + OBJ_5091 /* PBXTargetDependency */, + ); + name = SwiftSyntaxRewriterPassesTests; + productName = SwiftSyntaxRewriterPassesTests; + productReference = swiftrewriter::SwiftSyntaxRewriterPassesTests::Product /* SwiftSyntaxRewriterPassesTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_5092 /* Build configuration list for PBXNativeTarget "SwiftSyntaxSupport" */; + buildPhases = ( + OBJ_5095 /* Sources */, + OBJ_5110 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_5122 /* PBXTargetDependency */, + OBJ_5123 /* PBXTargetDependency */, + OBJ_5124 /* PBXTargetDependency */, + OBJ_5125 /* PBXTargetDependency */, + OBJ_5126 /* PBXTargetDependency */, + OBJ_5127 /* PBXTargetDependency */, + OBJ_5128 /* PBXTargetDependency */, + OBJ_5129 /* PBXTargetDependency */, + OBJ_5130 /* PBXTargetDependency */, + OBJ_5131 /* PBXTargetDependency */, + OBJ_5132 /* PBXTargetDependency */, + ); + name = SwiftSyntaxSupport; + productName = SwiftSyntaxSupport; + productReference = swiftrewriter::SwiftSyntaxSupport::Product /* SwiftSyntaxSupport.framework */; + productType = "com.apple.product-type.framework"; + }; + swiftrewriter::SwiftSyntaxSupportTests /* SwiftSyntaxSupportTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_5133 /* Build configuration list for PBXNativeTarget "SwiftSyntaxSupportTests" */; + buildPhases = ( + OBJ_5136 /* Sources */, + OBJ_5143 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_5185 /* PBXTargetDependency */, + OBJ_5186 /* PBXTargetDependency */, + OBJ_5187 /* PBXTargetDependency */, + OBJ_5188 /* PBXTargetDependency */, + OBJ_5189 /* PBXTargetDependency */, + OBJ_5190 /* PBXTargetDependency */, + OBJ_5191 /* PBXTargetDependency */, + OBJ_5192 /* PBXTargetDependency */, + OBJ_5193 /* PBXTargetDependency */, + OBJ_5194 /* PBXTargetDependency */, + OBJ_5195 /* PBXTargetDependency */, + OBJ_5196 /* PBXTargetDependency */, + OBJ_5197 /* PBXTargetDependency */, + OBJ_5198 /* PBXTargetDependency */, + OBJ_5199 /* PBXTargetDependency */, + OBJ_5200 /* PBXTargetDependency */, + OBJ_5201 /* PBXTargetDependency */, + OBJ_5202 /* PBXTargetDependency */, + OBJ_5203 /* PBXTargetDependency */, + OBJ_5204 /* PBXTargetDependency */, + OBJ_5205 /* PBXTargetDependency */, + OBJ_5206 /* PBXTargetDependency */, + OBJ_5207 /* PBXTargetDependency */, + OBJ_5208 /* PBXTargetDependency */, + OBJ_5209 /* PBXTargetDependency */, + OBJ_5210 /* PBXTargetDependency */, + OBJ_5211 /* PBXTargetDependency */, + OBJ_5212 /* PBXTargetDependency */, + OBJ_5213 /* PBXTargetDependency */, + OBJ_5214 /* PBXTargetDependency */, + OBJ_5215 /* PBXTargetDependency */, + OBJ_5216 /* PBXTargetDependency */, + OBJ_5217 /* PBXTargetDependency */, + OBJ_5218 /* PBXTargetDependency */, + OBJ_5219 /* PBXTargetDependency */, + OBJ_5220 /* PBXTargetDependency */, + OBJ_5221 /* PBXTargetDependency */, + OBJ_5222 /* PBXTargetDependency */, + OBJ_5223 /* PBXTargetDependency */, + OBJ_5224 /* PBXTargetDependency */, + OBJ_5225 /* PBXTargetDependency */, + ); + name = SwiftSyntaxSupportTests; + productName = SwiftSyntaxSupportTests; + productReference = swiftrewriter::SwiftSyntaxSupportTests::Product /* SwiftSyntaxSupportTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + swiftrewriter::TestCommons /* TestCommons */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_5226 /* Build configuration list for PBXNativeTarget "TestCommons" */; + buildPhases = ( + OBJ_5229 /* Sources */, + OBJ_5299 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_5340 /* PBXTargetDependency */, + OBJ_5341 /* PBXTargetDependency */, + OBJ_5342 /* PBXTargetDependency */, + OBJ_5343 /* PBXTargetDependency */, + OBJ_5344 /* PBXTargetDependency */, + OBJ_5345 /* PBXTargetDependency */, + OBJ_5346 /* PBXTargetDependency */, + OBJ_5347 /* PBXTargetDependency */, + OBJ_5348 /* PBXTargetDependency */, + OBJ_5349 /* PBXTargetDependency */, + OBJ_5350 /* PBXTargetDependency */, + OBJ_5351 /* PBXTargetDependency */, + OBJ_5352 /* PBXTargetDependency */, + OBJ_5353 /* PBXTargetDependency */, + OBJ_5354 /* PBXTargetDependency */, + OBJ_5355 /* PBXTargetDependency */, + OBJ_5356 /* PBXTargetDependency */, + OBJ_5357 /* PBXTargetDependency */, + OBJ_5358 /* PBXTargetDependency */, + OBJ_5359 /* PBXTargetDependency */, + OBJ_5360 /* PBXTargetDependency */, + OBJ_5361 /* PBXTargetDependency */, + OBJ_5362 /* PBXTargetDependency */, + OBJ_5363 /* PBXTargetDependency */, + OBJ_5364 /* PBXTargetDependency */, + OBJ_5365 /* PBXTargetDependency */, + OBJ_5366 /* PBXTargetDependency */, + OBJ_5367 /* PBXTargetDependency */, + OBJ_5368 /* PBXTargetDependency */, + OBJ_5369 /* PBXTargetDependency */, + OBJ_5370 /* PBXTargetDependency */, + OBJ_5371 /* PBXTargetDependency */, + OBJ_5372 /* PBXTargetDependency */, + OBJ_5373 /* PBXTargetDependency */, + OBJ_5374 /* PBXTargetDependency */, + OBJ_5375 /* PBXTargetDependency */, + OBJ_5376 /* PBXTargetDependency */, + OBJ_5377 /* PBXTargetDependency */, + OBJ_5378 /* PBXTargetDependency */, + OBJ_5379 /* PBXTargetDependency */, + ); + name = TestCommons; + productName = TestCommons; + productReference = swiftrewriter::TestCommons::Product /* TestCommons.framework */; + productType = "com.apple.product-type.framework"; + }; + swiftrewriter::TestCommonsTests /* TestCommonsTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = OBJ_5380 /* Build configuration list for PBXNativeTarget "TestCommonsTests" */; + buildPhases = ( + OBJ_5383 /* Sources */, + OBJ_5386 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + OBJ_5428 /* PBXTargetDependency */, + OBJ_5429 /* PBXTargetDependency */, + OBJ_5430 /* PBXTargetDependency */, + OBJ_5431 /* PBXTargetDependency */, + OBJ_5432 /* PBXTargetDependency */, + OBJ_5433 /* PBXTargetDependency */, + OBJ_5434 /* PBXTargetDependency */, + OBJ_5435 /* PBXTargetDependency */, + OBJ_5436 /* PBXTargetDependency */, + OBJ_5437 /* PBXTargetDependency */, + OBJ_5438 /* PBXTargetDependency */, + OBJ_5439 /* PBXTargetDependency */, + OBJ_5440 /* PBXTargetDependency */, + OBJ_5441 /* PBXTargetDependency */, + OBJ_5442 /* PBXTargetDependency */, + OBJ_5443 /* PBXTargetDependency */, + OBJ_5444 /* PBXTargetDependency */, + OBJ_5445 /* PBXTargetDependency */, + OBJ_5446 /* PBXTargetDependency */, + OBJ_5447 /* PBXTargetDependency */, + OBJ_5448 /* PBXTargetDependency */, + OBJ_5449 /* PBXTargetDependency */, + OBJ_5450 /* PBXTargetDependency */, + OBJ_5451 /* PBXTargetDependency */, + OBJ_5452 /* PBXTargetDependency */, + OBJ_5453 /* PBXTargetDependency */, + OBJ_5454 /* PBXTargetDependency */, + OBJ_5455 /* PBXTargetDependency */, + OBJ_5456 /* PBXTargetDependency */, + OBJ_5457 /* PBXTargetDependency */, + OBJ_5458 /* PBXTargetDependency */, + OBJ_5459 /* PBXTargetDependency */, + OBJ_5460 /* PBXTargetDependency */, + OBJ_5461 /* PBXTargetDependency */, + OBJ_5462 /* PBXTargetDependency */, + OBJ_5463 /* PBXTargetDependency */, + OBJ_5464 /* PBXTargetDependency */, + OBJ_5465 /* PBXTargetDependency */, + OBJ_5466 /* PBXTargetDependency */, + OBJ_5467 /* PBXTargetDependency */, + OBJ_5468 /* PBXTargetDependency */, + ); + name = TestCommonsTests; productName = TestCommonsTests; productReference = swiftrewriter::TestCommonsTests::Product /* TestCommonsTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; swiftrewriter::TypeDefinitions /* TypeDefinitions */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4844 /* Build configuration list for PBXNativeTarget "TypeDefinitions" */; + buildConfigurationList = OBJ_5469 /* Build configuration list for PBXNativeTarget "TypeDefinitions" */; buildPhases = ( - OBJ_4847 /* Sources */, - OBJ_4849 /* Frameworks */, + OBJ_5472 /* Sources */, + OBJ_5474 /* Frameworks */, ); buildRules = ( ); @@ -9661,31 +10774,31 @@ }; swiftrewriter::TypeSystem /* TypeSystem */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4858 /* Build configuration list for PBXNativeTarget "TypeSystem" */; + buildConfigurationList = OBJ_5483 /* Build configuration list for PBXNativeTarget "TypeSystem" */; buildPhases = ( - OBJ_4861 /* Sources */, - OBJ_4900 /* Frameworks */, + OBJ_5486 /* Sources */, + OBJ_5525 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_4918 /* PBXTargetDependency */, - OBJ_4919 /* PBXTargetDependency */, - OBJ_4920 /* PBXTargetDependency */, - OBJ_4921 /* PBXTargetDependency */, - OBJ_4922 /* PBXTargetDependency */, - OBJ_4923 /* PBXTargetDependency */, - OBJ_4924 /* PBXTargetDependency */, - OBJ_4925 /* PBXTargetDependency */, - OBJ_4926 /* PBXTargetDependency */, - OBJ_4927 /* PBXTargetDependency */, - OBJ_4928 /* PBXTargetDependency */, - OBJ_4929 /* PBXTargetDependency */, - OBJ_4930 /* PBXTargetDependency */, - OBJ_4931 /* PBXTargetDependency */, - OBJ_4932 /* PBXTargetDependency */, - OBJ_4933 /* PBXTargetDependency */, - OBJ_4934 /* PBXTargetDependency */, + OBJ_5543 /* PBXTargetDependency */, + OBJ_5544 /* PBXTargetDependency */, + OBJ_5545 /* PBXTargetDependency */, + OBJ_5546 /* PBXTargetDependency */, + OBJ_5547 /* PBXTargetDependency */, + OBJ_5548 /* PBXTargetDependency */, + OBJ_5549 /* PBXTargetDependency */, + OBJ_5550 /* PBXTargetDependency */, + OBJ_5551 /* PBXTargetDependency */, + OBJ_5552 /* PBXTargetDependency */, + OBJ_5553 /* PBXTargetDependency */, + OBJ_5554 /* PBXTargetDependency */, + OBJ_5555 /* PBXTargetDependency */, + OBJ_5556 /* PBXTargetDependency */, + OBJ_5557 /* PBXTargetDependency */, + OBJ_5558 /* PBXTargetDependency */, + OBJ_5559 /* PBXTargetDependency */, ); name = TypeSystem; productName = TypeSystem; @@ -9694,52 +10807,55 @@ }; swiftrewriter::TypeSystemTests /* TypeSystemTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_4935 /* Build configuration list for PBXNativeTarget "TypeSystemTests" */; + buildConfigurationList = OBJ_5560 /* Build configuration list for PBXNativeTarget "TypeSystemTests" */; buildPhases = ( - OBJ_4938 /* Sources */, - OBJ_4954 /* Frameworks */, + OBJ_5563 /* Sources */, + OBJ_5579 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_4993 /* PBXTargetDependency */, - OBJ_4994 /* PBXTargetDependency */, - OBJ_4995 /* PBXTargetDependency */, - OBJ_4996 /* PBXTargetDependency */, - OBJ_4997 /* PBXTargetDependency */, - OBJ_4998 /* PBXTargetDependency */, - OBJ_4999 /* PBXTargetDependency */, - OBJ_5000 /* PBXTargetDependency */, - OBJ_5001 /* PBXTargetDependency */, - OBJ_5002 /* PBXTargetDependency */, - OBJ_5003 /* PBXTargetDependency */, - OBJ_5004 /* PBXTargetDependency */, - OBJ_5005 /* PBXTargetDependency */, - OBJ_5006 /* PBXTargetDependency */, - OBJ_5007 /* PBXTargetDependency */, - OBJ_5008 /* PBXTargetDependency */, - OBJ_5009 /* PBXTargetDependency */, - OBJ_5010 /* PBXTargetDependency */, - OBJ_5011 /* PBXTargetDependency */, - OBJ_5012 /* PBXTargetDependency */, - OBJ_5013 /* PBXTargetDependency */, - OBJ_5014 /* PBXTargetDependency */, - OBJ_5015 /* PBXTargetDependency */, - OBJ_5016 /* PBXTargetDependency */, - OBJ_5017 /* PBXTargetDependency */, - OBJ_5018 /* PBXTargetDependency */, - OBJ_5019 /* PBXTargetDependency */, - OBJ_5020 /* PBXTargetDependency */, - OBJ_5021 /* PBXTargetDependency */, - OBJ_5022 /* PBXTargetDependency */, - OBJ_5023 /* PBXTargetDependency */, - OBJ_5024 /* PBXTargetDependency */, - OBJ_5025 /* PBXTargetDependency */, - OBJ_5026 /* PBXTargetDependency */, - OBJ_5027 /* PBXTargetDependency */, - OBJ_5028 /* PBXTargetDependency */, - OBJ_5029 /* PBXTargetDependency */, - OBJ_5030 /* PBXTargetDependency */, + OBJ_5621 /* PBXTargetDependency */, + OBJ_5622 /* PBXTargetDependency */, + OBJ_5623 /* PBXTargetDependency */, + OBJ_5624 /* PBXTargetDependency */, + OBJ_5625 /* PBXTargetDependency */, + OBJ_5626 /* PBXTargetDependency */, + OBJ_5627 /* PBXTargetDependency */, + OBJ_5628 /* PBXTargetDependency */, + OBJ_5629 /* PBXTargetDependency */, + OBJ_5630 /* PBXTargetDependency */, + OBJ_5631 /* PBXTargetDependency */, + OBJ_5632 /* PBXTargetDependency */, + OBJ_5633 /* PBXTargetDependency */, + OBJ_5634 /* PBXTargetDependency */, + OBJ_5635 /* PBXTargetDependency */, + OBJ_5636 /* PBXTargetDependency */, + OBJ_5637 /* PBXTargetDependency */, + OBJ_5638 /* PBXTargetDependency */, + OBJ_5639 /* PBXTargetDependency */, + OBJ_5640 /* PBXTargetDependency */, + OBJ_5641 /* PBXTargetDependency */, + OBJ_5642 /* PBXTargetDependency */, + OBJ_5643 /* PBXTargetDependency */, + OBJ_5644 /* PBXTargetDependency */, + OBJ_5645 /* PBXTargetDependency */, + OBJ_5646 /* PBXTargetDependency */, + OBJ_5647 /* PBXTargetDependency */, + OBJ_5648 /* PBXTargetDependency */, + OBJ_5649 /* PBXTargetDependency */, + OBJ_5650 /* PBXTargetDependency */, + OBJ_5651 /* PBXTargetDependency */, + OBJ_5652 /* PBXTargetDependency */, + OBJ_5653 /* PBXTargetDependency */, + OBJ_5654 /* PBXTargetDependency */, + OBJ_5655 /* PBXTargetDependency */, + OBJ_5656 /* PBXTargetDependency */, + OBJ_5657 /* PBXTargetDependency */, + OBJ_5658 /* PBXTargetDependency */, + OBJ_5659 /* PBXTargetDependency */, + OBJ_5660 /* PBXTargetDependency */, + OBJ_5661 /* PBXTargetDependency */, ); name = TypeSystemTests; productName = TypeSystemTests; @@ -9748,10 +10864,10 @@ }; swiftrewriter::Utils /* Utils */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_5031 /* Build configuration list for PBXNativeTarget "Utils" */; + buildConfigurationList = OBJ_5662 /* Build configuration list for PBXNativeTarget "Utils" */; buildPhases = ( - OBJ_5034 /* Sources */, - OBJ_5049 /* Frameworks */, + OBJ_5665 /* Sources */, + OBJ_5680 /* Frameworks */, ); buildRules = ( ); @@ -9764,15 +10880,15 @@ }; swiftrewriter::UtilsTests /* UtilsTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_5050 /* Build configuration list for PBXNativeTarget "UtilsTests" */; + buildConfigurationList = OBJ_5681 /* Build configuration list for PBXNativeTarget "UtilsTests" */; buildPhases = ( - OBJ_5053 /* Sources */, - OBJ_5061 /* Frameworks */, + OBJ_5684 /* Sources */, + OBJ_5692 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_5063 /* PBXTargetDependency */, + OBJ_5694 /* PBXTargetDependency */, ); name = UtilsTests; productName = UtilsTests; @@ -9781,17 +10897,17 @@ }; swiftrewriter::WriterTargetOutput /* WriterTargetOutput */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_5064 /* Build configuration list for PBXNativeTarget "WriterTargetOutput" */; + buildConfigurationList = OBJ_5695 /* Build configuration list for PBXNativeTarget "WriterTargetOutput" */; buildPhases = ( - OBJ_5067 /* Sources */, - OBJ_5071 /* Frameworks */, + OBJ_5698 /* Sources */, + OBJ_5702 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_5075 /* PBXTargetDependency */, - OBJ_5076 /* PBXTargetDependency */, - OBJ_5077 /* PBXTargetDependency */, + OBJ_5706 /* PBXTargetDependency */, + OBJ_5707 /* PBXTargetDependency */, + OBJ_5708 /* PBXTargetDependency */, ); name = WriterTargetOutput; productName = WriterTargetOutput; @@ -9800,52 +10916,55 @@ }; swiftrewriter::WriterTargetOutputTests /* WriterTargetOutputTests */ = { isa = PBXNativeTarget; - buildConfigurationList = OBJ_5078 /* Build configuration list for PBXNativeTarget "WriterTargetOutputTests" */; + buildConfigurationList = OBJ_5709 /* Build configuration list for PBXNativeTarget "WriterTargetOutputTests" */; buildPhases = ( - OBJ_5081 /* Sources */, - OBJ_5084 /* Frameworks */, + OBJ_5712 /* Sources */, + OBJ_5715 /* Frameworks */, ); buildRules = ( ); dependencies = ( - OBJ_5123 /* PBXTargetDependency */, - OBJ_5124 /* PBXTargetDependency */, - OBJ_5125 /* PBXTargetDependency */, - OBJ_5126 /* PBXTargetDependency */, - OBJ_5127 /* PBXTargetDependency */, - OBJ_5128 /* PBXTargetDependency */, - OBJ_5129 /* PBXTargetDependency */, - OBJ_5130 /* PBXTargetDependency */, - OBJ_5131 /* PBXTargetDependency */, - OBJ_5132 /* PBXTargetDependency */, - OBJ_5133 /* PBXTargetDependency */, - OBJ_5134 /* PBXTargetDependency */, - OBJ_5135 /* PBXTargetDependency */, - OBJ_5136 /* PBXTargetDependency */, - OBJ_5137 /* PBXTargetDependency */, - OBJ_5138 /* PBXTargetDependency */, - OBJ_5139 /* PBXTargetDependency */, - OBJ_5140 /* PBXTargetDependency */, - OBJ_5141 /* PBXTargetDependency */, - OBJ_5142 /* PBXTargetDependency */, - OBJ_5143 /* PBXTargetDependency */, - OBJ_5144 /* PBXTargetDependency */, - OBJ_5145 /* PBXTargetDependency */, - OBJ_5146 /* PBXTargetDependency */, - OBJ_5147 /* PBXTargetDependency */, - OBJ_5148 /* PBXTargetDependency */, - OBJ_5149 /* PBXTargetDependency */, - OBJ_5150 /* PBXTargetDependency */, - OBJ_5151 /* PBXTargetDependency */, - OBJ_5152 /* PBXTargetDependency */, - OBJ_5153 /* PBXTargetDependency */, - OBJ_5154 /* PBXTargetDependency */, - OBJ_5155 /* PBXTargetDependency */, - OBJ_5156 /* PBXTargetDependency */, - OBJ_5157 /* PBXTargetDependency */, - OBJ_5158 /* PBXTargetDependency */, - OBJ_5159 /* PBXTargetDependency */, - OBJ_5160 /* PBXTargetDependency */, + OBJ_5757 /* PBXTargetDependency */, + OBJ_5758 /* PBXTargetDependency */, + OBJ_5759 /* PBXTargetDependency */, + OBJ_5760 /* PBXTargetDependency */, + OBJ_5761 /* PBXTargetDependency */, + OBJ_5762 /* PBXTargetDependency */, + OBJ_5763 /* PBXTargetDependency */, + OBJ_5764 /* PBXTargetDependency */, + OBJ_5765 /* PBXTargetDependency */, + OBJ_5766 /* PBXTargetDependency */, + OBJ_5767 /* PBXTargetDependency */, + OBJ_5768 /* PBXTargetDependency */, + OBJ_5769 /* PBXTargetDependency */, + OBJ_5770 /* PBXTargetDependency */, + OBJ_5771 /* PBXTargetDependency */, + OBJ_5772 /* PBXTargetDependency */, + OBJ_5773 /* PBXTargetDependency */, + OBJ_5774 /* PBXTargetDependency */, + OBJ_5775 /* PBXTargetDependency */, + OBJ_5776 /* PBXTargetDependency */, + OBJ_5777 /* PBXTargetDependency */, + OBJ_5778 /* PBXTargetDependency */, + OBJ_5779 /* PBXTargetDependency */, + OBJ_5780 /* PBXTargetDependency */, + OBJ_5781 /* PBXTargetDependency */, + OBJ_5782 /* PBXTargetDependency */, + OBJ_5783 /* PBXTargetDependency */, + OBJ_5784 /* PBXTargetDependency */, + OBJ_5785 /* PBXTargetDependency */, + OBJ_5786 /* PBXTargetDependency */, + OBJ_5787 /* PBXTargetDependency */, + OBJ_5788 /* PBXTargetDependency */, + OBJ_5789 /* PBXTargetDependency */, + OBJ_5790 /* PBXTargetDependency */, + OBJ_5791 /* PBXTargetDependency */, + OBJ_5792 /* PBXTargetDependency */, + OBJ_5793 /* PBXTargetDependency */, + OBJ_5794 /* PBXTargetDependency */, + OBJ_5795 /* PBXTargetDependency */, + OBJ_5796 /* PBXTargetDependency */, + OBJ_5797 /* PBXTargetDependency */, ); name = WriterTargetOutputTests; productName = WriterTargetOutputTests; @@ -9869,7 +10988,7 @@ en, ); mainGroup = OBJ_5; - productRefGroup = OBJ_1277 /* Products */; + productRefGroup = OBJ_1365 /* Products */; projectDirPath = .; targets = ( swiftrewriter::Analysis /* Analysis */, @@ -9896,6 +11015,12 @@ swiftrewriter::IntentionPassesTests /* IntentionPassesTests */, swiftrewriter::Intentions /* Intentions */, swiftrewriter::IntentionsTests /* IntentionsTests */, + swiftrewriter::JavaScriptFrontend /* JavaScriptFrontend */, + swiftrewriter::JavaScriptFrontendTests /* JavaScriptFrontendTests */, + swiftrewriter::JsGrammarModels /* JsGrammarModels */, + swiftrewriter::JsParser /* JsParser */, + swiftrewriter::JsParserAntlr /* JsParserAntlr */, + swiftrewriter::JsParserTests /* JsParserTests */, swiftrewriter::KnownType /* KnownType */, swiftrewriter::KnownTypeTests /* KnownTypeTests */, minilexer::MiniLexer /* MiniLexer */, @@ -9949,4318 +11074,4544 @@ /* End PBXProject section */ /* Begin PBXSourcesBuildPhase section */ - OBJ_1360 /* Sources */ = { + OBJ_1453 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1361 /* CallGraph+Creation.swift in Sources */, - OBJ_1362 /* CallGraph+Graphviz.swift in Sources */, - OBJ_1363 /* CallGraph.swift in Sources */, - OBJ_1364 /* CFGVisitResult.swift in Sources */, - OBJ_1365 /* ControlFlowGraph+Creation.swift in Sources */, - OBJ_1366 /* ControlFlowGraph+Graphviz.swift in Sources */, - OBJ_1367 /* ControlFlowGraph+Visitor.swift in Sources */, - OBJ_1368 /* ControlFlowGraph.swift in Sources */, - OBJ_1369 /* DefinitionTypePropagator.swift in Sources */, - OBJ_1370 /* DirectedGraph.swift in Sources */, - OBJ_1371 /* DirectedGraphBase.swift in Sources */, - OBJ_1372 /* NodeDefinition.swift in Sources */, - OBJ_1373 /* ReachingDefinitionAnalyzer.swift in Sources */, - OBJ_1374 /* SyntaxNode+ControlFlowGraphSyntaxNode.swift in Sources */, - OBJ_1375 /* BaseUsageAnalyzer.swift in Sources */, - OBJ_1376 /* DefinitionUsage.swift in Sources */, - OBJ_1377 /* IntentionCollectionUsageAnalyzer.swift in Sources */, - OBJ_1378 /* LocalUsageAnalyzer.swift in Sources */, - OBJ_1379 /* LocalUsageAnalyzerType.swift in Sources */, - OBJ_1380 /* UsageAnalysis.swift in Sources */, - ); - }; - OBJ_1446 /* Sources */ = { + OBJ_1454 /* CallGraph+Creation.swift in Sources */, + OBJ_1455 /* CallGraph+Graphviz.swift in Sources */, + OBJ_1456 /* CallGraph.swift in Sources */, + OBJ_1457 /* CFGVisitResult.swift in Sources */, + OBJ_1458 /* ControlFlowGraph+Creation.swift in Sources */, + OBJ_1459 /* ControlFlowGraph+Graphviz.swift in Sources */, + OBJ_1460 /* ControlFlowGraph+Visitor.swift in Sources */, + OBJ_1461 /* ControlFlowGraph.swift in Sources */, + OBJ_1462 /* DefinitionTypePropagator.swift in Sources */, + OBJ_1463 /* DirectedGraph.swift in Sources */, + OBJ_1464 /* DirectedGraphBase.swift in Sources */, + OBJ_1465 /* NodeDefinition.swift in Sources */, + OBJ_1466 /* ReachingDefinitionAnalyzer.swift in Sources */, + OBJ_1467 /* SyntaxNode+ControlFlowGraphSyntaxNode.swift in Sources */, + OBJ_1468 /* BaseUsageAnalyzer.swift in Sources */, + OBJ_1469 /* DefinitionUsage.swift in Sources */, + OBJ_1470 /* IntentionCollectionUsageAnalyzer.swift in Sources */, + OBJ_1471 /* LocalUsageAnalyzer.swift in Sources */, + OBJ_1472 /* LocalUsageAnalyzerType.swift in Sources */, + OBJ_1473 /* UsageAnalysis.swift in Sources */, + ); + }; + OBJ_1539 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1447 /* CallGraph+CreationTests.swift in Sources */, - OBJ_1448 /* CallGraphTestUtils.swift in Sources */, - OBJ_1449 /* CallGraphTests.swift in Sources */, - OBJ_1450 /* ControlFlowGraph+CreationExpTests.swift in Sources */, - OBJ_1451 /* ControlFlowGraph+CreationStmtTests.swift in Sources */, - OBJ_1452 /* ControlFlowGraph+CreationTests.swift in Sources */, - OBJ_1453 /* ControlFlowGraphTestUtils.swift in Sources */, - OBJ_1454 /* DefinitionTypePropagatorTests.swift in Sources */, - OBJ_1455 /* DirectedGraphTests.swift in Sources */, - OBJ_1456 /* Graphviz+TestUtils.swift in Sources */, - OBJ_1457 /* ReachingDefinitionAnalyzerTests.swift in Sources */, - OBJ_1458 /* BaseUsageAnalyzerTests.swift in Sources */, - OBJ_1459 /* IntentionCollectionUsageAnalyzerTests.swift in Sources */, - OBJ_1460 /* LocalUsageAnalyzerTests.swift in Sources */, - OBJ_1461 /* UsageAnalysisTests.swift in Sources */, - ); - }; - OBJ_1559 /* Sources */ = { + OBJ_1540 /* CallGraph+CreationTests.swift in Sources */, + OBJ_1541 /* CallGraphTestUtils.swift in Sources */, + OBJ_1542 /* CallGraphTests.swift in Sources */, + OBJ_1543 /* ControlFlowGraph+CreationExpTests.swift in Sources */, + OBJ_1544 /* ControlFlowGraph+CreationStmtTests.swift in Sources */, + OBJ_1545 /* ControlFlowGraph+CreationTests.swift in Sources */, + OBJ_1546 /* ControlFlowGraphTestUtils.swift in Sources */, + OBJ_1547 /* DefinitionTypePropagatorTests.swift in Sources */, + OBJ_1548 /* DirectedGraphTests.swift in Sources */, + OBJ_1549 /* Graphviz+TestUtils.swift in Sources */, + OBJ_1550 /* ReachingDefinitionAnalyzerTests.swift in Sources */, + OBJ_1551 /* BaseUsageAnalyzerTests.swift in Sources */, + OBJ_1552 /* IntentionCollectionUsageAnalyzerTests.swift in Sources */, + OBJ_1553 /* LocalUsageAnalyzerTests.swift in Sources */, + OBJ_1554 /* UsageAnalysisTests.swift in Sources */, + ); + }; + OBJ_1661 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1560 /* ANTLRErrorListener.swift in Sources */, - OBJ_1561 /* ANTLRErrorStrategy.swift in Sources */, - OBJ_1562 /* ANTLRFileStream.swift in Sources */, - OBJ_1563 /* ANTLRInputStream.swift in Sources */, - OBJ_1564 /* BailErrorStrategy.swift in Sources */, - OBJ_1565 /* BaseErrorListener.swift in Sources */, - OBJ_1566 /* BufferedTokenStream.swift in Sources */, - OBJ_1567 /* CharStream.swift in Sources */, - OBJ_1568 /* CommonToken.swift in Sources */, - OBJ_1569 /* CommonTokenFactory.swift in Sources */, - OBJ_1570 /* CommonTokenStream.swift in Sources */, - OBJ_1571 /* ConsoleErrorListener.swift in Sources */, - OBJ_1572 /* DefaultErrorStrategy.swift in Sources */, - OBJ_1573 /* DiagnosticErrorListener.swift in Sources */, - OBJ_1574 /* FailedPredicateException.swift in Sources */, - OBJ_1575 /* InputMismatchException.swift in Sources */, - OBJ_1576 /* IntStream.swift in Sources */, - OBJ_1577 /* InterpreterRuleContext.swift in Sources */, - OBJ_1578 /* Lexer.swift in Sources */, - OBJ_1579 /* LexerInterpreter.swift in Sources */, - OBJ_1580 /* LexerNoViableAltException.swift in Sources */, - OBJ_1581 /* ListTokenSource.swift in Sources */, - OBJ_1582 /* NoViableAltException.swift in Sources */, - OBJ_1583 /* Parser.swift in Sources */, - OBJ_1584 /* ParserInterpreter.swift in Sources */, - OBJ_1585 /* ParserRuleContext.swift in Sources */, - OBJ_1586 /* ProxyErrorListener.swift in Sources */, - OBJ_1587 /* RecognitionException.swift in Sources */, - OBJ_1588 /* Recognizer.swift in Sources */, - OBJ_1589 /* RuleContext.swift in Sources */, - OBJ_1590 /* RuntimeMetaData.swift in Sources */, - OBJ_1591 /* Token.swift in Sources */, - OBJ_1592 /* TokenFactory.swift in Sources */, - OBJ_1593 /* TokenSource.swift in Sources */, - OBJ_1594 /* TokenStream.swift in Sources */, - OBJ_1595 /* TokenStreamRewriter.swift in Sources */, - OBJ_1596 /* UnbufferedCharStream.swift in Sources */, - OBJ_1597 /* UnbufferedTokenStream.swift in Sources */, - OBJ_1598 /* VocabularySingle.swift in Sources */, - OBJ_1599 /* WritableToken.swift in Sources */, - OBJ_1600 /* ATN.swift in Sources */, - OBJ_1601 /* ATNConfig.swift in Sources */, - OBJ_1602 /* ATNConfigSet.swift in Sources */, - OBJ_1603 /* ATNDeserializationOptions.swift in Sources */, - OBJ_1604 /* ATNDeserializer.swift in Sources */, - OBJ_1605 /* ATNSimulator.swift in Sources */, - OBJ_1606 /* ATNState.swift in Sources */, - OBJ_1607 /* ATNType.swift in Sources */, - OBJ_1608 /* AbstractPredicateTransition.swift in Sources */, - OBJ_1609 /* ActionTransition.swift in Sources */, - OBJ_1610 /* AmbiguityInfo.swift in Sources */, - OBJ_1611 /* ArrayPredictionContext.swift in Sources */, - OBJ_1612 /* AtomTransition.swift in Sources */, - OBJ_1613 /* BasicBlockStartState.swift in Sources */, - OBJ_1614 /* BasicState.swift in Sources */, - OBJ_1615 /* BlockEndState.swift in Sources */, - OBJ_1616 /* BlockStartState.swift in Sources */, - OBJ_1617 /* ContextSensitivityInfo.swift in Sources */, - OBJ_1618 /* DecisionEventInfo.swift in Sources */, - OBJ_1619 /* DecisionInfo.swift in Sources */, - OBJ_1620 /* DecisionState.swift in Sources */, - OBJ_1621 /* DefaultATNConfig.swift in Sources */, - OBJ_1622 /* EmptyPredictionContext.swift in Sources */, - OBJ_1623 /* EpsilonTransition.swift in Sources */, - OBJ_1624 /* ErrorInfo.swift in Sources */, - OBJ_1625 /* LL1Analyzer.swift in Sources */, - OBJ_1626 /* LexerATNConfig.swift in Sources */, - OBJ_1627 /* LexerATNSimulator.swift in Sources */, - OBJ_1628 /* LexerAction.swift in Sources */, - OBJ_1629 /* LexerActionExecutor.swift in Sources */, - OBJ_1630 /* LexerActionType.swift in Sources */, - OBJ_1631 /* LexerChannelAction.swift in Sources */, - OBJ_1632 /* LexerCustomAction.swift in Sources */, - OBJ_1633 /* LexerIndexedCustomAction.swift in Sources */, - OBJ_1634 /* LexerModeAction.swift in Sources */, - OBJ_1635 /* LexerMoreAction.swift in Sources */, - OBJ_1636 /* LexerPopModeAction.swift in Sources */, - OBJ_1637 /* LexerPushModeAction.swift in Sources */, - OBJ_1638 /* LexerSkipAction.swift in Sources */, - OBJ_1639 /* LexerTypeAction.swift in Sources */, - OBJ_1640 /* LookaheadEventInfo.swift in Sources */, - OBJ_1641 /* LookupATNConfig.swift in Sources */, - OBJ_1642 /* LookupDictionary.swift in Sources */, - OBJ_1643 /* LoopEndState.swift in Sources */, - OBJ_1644 /* NotSetTransition.swift in Sources */, - OBJ_1645 /* ParseInfo.swift in Sources */, - OBJ_1646 /* ParserATNSimulator.swift in Sources */, - OBJ_1647 /* PlusBlockStartState.swift in Sources */, - OBJ_1648 /* PlusLoopbackState.swift in Sources */, - OBJ_1649 /* PrecedencePredicateTransition.swift in Sources */, - OBJ_1650 /* PredicateEvalInfo.swift in Sources */, - OBJ_1651 /* PredicateTransition.swift in Sources */, - OBJ_1652 /* PredictionContext.swift in Sources */, - OBJ_1653 /* PredictionContextCache.swift in Sources */, - OBJ_1654 /* PredictionMode.swift in Sources */, - OBJ_1655 /* ProfilingATNSimulator.swift in Sources */, - OBJ_1656 /* RangeTransition.swift in Sources */, - OBJ_1657 /* RuleStartState.swift in Sources */, - OBJ_1658 /* RuleStopState.swift in Sources */, - OBJ_1659 /* RuleTransition.swift in Sources */, - OBJ_1660 /* SemanticContext.swift in Sources */, - OBJ_1661 /* SetTransition.swift in Sources */, - OBJ_1662 /* SingletonPredictionContext.swift in Sources */, - OBJ_1663 /* StarBlockStartState.swift in Sources */, - OBJ_1664 /* StarLoopEntryState.swift in Sources */, - OBJ_1665 /* StarLoopbackState.swift in Sources */, - OBJ_1666 /* TokensStartState.swift in Sources */, - OBJ_1667 /* Transition.swift in Sources */, - OBJ_1668 /* WildcardTransition.swift in Sources */, - OBJ_1669 /* DFA.swift in Sources */, - OBJ_1670 /* DFASerializer.swift in Sources */, - OBJ_1671 /* DFAState.swift in Sources */, - OBJ_1672 /* LexerDFASerializer.swift in Sources */, - OBJ_1673 /* BitSet.swift in Sources */, - OBJ_1674 /* DoubleKeyMap.swift in Sources */, - OBJ_1675 /* IntSet.swift in Sources */, - OBJ_1676 /* InterpreterDataReader.swift in Sources */, - OBJ_1677 /* Interval.swift in Sources */, - OBJ_1678 /* IntervalSet.swift in Sources */, - OBJ_1679 /* MultiMap.swift in Sources */, - OBJ_1680 /* MurmurHash.swift in Sources */, - OBJ_1681 /* Utils.swift in Sources */, - OBJ_1682 /* ANTLRError.swift in Sources */, - OBJ_1683 /* ANTLRException.swift in Sources */, - OBJ_1684 /* ArrayExtension.swift in Sources */, - OBJ_1685 /* CharacterExtension.swift in Sources */, - OBJ_1686 /* IntStreamExtension.swift in Sources */, - OBJ_1687 /* StringExtension.swift in Sources */, - OBJ_1688 /* TokenExtension.swift in Sources */, - OBJ_1689 /* UUIDExtension.swift in Sources */, - OBJ_1690 /* AtomicInt.swift in Sources */, - OBJ_1691 /* CommonUtil.swift in Sources */, - OBJ_1692 /* Mutex.swift in Sources */, - OBJ_1693 /* Stack.swift in Sources */, - OBJ_1694 /* AbstractParseTreeVisitor.swift in Sources */, - OBJ_1695 /* ErrorNode.swift in Sources */, - OBJ_1696 /* ParseTree.swift in Sources */, - OBJ_1697 /* ParseTreeListener.swift in Sources */, - OBJ_1698 /* ParseTreeProperty.swift in Sources */, - OBJ_1699 /* ParseTreeVisitor.swift in Sources */, - OBJ_1700 /* ParseTreeWalker.swift in Sources */, - OBJ_1701 /* RuleNode.swift in Sources */, - OBJ_1702 /* SyntaxTree.swift in Sources */, - OBJ_1703 /* TerminalNode.swift in Sources */, - OBJ_1704 /* TerminalNodeImpl.swift in Sources */, - OBJ_1705 /* Tree.swift in Sources */, - OBJ_1706 /* Trees.swift in Sources */, - OBJ_1707 /* Chunk.swift in Sources */, - OBJ_1708 /* ParseTreeMatch.swift in Sources */, - OBJ_1709 /* ParseTreePattern.swift in Sources */, - OBJ_1710 /* ParseTreePatternMatcher.swift in Sources */, - OBJ_1711 /* RuleTagToken.swift in Sources */, - OBJ_1712 /* TagChunk.swift in Sources */, - OBJ_1713 /* TextChunk.swift in Sources */, - OBJ_1714 /* TokenTagToken.swift in Sources */, - ); - }; - OBJ_1722 /* Sources */ = { + OBJ_1662 /* ANTLRErrorListener.swift in Sources */, + OBJ_1663 /* ANTLRErrorStrategy.swift in Sources */, + OBJ_1664 /* ANTLRFileStream.swift in Sources */, + OBJ_1665 /* ANTLRInputStream.swift in Sources */, + OBJ_1666 /* BailErrorStrategy.swift in Sources */, + OBJ_1667 /* BaseErrorListener.swift in Sources */, + OBJ_1668 /* BufferedTokenStream.swift in Sources */, + OBJ_1669 /* CharStream.swift in Sources */, + OBJ_1670 /* CommonToken.swift in Sources */, + OBJ_1671 /* CommonTokenFactory.swift in Sources */, + OBJ_1672 /* CommonTokenStream.swift in Sources */, + OBJ_1673 /* ConsoleErrorListener.swift in Sources */, + OBJ_1674 /* DefaultErrorStrategy.swift in Sources */, + OBJ_1675 /* DiagnosticErrorListener.swift in Sources */, + OBJ_1676 /* FailedPredicateException.swift in Sources */, + OBJ_1677 /* InputMismatchException.swift in Sources */, + OBJ_1678 /* IntStream.swift in Sources */, + OBJ_1679 /* InterpreterRuleContext.swift in Sources */, + OBJ_1680 /* Lexer.swift in Sources */, + OBJ_1681 /* LexerInterpreter.swift in Sources */, + OBJ_1682 /* LexerNoViableAltException.swift in Sources */, + OBJ_1683 /* ListTokenSource.swift in Sources */, + OBJ_1684 /* NoViableAltException.swift in Sources */, + OBJ_1685 /* Parser.swift in Sources */, + OBJ_1686 /* ParserInterpreter.swift in Sources */, + OBJ_1687 /* ParserRuleContext.swift in Sources */, + OBJ_1688 /* ProxyErrorListener.swift in Sources */, + OBJ_1689 /* RecognitionException.swift in Sources */, + OBJ_1690 /* Recognizer.swift in Sources */, + OBJ_1691 /* RuleContext.swift in Sources */, + OBJ_1692 /* RuntimeMetaData.swift in Sources */, + OBJ_1693 /* Token.swift in Sources */, + OBJ_1694 /* TokenFactory.swift in Sources */, + OBJ_1695 /* TokenSource.swift in Sources */, + OBJ_1696 /* TokenStream.swift in Sources */, + OBJ_1697 /* TokenStreamRewriter.swift in Sources */, + OBJ_1698 /* UnbufferedCharStream.swift in Sources */, + OBJ_1699 /* UnbufferedTokenStream.swift in Sources */, + OBJ_1700 /* VocabularySingle.swift in Sources */, + OBJ_1701 /* WritableToken.swift in Sources */, + OBJ_1702 /* ATN.swift in Sources */, + OBJ_1703 /* ATNConfig.swift in Sources */, + OBJ_1704 /* ATNConfigSet.swift in Sources */, + OBJ_1705 /* ATNDeserializationOptions.swift in Sources */, + OBJ_1706 /* ATNDeserializer.swift in Sources */, + OBJ_1707 /* ATNSimulator.swift in Sources */, + OBJ_1708 /* ATNState.swift in Sources */, + OBJ_1709 /* ATNType.swift in Sources */, + OBJ_1710 /* AbstractPredicateTransition.swift in Sources */, + OBJ_1711 /* ActionTransition.swift in Sources */, + OBJ_1712 /* AmbiguityInfo.swift in Sources */, + OBJ_1713 /* ArrayPredictionContext.swift in Sources */, + OBJ_1714 /* AtomTransition.swift in Sources */, + OBJ_1715 /* BasicBlockStartState.swift in Sources */, + OBJ_1716 /* BasicState.swift in Sources */, + OBJ_1717 /* BlockEndState.swift in Sources */, + OBJ_1718 /* BlockStartState.swift in Sources */, + OBJ_1719 /* ContextSensitivityInfo.swift in Sources */, + OBJ_1720 /* DecisionEventInfo.swift in Sources */, + OBJ_1721 /* DecisionInfo.swift in Sources */, + OBJ_1722 /* DecisionState.swift in Sources */, + OBJ_1723 /* DefaultATNConfig.swift in Sources */, + OBJ_1724 /* EmptyPredictionContext.swift in Sources */, + OBJ_1725 /* EpsilonTransition.swift in Sources */, + OBJ_1726 /* ErrorInfo.swift in Sources */, + OBJ_1727 /* LL1Analyzer.swift in Sources */, + OBJ_1728 /* LexerATNConfig.swift in Sources */, + OBJ_1729 /* LexerATNSimulator.swift in Sources */, + OBJ_1730 /* LexerAction.swift in Sources */, + OBJ_1731 /* LexerActionExecutor.swift in Sources */, + OBJ_1732 /* LexerActionType.swift in Sources */, + OBJ_1733 /* LexerChannelAction.swift in Sources */, + OBJ_1734 /* LexerCustomAction.swift in Sources */, + OBJ_1735 /* LexerIndexedCustomAction.swift in Sources */, + OBJ_1736 /* LexerModeAction.swift in Sources */, + OBJ_1737 /* LexerMoreAction.swift in Sources */, + OBJ_1738 /* LexerPopModeAction.swift in Sources */, + OBJ_1739 /* LexerPushModeAction.swift in Sources */, + OBJ_1740 /* LexerSkipAction.swift in Sources */, + OBJ_1741 /* LexerTypeAction.swift in Sources */, + OBJ_1742 /* LookaheadEventInfo.swift in Sources */, + OBJ_1743 /* LookupATNConfig.swift in Sources */, + OBJ_1744 /* LookupDictionary.swift in Sources */, + OBJ_1745 /* LoopEndState.swift in Sources */, + OBJ_1746 /* NotSetTransition.swift in Sources */, + OBJ_1747 /* ParseInfo.swift in Sources */, + OBJ_1748 /* ParserATNSimulator.swift in Sources */, + OBJ_1749 /* PlusBlockStartState.swift in Sources */, + OBJ_1750 /* PlusLoopbackState.swift in Sources */, + OBJ_1751 /* PrecedencePredicateTransition.swift in Sources */, + OBJ_1752 /* PredicateEvalInfo.swift in Sources */, + OBJ_1753 /* PredicateTransition.swift in Sources */, + OBJ_1754 /* PredictionContext.swift in Sources */, + OBJ_1755 /* PredictionContextCache.swift in Sources */, + OBJ_1756 /* PredictionMode.swift in Sources */, + OBJ_1757 /* ProfilingATNSimulator.swift in Sources */, + OBJ_1758 /* RangeTransition.swift in Sources */, + OBJ_1759 /* RuleStartState.swift in Sources */, + OBJ_1760 /* RuleStopState.swift in Sources */, + OBJ_1761 /* RuleTransition.swift in Sources */, + OBJ_1762 /* SemanticContext.swift in Sources */, + OBJ_1763 /* SetTransition.swift in Sources */, + OBJ_1764 /* SingletonPredictionContext.swift in Sources */, + OBJ_1765 /* StarBlockStartState.swift in Sources */, + OBJ_1766 /* StarLoopEntryState.swift in Sources */, + OBJ_1767 /* StarLoopbackState.swift in Sources */, + OBJ_1768 /* TokensStartState.swift in Sources */, + OBJ_1769 /* Transition.swift in Sources */, + OBJ_1770 /* WildcardTransition.swift in Sources */, + OBJ_1771 /* DFA.swift in Sources */, + OBJ_1772 /* DFASerializer.swift in Sources */, + OBJ_1773 /* DFAState.swift in Sources */, + OBJ_1774 /* LexerDFASerializer.swift in Sources */, + OBJ_1775 /* BitSet.swift in Sources */, + OBJ_1776 /* DoubleKeyMap.swift in Sources */, + OBJ_1777 /* IntSet.swift in Sources */, + OBJ_1778 /* InterpreterDataReader.swift in Sources */, + OBJ_1779 /* Interval.swift in Sources */, + OBJ_1780 /* IntervalSet.swift in Sources */, + OBJ_1781 /* MultiMap.swift in Sources */, + OBJ_1782 /* MurmurHash.swift in Sources */, + OBJ_1783 /* Utils.swift in Sources */, + OBJ_1784 /* ANTLRError.swift in Sources */, + OBJ_1785 /* ANTLRException.swift in Sources */, + OBJ_1786 /* ArrayExtension.swift in Sources */, + OBJ_1787 /* CharacterExtension.swift in Sources */, + OBJ_1788 /* IntStreamExtension.swift in Sources */, + OBJ_1789 /* StringExtension.swift in Sources */, + OBJ_1790 /* TokenExtension.swift in Sources */, + OBJ_1791 /* UUIDExtension.swift in Sources */, + OBJ_1792 /* AtomicInt.swift in Sources */, + OBJ_1793 /* CommonUtil.swift in Sources */, + OBJ_1794 /* Mutex.swift in Sources */, + OBJ_1795 /* Stack.swift in Sources */, + OBJ_1796 /* AbstractParseTreeVisitor.swift in Sources */, + OBJ_1797 /* ErrorNode.swift in Sources */, + OBJ_1798 /* ParseTree.swift in Sources */, + OBJ_1799 /* ParseTreeListener.swift in Sources */, + OBJ_1800 /* ParseTreeProperty.swift in Sources */, + OBJ_1801 /* ParseTreeVisitor.swift in Sources */, + OBJ_1802 /* ParseTreeWalker.swift in Sources */, + OBJ_1803 /* RuleNode.swift in Sources */, + OBJ_1804 /* SyntaxTree.swift in Sources */, + OBJ_1805 /* TerminalNode.swift in Sources */, + OBJ_1806 /* TerminalNodeImpl.swift in Sources */, + OBJ_1807 /* Tree.swift in Sources */, + OBJ_1808 /* Trees.swift in Sources */, + OBJ_1809 /* Chunk.swift in Sources */, + OBJ_1810 /* ParseTreeMatch.swift in Sources */, + OBJ_1811 /* ParseTreePattern.swift in Sources */, + OBJ_1812 /* ParseTreePatternMatcher.swift in Sources */, + OBJ_1813 /* RuleTagToken.swift in Sources */, + OBJ_1814 /* TagChunk.swift in Sources */, + OBJ_1815 /* TextChunk.swift in Sources */, + OBJ_1816 /* TokenTagToken.swift in Sources */, + ); + }; + OBJ_1824 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1723 /* Package.swift in Sources */, + OBJ_1825 /* Package.swift in Sources */, ); }; - OBJ_1727 /* Sources */ = { + OBJ_1829 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1728 /* AntlrDiagnosticsErrorListener.swift in Sources */, - OBJ_1729 /* AntlrParser.swift in Sources */, - OBJ_1730 /* AntlrSettings.swift in Sources */, - OBJ_1731 /* AntlrTypeAliases.swift in Sources */, + OBJ_1830 /* AntlrDiagnosticsErrorListener.swift in Sources */, + OBJ_1831 /* AntlrParser.swift in Sources */, + OBJ_1832 /* AntlrSettings.swift in Sources */, + OBJ_1833 /* AntlrTypeAliases.swift in Sources */, ); }; - OBJ_1743 /* Sources */ = { + OBJ_1845 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1744 /* BashCompletionsGenerator.swift in Sources */, - OBJ_1745 /* CompletionsGenerator.swift in Sources */, - OBJ_1746 /* FishCompletionsGenerator.swift in Sources */, - OBJ_1747 /* ZshCompletionsGenerator.swift in Sources */, - OBJ_1748 /* Argument.swift in Sources */, - OBJ_1749 /* ArgumentHelp.swift in Sources */, - OBJ_1750 /* ArgumentVisibility.swift in Sources */, - OBJ_1751 /* CompletionKind.swift in Sources */, - OBJ_1752 /* Errors.swift in Sources */, - OBJ_1753 /* Flag.swift in Sources */, - OBJ_1754 /* NameSpecification.swift in Sources */, - OBJ_1755 /* Option.swift in Sources */, - OBJ_1756 /* OptionGroup.swift in Sources */, - OBJ_1757 /* AsyncParsableCommand.swift in Sources */, - OBJ_1758 /* CommandConfiguration.swift in Sources */, - OBJ_1759 /* EnumerableFlag.swift in Sources */, - OBJ_1760 /* ExpressibleByArgument.swift in Sources */, - OBJ_1761 /* ParsableArguments.swift in Sources */, - OBJ_1762 /* ParsableArgumentsValidation.swift in Sources */, - OBJ_1763 /* ParsableCommand.swift in Sources */, - OBJ_1764 /* ArgumentDecoder.swift in Sources */, - OBJ_1765 /* ArgumentDefinition.swift in Sources */, - OBJ_1766 /* ArgumentSet.swift in Sources */, - OBJ_1767 /* CommandParser.swift in Sources */, - OBJ_1768 /* InputOrigin.swift in Sources */, - OBJ_1769 /* Name.swift in Sources */, - OBJ_1770 /* Parsed.swift in Sources */, - OBJ_1771 /* ParsedValues.swift in Sources */, - OBJ_1772 /* ParserError.swift in Sources */, - OBJ_1773 /* SplitArguments.swift in Sources */, - OBJ_1774 /* DumpHelpGenerator.swift in Sources */, - OBJ_1775 /* HelpCommand.swift in Sources */, - OBJ_1776 /* HelpGenerator.swift in Sources */, - OBJ_1777 /* MessageInfo.swift in Sources */, - OBJ_1778 /* UsageGenerator.swift in Sources */, - OBJ_1779 /* CollectionExtensions.swift in Sources */, - OBJ_1780 /* SequenceExtensions.swift in Sources */, - OBJ_1781 /* StringExtensions.swift in Sources */, - OBJ_1782 /* Tree.swift in Sources */, - ); - }; - OBJ_1790 /* Sources */ = { + OBJ_1846 /* BashCompletionsGenerator.swift in Sources */, + OBJ_1847 /* CompletionsGenerator.swift in Sources */, + OBJ_1848 /* FishCompletionsGenerator.swift in Sources */, + OBJ_1849 /* ZshCompletionsGenerator.swift in Sources */, + OBJ_1850 /* Argument.swift in Sources */, + OBJ_1851 /* ArgumentHelp.swift in Sources */, + OBJ_1852 /* ArgumentVisibility.swift in Sources */, + OBJ_1853 /* CompletionKind.swift in Sources */, + OBJ_1854 /* Errors.swift in Sources */, + OBJ_1855 /* Flag.swift in Sources */, + OBJ_1856 /* NameSpecification.swift in Sources */, + OBJ_1857 /* Option.swift in Sources */, + OBJ_1858 /* OptionGroup.swift in Sources */, + OBJ_1859 /* AsyncParsableCommand.swift in Sources */, + OBJ_1860 /* CommandConfiguration.swift in Sources */, + OBJ_1861 /* EnumerableFlag.swift in Sources */, + OBJ_1862 /* ExpressibleByArgument.swift in Sources */, + OBJ_1863 /* ParsableArguments.swift in Sources */, + OBJ_1864 /* ParsableArgumentsValidation.swift in Sources */, + OBJ_1865 /* ParsableCommand.swift in Sources */, + OBJ_1866 /* ArgumentDecoder.swift in Sources */, + OBJ_1867 /* ArgumentDefinition.swift in Sources */, + OBJ_1868 /* ArgumentSet.swift in Sources */, + OBJ_1869 /* CommandParser.swift in Sources */, + OBJ_1870 /* InputOrigin.swift in Sources */, + OBJ_1871 /* Name.swift in Sources */, + OBJ_1872 /* Parsed.swift in Sources */, + OBJ_1873 /* ParsedValues.swift in Sources */, + OBJ_1874 /* ParserError.swift in Sources */, + OBJ_1875 /* SplitArguments.swift in Sources */, + OBJ_1876 /* DumpHelpGenerator.swift in Sources */, + OBJ_1877 /* HelpCommand.swift in Sources */, + OBJ_1878 /* HelpGenerator.swift in Sources */, + OBJ_1879 /* MessageInfo.swift in Sources */, + OBJ_1880 /* UsageGenerator.swift in Sources */, + OBJ_1881 /* CollectionExtensions.swift in Sources */, + OBJ_1882 /* SequenceExtensions.swift in Sources */, + OBJ_1883 /* StringExtensions.swift in Sources */, + OBJ_1884 /* Tree.swift in Sources */, + ); + }; + OBJ_1892 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1791 /* ToolInfo.swift in Sources */, + OBJ_1893 /* ToolInfo.swift in Sources */, ); }; - OBJ_1796 /* Sources */ = { + OBJ_1898 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1797 /* atomic.c in Sources */, + OBJ_1899 /* atomic.c in Sources */, ); }; - OBJ_1802 /* Sources */ = { + OBJ_1904 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1803 /* ArgumentRewritingStrategy.swift in Sources */, - OBJ_1804 /* CompoundedMappingType.swift in Sources */, - OBJ_1805 /* CompoundedMappingTypeList.swift in Sources */, - OBJ_1806 /* CoreGraphicsCompoundTypes.swift in Sources */, - OBJ_1807 /* FoundationCompoundTypes.swift in Sources */, - OBJ_1808 /* FunctionInvocationTransformer.swift in Sources */, - OBJ_1809 /* Helpers.swift in Sources */, - OBJ_1810 /* IncompleteKnownType+CompoundType.swift in Sources */, - OBJ_1811 /* MethodInvocationRewriter.swift in Sources */, - OBJ_1812 /* PostfixInvocationTransformer.swift in Sources */, - OBJ_1813 /* PostfixTransformation.swift in Sources */, - OBJ_1814 /* SignatureMapper.swift in Sources */, - OBJ_1815 /* SwiftAttributeTransformationsExtractor.swift in Sources */, - OBJ_1816 /* SwiftClassInterfaceParser.swift in Sources */, - OBJ_1817 /* UIColorCompoundType.swift in Sources */, - OBJ_1818 /* UIControlCompoundType.swift in Sources */, - OBJ_1819 /* UIGestureRecognizerCompoundType.swift in Sources */, - OBJ_1820 /* UILabelCompoundType.swift in Sources */, - OBJ_1821 /* UIResponderCompoundType.swift in Sources */, - OBJ_1822 /* UIViewCompoundType.swift in Sources */, - OBJ_1823 /* UIViewControllerCompoundType.swift in Sources */, - ); - }; - OBJ_1865 /* Sources */ = { + OBJ_1905 /* ArgumentRewritingStrategy.swift in Sources */, + OBJ_1906 /* CompoundedMappingType.swift in Sources */, + OBJ_1907 /* CompoundedMappingTypeList.swift in Sources */, + OBJ_1908 /* CoreGraphicsCompoundTypes.swift in Sources */, + OBJ_1909 /* FoundationCompoundTypes.swift in Sources */, + OBJ_1910 /* FunctionInvocationTransformer.swift in Sources */, + OBJ_1911 /* Helpers.swift in Sources */, + OBJ_1912 /* IncompleteKnownType+CompoundType.swift in Sources */, + OBJ_1913 /* MethodInvocationRewriter.swift in Sources */, + OBJ_1914 /* PostfixInvocationTransformer.swift in Sources */, + OBJ_1915 /* PostfixTransformation.swift in Sources */, + OBJ_1916 /* SignatureMapper.swift in Sources */, + OBJ_1917 /* SwiftAttributeTransformationsExtractor.swift in Sources */, + OBJ_1918 /* SwiftClassInterfaceParser.swift in Sources */, + OBJ_1919 /* UIColorCompoundType.swift in Sources */, + OBJ_1920 /* UIControlCompoundType.swift in Sources */, + OBJ_1921 /* UIGestureRecognizerCompoundType.swift in Sources */, + OBJ_1922 /* UILabelCompoundType.swift in Sources */, + OBJ_1923 /* UIResponderCompoundType.swift in Sources */, + OBJ_1924 /* UIViewCompoundType.swift in Sources */, + OBJ_1925 /* UIViewControllerCompoundType.swift in Sources */, + ); + }; + OBJ_1967 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1866 /* CoreGraphicsCompoundTypeTests.swift in Sources */, - OBJ_1867 /* FoundationCompoundTypesTests.swift in Sources */, - OBJ_1868 /* FunctionInvocationTransformerTests.swift in Sources */, - OBJ_1869 /* SwiftClassInterfaceParserTests.swift in Sources */, - OBJ_1870 /* UIColorCompoundTypeTests.swift in Sources */, - OBJ_1871 /* UIControlCompoundTypeTests.swift in Sources */, - OBJ_1872 /* UIGestureRecognizerCompoundTypeTests.swift in Sources */, - OBJ_1873 /* UILabelCompoundTypeTests.swift in Sources */, - OBJ_1874 /* UIResponderCompoundTypeTests.swift in Sources */, - OBJ_1875 /* UIViewCompoundTypeTests.swift in Sources */, - OBJ_1876 /* UIViewControllerCompoundTypeTests.swift in Sources */, - ); - }; - OBJ_1953 /* Sources */ = { + OBJ_1968 /* CoreGraphicsCompoundTypeTests.swift in Sources */, + OBJ_1969 /* FoundationCompoundTypesTests.swift in Sources */, + OBJ_1970 /* FunctionInvocationTransformerTests.swift in Sources */, + OBJ_1971 /* SwiftClassInterfaceParserTests.swift in Sources */, + OBJ_1972 /* UIColorCompoundTypeTests.swift in Sources */, + OBJ_1973 /* UIControlCompoundTypeTests.swift in Sources */, + OBJ_1974 /* UIGestureRecognizerCompoundTypeTests.swift in Sources */, + OBJ_1975 /* UILabelCompoundTypeTests.swift in Sources */, + OBJ_1976 /* UIResponderCompoundTypeTests.swift in Sources */, + OBJ_1977 /* UIViewCompoundTypeTests.swift in Sources */, + OBJ_1978 /* UIViewControllerCompoundTypeTests.swift in Sources */, + ); + }; + OBJ_2061 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1954 /* Console+Command.swift in Sources */, - OBJ_1955 /* Console+Paging.swift in Sources */, - OBJ_1956 /* Console.swift in Sources */, - OBJ_1957 /* ConsoleColor+Terminal.swift in Sources */, - OBJ_1958 /* ConsoleDataProvider.swift in Sources */, - OBJ_1959 /* ConsoleMenuController.swift in Sources */, - OBJ_1960 /* LinuxSupport.swift in Sources */, + OBJ_2062 /* Console+Command.swift in Sources */, + OBJ_2063 /* Console+Paging.swift in Sources */, + OBJ_2064 /* Console.swift in Sources */, + OBJ_2065 /* ConsoleColor+Terminal.swift in Sources */, + OBJ_2066 /* ConsoleDataProvider.swift in Sources */, + OBJ_2067 /* ConsoleMenuController.swift in Sources */, + OBJ_2068 /* LinuxSupport.swift in Sources */, ); }; - OBJ_1966 /* Sources */ = { + OBJ_2074 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1967 /* Package.swift in Sources */, + OBJ_2075 /* Package.swift in Sources */, ); }; - OBJ_1971 /* Sources */ = { + OBJ_2079 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_1972 /* ASTRewriterPass.swift in Sources */, - OBJ_1973 /* ASTRewriterPassApplier.swift in Sources */, - OBJ_1974 /* ASTRewriterPassContext.swift in Sources */, - OBJ_1975 /* ASTSimplifier.swift in Sources */, - OBJ_1976 /* AllocInitExpressionPass.swift in Sources */, - OBJ_1977 /* BaseExpressionPass.swift in Sources */, - OBJ_1978 /* CanonicalNameExpressionPass.swift in Sources */, - OBJ_1979 /* CompoundTypeApplierExpressionPass.swift in Sources */, - OBJ_1980 /* CoreGraphicsExpressionPass.swift in Sources */, - OBJ_1981 /* EnumRewriterExpressionPass.swift in Sources */, - OBJ_1982 /* FoundationExpressionPass.swift in Sources */, - OBJ_1983 /* InitRewriterExpressionPass.swift in Sources */, - OBJ_1984 /* LocalConstantPromotionExpressionPass.swift in Sources */, - OBJ_1985 /* MethodInvocationTransformer.swift in Sources */, - OBJ_1986 /* MethodsToPropertyTransformer.swift in Sources */, - OBJ_1987 /* NilValueTransformationsPass.swift in Sources */, - OBJ_1988 /* NumberCommonsExpressionPass.swift in Sources */, - OBJ_1989 /* PropertyAsMethodAccessCorrectingExpressionPass.swift in Sources */, - OBJ_1990 /* PropertyInvocationTransformer.swift in Sources */, - OBJ_1991 /* StaticConstructorTransformer.swift in Sources */, - OBJ_1992 /* UIKitExpressionPass.swift in Sources */, - OBJ_1993 /* ValueTransformer+PostfixTransformer.swift in Sources */, - OBJ_1994 /* VariableNullabilityPromotionExpressionPass.swift in Sources */, - ); - }; - OBJ_2042 /* Sources */ = { + OBJ_2080 /* ASTRewriterPass.swift in Sources */, + OBJ_2081 /* ASTRewriterPassApplier.swift in Sources */, + OBJ_2082 /* ASTRewriterPassContext.swift in Sources */, + OBJ_2083 /* ASTSimplifier.swift in Sources */, + OBJ_2084 /* AllocInitExpressionPass.swift in Sources */, + OBJ_2085 /* BaseExpressionPass.swift in Sources */, + OBJ_2086 /* CanonicalNameExpressionPass.swift in Sources */, + OBJ_2087 /* CompoundTypeApplierExpressionPass.swift in Sources */, + OBJ_2088 /* CoreGraphicsExpressionPass.swift in Sources */, + OBJ_2089 /* EnumRewriterExpressionPass.swift in Sources */, + OBJ_2090 /* FoundationExpressionPass.swift in Sources */, + OBJ_2091 /* InitRewriterExpressionPass.swift in Sources */, + OBJ_2092 /* LocalConstantPromotionExpressionPass.swift in Sources */, + OBJ_2093 /* MethodInvocationTransformer.swift in Sources */, + OBJ_2094 /* MethodsToPropertyTransformer.swift in Sources */, + OBJ_2095 /* NilValueTransformationsPass.swift in Sources */, + OBJ_2096 /* NumberCommonsExpressionPass.swift in Sources */, + OBJ_2097 /* PropertyAsMethodAccessCorrectingExpressionPass.swift in Sources */, + OBJ_2098 /* PropertyInvocationTransformer.swift in Sources */, + OBJ_2099 /* StaticConstructorTransformer.swift in Sources */, + OBJ_2100 /* UIKitExpressionPass.swift in Sources */, + OBJ_2101 /* ValueTransformer+PostfixTransformer.swift in Sources */, + OBJ_2102 /* VariableNullabilityPromotionExpressionPass.swift in Sources */, + ); + }; + OBJ_2150 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2043 /* ASTRewriterPassApplierTests.swift in Sources */, - OBJ_2044 /* ASTSimplifierTests.swift in Sources */, - OBJ_2045 /* ObjectiveCExpressionPassTestAdapter.swift in Sources */, - OBJ_2046 /* AllocInitExpressionPassTests.swift in Sources */, - OBJ_2047 /* CanonicalNameExpressionPassTests.swift in Sources */, - OBJ_2048 /* CompoundTypeApplierExpressionPassTests.swift in Sources */, - OBJ_2049 /* CoreGraphicsExpressionPassTests.swift in Sources */, - OBJ_2050 /* EnumRewriterExpressionPassTests.swift in Sources */, - OBJ_2051 /* ExpressionPassTestCase.swift in Sources */, - OBJ_2052 /* FoundationExpressionPassTests.swift in Sources */, - OBJ_2053 /* InitRewriterExpressionPassTests.swift in Sources */, - OBJ_2054 /* LocalConstantPromotionExpressionPassTests.swift in Sources */, - OBJ_2055 /* NilValueTransformationsPassTests.swift in Sources */, - OBJ_2056 /* NumberCommonsExpressionPassTests.swift in Sources */, - OBJ_2057 /* PropertyAsMethodAccessCorrectingExpressionPassTests.swift in Sources */, - OBJ_2058 /* UIKitExpressionPassTests.swift in Sources */, - OBJ_2059 /* VariableNullabilityPromotionExpressionPassTests.swift in Sources */, - ); - }; - OBJ_2140 /* Sources */ = { + OBJ_2151 /* ASTRewriterPassApplierTests.swift in Sources */, + OBJ_2152 /* ASTSimplifierTests.swift in Sources */, + OBJ_2153 /* ObjectiveCExpressionPassTestAdapter.swift in Sources */, + OBJ_2154 /* AllocInitExpressionPassTests.swift in Sources */, + OBJ_2155 /* CanonicalNameExpressionPassTests.swift in Sources */, + OBJ_2156 /* CompoundTypeApplierExpressionPassTests.swift in Sources */, + OBJ_2157 /* CoreGraphicsExpressionPassTests.swift in Sources */, + OBJ_2158 /* EnumRewriterExpressionPassTests.swift in Sources */, + OBJ_2159 /* ExpressionPassTestCase.swift in Sources */, + OBJ_2160 /* FoundationExpressionPassTests.swift in Sources */, + OBJ_2161 /* InitRewriterExpressionPassTests.swift in Sources */, + OBJ_2162 /* LocalConstantPromotionExpressionPassTests.swift in Sources */, + OBJ_2163 /* NilValueTransformationsPassTests.swift in Sources */, + OBJ_2164 /* NumberCommonsExpressionPassTests.swift in Sources */, + OBJ_2165 /* PropertyAsMethodAccessCorrectingExpressionPassTests.swift in Sources */, + OBJ_2166 /* UIKitExpressionPassTests.swift in Sources */, + OBJ_2167 /* VariableNullabilityPromotionExpressionPassTests.swift in Sources */, + ); + }; + OBJ_2254 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2141 /* BaseGlobalsProvider.swift in Sources */, - OBJ_2142 /* CLibGlobalsProviders.swift in Sources */, - OBJ_2143 /* CompoundedMappingTypesGlobalsProvider.swift in Sources */, - OBJ_2144 /* DefaultGlobalsProvidersSource.swift in Sources */, - OBJ_2145 /* OpenGLESGlobalsProvider.swift in Sources */, - OBJ_2146 /* UIKitGlobalsProvider.swift in Sources */, + OBJ_2255 /* BaseGlobalsProvider.swift in Sources */, + OBJ_2256 /* CLibGlobalsProviders.swift in Sources */, + OBJ_2257 /* CompoundedMappingTypesGlobalsProvider.swift in Sources */, + OBJ_2258 /* DefaultGlobalsProvidersSource.swift in Sources */, + OBJ_2259 /* OpenGLESGlobalsProvider.swift in Sources */, + OBJ_2260 /* UIKitGlobalsProvider.swift in Sources */, ); }; - OBJ_2190 /* Sources */ = { + OBJ_2304 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2191 /* BaseGlobalsProviderTestCase.swift in Sources */, - OBJ_2192 /* CLibGlobalsProvidersTests.swift in Sources */, - OBJ_2193 /* DefaultGlobalsProvidersSourceTests.swift in Sources */, - OBJ_2194 /* OpenGLESGlobalsProviderTests.swift in Sources */, - OBJ_2195 /* UIKitGlobalsProviderTests.swift in Sources */, + OBJ_2305 /* BaseGlobalsProviderTestCase.swift in Sources */, + OBJ_2306 /* CLibGlobalsProvidersTests.swift in Sources */, + OBJ_2307 /* DefaultGlobalsProvidersSourceTests.swift in Sources */, + OBJ_2308 /* OpenGLESGlobalsProviderTests.swift in Sources */, + OBJ_2309 /* UIKitGlobalsProviderTests.swift in Sources */, ); }; - OBJ_2276 /* Sources */ = { + OBJ_2396 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2277 /* ASTNode.swift in Sources */, - OBJ_2278 /* ASTVisitor.swift in Sources */, - OBJ_2279 /* CommentQuerier.swift in Sources */, - OBJ_2280 /* RawCodeComment.swift in Sources */, + OBJ_2397 /* ASTNode.swift in Sources */, + OBJ_2398 /* ASTVisitor.swift in Sources */, + OBJ_2399 /* CommentQuerier.swift in Sources */, + OBJ_2400 /* RawCodeComment.swift in Sources */, ); }; - OBJ_2292 /* Sources */ = { + OBJ_2412 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2293 /* GrammarModelBaseTests.swift in Sources */, + OBJ_2413 /* GrammarModelBaseTests.swift in Sources */, ); }; - OBJ_2306 /* Sources */ = { + OBJ_2426 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2307 /* GraphViz+Attribute.swift in Sources */, - OBJ_2308 /* GraphViz+GraphAttributes.swift in Sources */, - OBJ_2309 /* GraphViz.swift in Sources */, + OBJ_2427 /* GraphViz+Attribute.swift in Sources */, + OBJ_2428 /* GraphViz+GraphAttributes.swift in Sources */, + OBJ_2429 /* GraphViz.swift in Sources */, ); }; - OBJ_2315 /* Sources */ = { + OBJ_2435 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2316 /* GraphViz+GraphAttributesTests.swift in Sources */, - OBJ_2317 /* GraphVizTests.swift in Sources */, + OBJ_2436 /* GraphViz+GraphAttributesTests.swift in Sources */, + OBJ_2437 /* GraphVizTests.swift in Sources */, ); }; - OBJ_2398 /* Sources */ = { + OBJ_2524 /* Sources */ = { + isa = PBXSourcesBuildPhase; + files = ( + OBJ_2525 /* AnonymousIntentionVisitor.swift in Sources */, + OBJ_2526 /* DetectNoReturnsIntentionPass.swift in Sources */, + OBJ_2527 /* DetectNonnullReturnsIntentionPass.swift in Sources */, + OBJ_2528 /* DetectTypePropertiesBySelfAssignmentIntentionPass.swift in Sources */, + OBJ_2529 /* FileTypeMergingIntentionPass.swift in Sources */, + OBJ_2530 /* FunctionIntentionVisitor.swift in Sources */, + OBJ_2531 /* ImportDirectiveIntentionPass.swift in Sources */, + OBJ_2532 /* InitAnalysisIntentionPass.swift in Sources */, + OBJ_2533 /* IntentionPass.swift in Sources */, + OBJ_2534 /* IntentionPassSource.swift in Sources */, + OBJ_2535 /* PromoteProtocolPropertyConformanceIntentionPass.swift in Sources */, + OBJ_2536 /* ProtocolNullabilityPropagationToConformersIntentionPass.swift in Sources */, + OBJ_2537 /* RemoveEmptyExtensionsIntentionPass.swift in Sources */, + OBJ_2538 /* ReturnStatementVisitor.swift in Sources */, + OBJ_2539 /* ArrayIntentionPassSource.swift in Sources */, + OBJ_2540 /* StoredPropertyToNominalTypesIntentionPass.swift in Sources */, + OBJ_2541 /* SubscriptDeclarationIntentionPass.swift in Sources */, + OBJ_2542 /* SwiftifyMethodSignaturesIntentionPass.swift in Sources */, + OBJ_2543 /* TypeMerger.swift in Sources */, + OBJ_2544 /* TypeVisitingIntentionPass.swift in Sources */, + OBJ_2545 /* UIKitCorrectorIntentionPass.swift in Sources */, + ); + }; + OBJ_2593 /* Sources */ = { + isa = PBXSourcesBuildPhase; + files = ( + OBJ_2594 /* DetectNoReturnsIntentionPassTests.swift in Sources */, + OBJ_2595 /* DetectNonnullReturnsIntentionPassTests.swift in Sources */, + OBJ_2596 /* DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift in Sources */, + OBJ_2597 /* FileTypeMergingIntentionPassTests.swift in Sources */, + OBJ_2598 /* ImportDirectiveIntentionPassTests.swift in Sources */, + OBJ_2599 /* InitAnalysisIntentionPassTests.swift in Sources */, + OBJ_2600 /* PromoteProtocolPropertyConformanceIntentionPassTests.swift in Sources */, + OBJ_2601 /* ProtocolNullabilityPropagationToConformersIntentionPassTests.swift in Sources */, + OBJ_2602 /* RemoveEmptyExtensionsIntentionPassTests.swift in Sources */, + OBJ_2603 /* StoredPropertyToNominalTypesIntentionPassTests.swift in Sources */, + OBJ_2604 /* SubscriptDeclarationIntentionPassTests.swift in Sources */, + OBJ_2605 /* SwiftifyMethodSignaturesIntentionPassTests.swift in Sources */, + OBJ_2606 /* TestUtils.swift in Sources */, + OBJ_2607 /* UIKitCorrectorIntentionPassTests.swift in Sources */, + ); + }; + OBJ_2694 /* Sources */ = { + isa = PBXSourcesBuildPhase; + files = ( + OBJ_2695 /* BaseClassIntention.swift in Sources */, + OBJ_2696 /* FileLevelIntention.swift in Sources */, + OBJ_2697 /* FromSourceIntention.swift in Sources */, + OBJ_2698 /* FunctionBodyCarryingIntention.swift in Sources */, + OBJ_2699 /* FunctionBodyQueue.swift in Sources */, + OBJ_2700 /* FunctionIntention.swift in Sources */, + OBJ_2701 /* Historic.swift in Sources */, + OBJ_2702 /* IntentionHistory.swift in Sources */, + OBJ_2703 /* IntentionHistoryEntry.swift in Sources */, + OBJ_2704 /* IntentionHistoryEntryEcho.swift in Sources */, + OBJ_2705 /* IntentionHistoryTracker.swift in Sources */, + OBJ_2706 /* InstanceVariableContainerIntention.swift in Sources */, + OBJ_2707 /* Intention.swift in Sources */, + OBJ_2708 /* IntentionCollection.swift in Sources */, + OBJ_2709 /* ClassExtensionGenerationIntention.swift in Sources */, + OBJ_2710 /* ClassGenerationIntention.swift in Sources */, + OBJ_2711 /* DeinitGenerationIntention.swift in Sources */, + OBJ_2712 /* EnumCaseGenerationIntention.swift in Sources */, + OBJ_2713 /* EnumGenerationIntention.swift in Sources */, + OBJ_2714 /* FileGenerationIntention.swift in Sources */, + OBJ_2715 /* FunctionBodyIntention.swift in Sources */, + OBJ_2716 /* GlobalFunctionGenerationIntention.swift in Sources */, + OBJ_2717 /* GlobalVariableGenerationIntention.swift in Sources */, + OBJ_2718 /* GlobalVariableInitialValueIntention.swift in Sources */, + OBJ_2719 /* InitGenerationIntention.swift in Sources */, + OBJ_2720 /* InstanceVariableGenerationIntention.swift in Sources */, + OBJ_2721 /* MethodGenerationIntention.swift in Sources */, + OBJ_2722 /* PropertyGenerationIntention.swift in Sources */, + OBJ_2723 /* PropertyInitialValueGenerationIntention.swift in Sources */, + OBJ_2724 /* PropertySynthesizationIntention.swift in Sources */, + OBJ_2725 /* ProtocolGenerationIntention.swift in Sources */, + OBJ_2726 /* ProtocolInheritanceIntention.swift in Sources */, + OBJ_2727 /* ProtocolMethodGenerationIntention.swift in Sources */, + OBJ_2728 /* ProtocolPropertyGenerationIntention.swift in Sources */, + OBJ_2729 /* StructGenerationIntention.swift in Sources */, + OBJ_2730 /* SubscriptGenerationIntention.swift in Sources */, + OBJ_2731 /* TypealiasIntention.swift in Sources */, + OBJ_2732 /* KnownType+IntentionBuild.swift in Sources */, + OBJ_2733 /* MemberGenerationIntention.swift in Sources */, + OBJ_2734 /* SerializableMetadata.swift in Sources */, + OBJ_2735 /* SerializableMetadataEntry.swift in Sources */, + OBJ_2736 /* SerializableMetadataSerializerType.swift in Sources */, + OBJ_2737 /* NonNullScopedIntention.swift in Sources */, + OBJ_2738 /* OverridableMemberGenerationIntention.swift in Sources */, + OBJ_2739 /* IntentionSerializer.swift in Sources */, + OBJ_2740 /* KeyedDecodingContainerProtocol+Intention.swift in Sources */, + OBJ_2741 /* KeyedEncodingContainerProtocol+Intention.swift in Sources */, + OBJ_2742 /* UnkeyedDecodingContainer+Intention.swift in Sources */, + OBJ_2743 /* UnkeyedEncodingContainer+Intention.swift in Sources */, + OBJ_2744 /* StatementContainer.swift in Sources */, + OBJ_2745 /* TypeFormatter+Intentions.swift in Sources */, + OBJ_2746 /* TypeGenerationIntention.swift in Sources */, + OBJ_2747 /* ValueStorageIntention.swift in Sources */, + OBJ_2748 /* AnonymousIntentionVisitor.swift in Sources */, + OBJ_2749 /* IntentionVisitor.swift in Sources */, + ); + }; + OBJ_2775 /* Sources */ = { + isa = PBXSourcesBuildPhase; + files = ( + OBJ_2776 /* FromSourceIntentionTests.swift in Sources */, + OBJ_2777 /* FunctionBodyQueueTests.swift in Sources */, + OBJ_2778 /* Intention+FileTests.swift in Sources */, + OBJ_2779 /* ClassExtensionGenerationIntentionTests.swift in Sources */, + OBJ_2780 /* ClassGenerationIntentionTests.swift in Sources */, + OBJ_2781 /* DeinitGenerationIntentionTests.swift in Sources */, + OBJ_2782 /* EnumCaseGenerationIntentionTests.swift in Sources */, + OBJ_2783 /* EnumGenerationIntentionTests.swift in Sources */, + OBJ_2784 /* FileGenerationIntentionTests.swift in Sources */, + OBJ_2785 /* FunctionBodyIntentionTests.swift in Sources */, + OBJ_2786 /* GlobalFunctionGenerationIntentionTests.swift in Sources */, + OBJ_2787 /* GlobalVariableGenerationIntentionTests.swift in Sources */, + OBJ_2788 /* GlobalVariableInitialValueIntentionTests.swift in Sources */, + OBJ_2789 /* InitGenerationIntentionTests.swift in Sources */, + OBJ_2790 /* InstanceVariableGenerationIntentionTests.swift in Sources */, + OBJ_2791 /* MethodGenerationIntentionTests.swift in Sources */, + OBJ_2792 /* PropertyGenerationIntentionTests.swift in Sources */, + OBJ_2793 /* PropertyInitialValueGenerationIntentionTests.swift in Sources */, + OBJ_2794 /* PropertySynthesizationIntentionTests.swift in Sources */, + OBJ_2795 /* ProtocolGenerationIntentionTests.swift in Sources */, + OBJ_2796 /* ProtocolInheritanceIntentionTests.swift in Sources */, + OBJ_2797 /* ProtocolMethodGenerationIntentionTests.swift in Sources */, + OBJ_2798 /* ProtocolPropertyGenerationIntentionTests.swift in Sources */, + OBJ_2799 /* StructGenerationIntentionTests.swift in Sources */, + OBJ_2800 /* SubscriptGenerationIntentionTests.swift in Sources */, + OBJ_2801 /* TypealiasIntentionTests.swift in Sources */, + OBJ_2802 /* IntentionSerializerTests.swift in Sources */, + OBJ_2803 /* TestIntentionVisitor.swift in Sources */, + ); + }; + OBJ_2891 /* Sources */ = { + isa = PBXSourcesBuildPhase; + files = ( + OBJ_2892 /* JavaScriptASTCorrectorExpressionPass.swift in Sources */, + OBJ_2893 /* Intention+TypedSource.swift in Sources */, + OBJ_2894 /* JavaScriptPropertyMergeIntentionPass.swift in Sources */, + OBJ_2895 /* JavaScript2SwiftRewriter.swift in Sources */, + OBJ_2896 /* JavaScript2SwiftRewriterJob.swift in Sources */, + OBJ_2897 /* JavaScript2SwiftRewriterJobBuilder.swift in Sources */, + OBJ_2898 /* JavaScriptASTReader.swift in Sources */, + OBJ_2899 /* JavaScriptASTReaderContext.swift in Sources */, + OBJ_2900 /* JavaScriptExprASTReader.swift in Sources */, + OBJ_2901 /* JavaScriptFileCollectionStep.swift in Sources */, + OBJ_2902 /* JavaScriptFileCollectionStepDelegate.swift in Sources */, + OBJ_2903 /* JavaScriptFrontend.swift in Sources */, + OBJ_2904 /* JavaScriptImportDirectiveFileCollectionDelegate.swift in Sources */, + OBJ_2905 /* JavaScriptIntentionCollector.swift in Sources */, + OBJ_2906 /* JavaScriptMethodSignatureConverter.swift in Sources */, + OBJ_2907 /* JavaScriptObjectGenerator.swift in Sources */, + OBJ_2908 /* JavaScriptParserCache.swift in Sources */, + OBJ_2909 /* JavaScriptStatementASTReader.swift in Sources */, + OBJ_2910 /* JavaScriptSwiftRewriterService.swift in Sources */, + OBJ_2911 /* JsParserStatePool.swift in Sources */, + ); + }; + OBJ_2995 /* Sources */ = { + isa = PBXSourcesBuildPhase; + files = ( + OBJ_2996 /* JavaScriptASTCorrectorExpressionPassTests.swift in Sources */, + OBJ_2997 /* MultiFileTestBuilder.swift in Sources */, + OBJ_2998 /* SingleFileTestUtils.swift in Sources */, + OBJ_2999 /* JavaScriptPropertyMergeIntentionPassTests.swift in Sources */, + OBJ_3000 /* JavaScript2SwiftRewriter+MultiFilesTests.swift in Sources */, + OBJ_3001 /* JavaScript2SwiftRewriterJobBuilderTests.swift in Sources */, + OBJ_3002 /* JavaScript2SwiftRewriterJobTests.swift in Sources */, + OBJ_3003 /* JavaScript2SwiftRewriterTests.swift in Sources */, + OBJ_3004 /* JavaScriptExprASTReaderTests.swift in Sources */, + OBJ_3005 /* JavaScriptFileCollectionStepTests.swift in Sources */, + OBJ_3006 /* JavaScriptImportDirectiveFileCollectionDelegateTests.swift in Sources */, + OBJ_3007 /* JavaScriptIntentionCollectorTests.swift in Sources */, + OBJ_3008 /* JavaScriptObjectGeneratorTests.swift in Sources */, + OBJ_3009 /* JavaScriptStatementASTReaderTests.swift in Sources */, + OBJ_3010 /* TestUtils.swift in Sources */, + ); + }; + OBJ_3099 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2399 /* AnonymousIntentionVisitor.swift in Sources */, - OBJ_2400 /* DetectNoReturnsIntentionPass.swift in Sources */, - OBJ_2401 /* DetectNonnullReturnsIntentionPass.swift in Sources */, - OBJ_2402 /* DetectTypePropertiesBySelfAssignmentIntentionPass.swift in Sources */, - OBJ_2403 /* FileTypeMergingIntentionPass.swift in Sources */, - OBJ_2404 /* FunctionIntentionVisitor.swift in Sources */, - OBJ_2405 /* ImportDirectiveIntentionPass.swift in Sources */, - OBJ_2406 /* InitAnalysisIntentionPass.swift in Sources */, - OBJ_2407 /* IntentionPass.swift in Sources */, - OBJ_2408 /* IntentionPassSource.swift in Sources */, - OBJ_2409 /* PromoteProtocolPropertyConformanceIntentionPass.swift in Sources */, - OBJ_2410 /* ProtocolNullabilityPropagationToConformersIntentionPass.swift in Sources */, - OBJ_2411 /* RemoveEmptyExtensionsIntentionPass.swift in Sources */, - OBJ_2412 /* ReturnStatementVisitor.swift in Sources */, - OBJ_2413 /* ArrayIntentionPassSource.swift in Sources */, - OBJ_2414 /* StoredPropertyToNominalTypesIntentionPass.swift in Sources */, - OBJ_2415 /* SubscriptDeclarationIntentionPass.swift in Sources */, - OBJ_2416 /* SwiftifyMethodSignaturesIntentionPass.swift in Sources */, - OBJ_2417 /* TypeMerger.swift in Sources */, - OBJ_2418 /* TypeVisitingIntentionPass.swift in Sources */, - OBJ_2419 /* UIKitCorrectorIntentionPass.swift in Sources */, - ); - }; - OBJ_2467 /* Sources */ = { + OBJ_3100 /* JsASTNode.swift in Sources */, + OBJ_3101 /* JsAnonymousFunction.swift in Sources */, + OBJ_3102 /* JsClassNode.swift in Sources */, + OBJ_3103 /* JsClassPropertyNode.swift in Sources */, + OBJ_3104 /* JsConstructorDefinitionNode.swift in Sources */, + OBJ_3105 /* JsExpressionNode.swift in Sources */, + OBJ_3106 /* JsFunctionBodyNode.swift in Sources */, + OBJ_3107 /* JsFunctionDeclarationNode.swift in Sources */, + OBJ_3108 /* JsFunctionNodeType.swift in Sources */, + OBJ_3109 /* JsFunctionSignature.swift in Sources */, + OBJ_3110 /* JsGlobalContextNode.swift in Sources */, + OBJ_3111 /* JsIdentifierNode.swift in Sources */, + OBJ_3112 /* JsInitializableNode.swift in Sources */, + OBJ_3113 /* JsMethodDefinitionNode.swift in Sources */, + OBJ_3114 /* JsVariableDeclarationListNode.swift in Sources */, + OBJ_3115 /* JsVariableDeclarationNode.swift in Sources */, + ); + }; + OBJ_3132 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2468 /* DetectNoReturnsIntentionPassTests.swift in Sources */, - OBJ_2469 /* DetectNonnullReturnsIntentionPassTests.swift in Sources */, - OBJ_2470 /* DetectTypePropertiesBySelfAssignmentIntentionPassTests.swift in Sources */, - OBJ_2471 /* FileTypeMergingIntentionPassTests.swift in Sources */, - OBJ_2472 /* ImportDirectiveIntentionPassTests.swift in Sources */, - OBJ_2473 /* InitAnalysisIntentionPassTests.swift in Sources */, - OBJ_2474 /* PromoteProtocolPropertyConformanceIntentionPassTests.swift in Sources */, - OBJ_2475 /* ProtocolNullabilityPropagationToConformersIntentionPassTests.swift in Sources */, - OBJ_2476 /* RemoveEmptyExtensionsIntentionPassTests.swift in Sources */, - OBJ_2477 /* StoredPropertyToNominalTypesIntentionPassTests.swift in Sources */, - OBJ_2478 /* SubscriptDeclarationIntentionPassTests.swift in Sources */, - OBJ_2479 /* SwiftifyMethodSignaturesIntentionPassTests.swift in Sources */, - OBJ_2480 /* TestUtils.swift in Sources */, - OBJ_2481 /* UIKitCorrectorIntentionPassTests.swift in Sources */, - ); - }; - OBJ_2562 /* Sources */ = { + OBJ_3133 /* JsASTNodeFactory.swift in Sources */, + OBJ_3134 /* JsImportDecl.swift in Sources */, + OBJ_3135 /* JsImportDeclListener.swift in Sources */, + OBJ_3136 /* JsNodeCreationContext.swift in Sources */, + OBJ_3137 /* JsParser.swift in Sources */, + OBJ_3138 /* JsParserListener.swift in Sources */, + OBJ_3139 /* JsParserState.swift in Sources */, + ); + }; + OBJ_3162 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2563 /* BaseClassIntention.swift in Sources */, - OBJ_2564 /* FileLevelIntention.swift in Sources */, - OBJ_2565 /* FromSourceIntention.swift in Sources */, - OBJ_2566 /* FunctionBodyCarryingIntention.swift in Sources */, - OBJ_2567 /* FunctionBodyQueue.swift in Sources */, - OBJ_2568 /* FunctionIntention.swift in Sources */, - OBJ_2569 /* Historic.swift in Sources */, - OBJ_2570 /* IntentionHistory.swift in Sources */, - OBJ_2571 /* IntentionHistoryEntry.swift in Sources */, - OBJ_2572 /* IntentionHistoryEntryEcho.swift in Sources */, - OBJ_2573 /* IntentionHistoryTracker.swift in Sources */, - OBJ_2574 /* InstanceVariableContainerIntention.swift in Sources */, - OBJ_2575 /* Intention.swift in Sources */, - OBJ_2576 /* IntentionCollection.swift in Sources */, - OBJ_2577 /* ClassExtensionGenerationIntention.swift in Sources */, - OBJ_2578 /* ClassGenerationIntention.swift in Sources */, - OBJ_2579 /* DeinitGenerationIntention.swift in Sources */, - OBJ_2580 /* EnumCaseGenerationIntention.swift in Sources */, - OBJ_2581 /* EnumGenerationIntention.swift in Sources */, - OBJ_2582 /* FileGenerationIntention.swift in Sources */, - OBJ_2583 /* FunctionBodyIntention.swift in Sources */, - OBJ_2584 /* GlobalFunctionGenerationIntention.swift in Sources */, - OBJ_2585 /* GlobalVariableGenerationIntention.swift in Sources */, - OBJ_2586 /* GlobalVariableInitialValueIntention.swift in Sources */, - OBJ_2587 /* InitGenerationIntention.swift in Sources */, - OBJ_2588 /* InstanceVariableGenerationIntention.swift in Sources */, - OBJ_2589 /* MethodGenerationIntention.swift in Sources */, - OBJ_2590 /* PropertyGenerationIntention.swift in Sources */, - OBJ_2591 /* PropertyInitialValueGenerationIntention.swift in Sources */, - OBJ_2592 /* PropertySynthesizationIntention.swift in Sources */, - OBJ_2593 /* ProtocolGenerationIntention.swift in Sources */, - OBJ_2594 /* ProtocolInheritanceIntention.swift in Sources */, - OBJ_2595 /* ProtocolMethodGenerationIntention.swift in Sources */, - OBJ_2596 /* ProtocolPropertyGenerationIntention.swift in Sources */, - OBJ_2597 /* StructGenerationIntention.swift in Sources */, - OBJ_2598 /* SubscriptGenerationIntention.swift in Sources */, - OBJ_2599 /* TypealiasIntention.swift in Sources */, - OBJ_2600 /* KnownType+IntentionBuild.swift in Sources */, - OBJ_2601 /* MemberGenerationIntention.swift in Sources */, - OBJ_2602 /* SerializableMetadata.swift in Sources */, - OBJ_2603 /* SerializableMetadataEntry.swift in Sources */, - OBJ_2604 /* SerializableMetadataSerializerType.swift in Sources */, - OBJ_2605 /* NonNullScopedIntention.swift in Sources */, - OBJ_2606 /* OverridableMemberGenerationIntention.swift in Sources */, - OBJ_2607 /* IntentionSerializer.swift in Sources */, - OBJ_2608 /* KeyedDecodingContainerProtocol+Intention.swift in Sources */, - OBJ_2609 /* KeyedEncodingContainerProtocol+Intention.swift in Sources */, - OBJ_2610 /* UnkeyedDecodingContainer+Intention.swift in Sources */, - OBJ_2611 /* UnkeyedEncodingContainer+Intention.swift in Sources */, - OBJ_2612 /* StatementContainer.swift in Sources */, - OBJ_2613 /* TypeFormatter+Intentions.swift in Sources */, - OBJ_2614 /* TypeGenerationIntention.swift in Sources */, - OBJ_2615 /* ValueStorageIntention.swift in Sources */, - OBJ_2616 /* AnonymousIntentionVisitor.swift in Sources */, - OBJ_2617 /* IntentionVisitor.swift in Sources */, - ); - }; - OBJ_2643 /* Sources */ = { + OBJ_3163 /* JavaScriptLexer.swift in Sources */, + OBJ_3164 /* JavaScriptLexerBase.swift in Sources */, + OBJ_3165 /* JavaScriptParser.swift in Sources */, + OBJ_3166 /* JavaScriptParserBase.swift in Sources */, + OBJ_3167 /* JavaScriptParserBaseListener.swift in Sources */, + OBJ_3168 /* JavaScriptParserBaseVisitor.swift in Sources */, + OBJ_3169 /* JavaScriptParserListener.swift in Sources */, + OBJ_3170 /* JavaScriptParserVisitor.swift in Sources */, + OBJ_3171 /* shim.swift in Sources */, + ); + }; + OBJ_3185 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2644 /* FromSourceIntentionTests.swift in Sources */, - OBJ_2645 /* FunctionBodyQueueTests.swift in Sources */, - OBJ_2646 /* Intention+FileTests.swift in Sources */, - OBJ_2647 /* ClassExtensionGenerationIntentionTests.swift in Sources */, - OBJ_2648 /* ClassGenerationIntentionTests.swift in Sources */, - OBJ_2649 /* DeinitGenerationIntentionTests.swift in Sources */, - OBJ_2650 /* EnumCaseGenerationIntentionTests.swift in Sources */, - OBJ_2651 /* EnumGenerationIntentionTests.swift in Sources */, - OBJ_2652 /* FileGenerationIntentionTests.swift in Sources */, - OBJ_2653 /* FunctionBodyIntentionTests.swift in Sources */, - OBJ_2654 /* GlobalFunctionGenerationIntentionTests.swift in Sources */, - OBJ_2655 /* GlobalVariableGenerationIntentionTests.swift in Sources */, - OBJ_2656 /* GlobalVariableInitialValueIntentionTests.swift in Sources */, - OBJ_2657 /* InitGenerationIntentionTests.swift in Sources */, - OBJ_2658 /* InstanceVariableGenerationIntentionTests.swift in Sources */, - OBJ_2659 /* MethodGenerationIntentionTests.swift in Sources */, - OBJ_2660 /* PropertyGenerationIntentionTests.swift in Sources */, - OBJ_2661 /* PropertyInitialValueGenerationIntentionTests.swift in Sources */, - OBJ_2662 /* PropertySynthesizationIntentionTests.swift in Sources */, - OBJ_2663 /* ProtocolGenerationIntentionTests.swift in Sources */, - OBJ_2664 /* ProtocolInheritanceIntentionTests.swift in Sources */, - OBJ_2665 /* ProtocolMethodGenerationIntentionTests.swift in Sources */, - OBJ_2666 /* ProtocolPropertyGenerationIntentionTests.swift in Sources */, - OBJ_2667 /* StructGenerationIntentionTests.swift in Sources */, - OBJ_2668 /* SubscriptGenerationIntentionTests.swift in Sources */, - OBJ_2669 /* TypealiasIntentionTests.swift in Sources */, - OBJ_2670 /* IntentionSerializerTests.swift in Sources */, - OBJ_2671 /* TestIntentionVisitor.swift in Sources */, - ); - }; - OBJ_2752 /* Sources */ = { + OBJ_3186 /* JsParserListenerTests.swift in Sources */, + OBJ_3187 /* JsParserTests.swift in Sources */, + OBJ_3188 /* Resources.swift in Sources */, + ); + }; + OBJ_3275 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2753 /* AttributeTaggableObject.swift in Sources */, - OBJ_2754 /* KnownAttribute.swift in Sources */, - OBJ_2755 /* KnownDeclaration.swift in Sources */, - OBJ_2756 /* KnownFile+Equality.swift in Sources */, - OBJ_2757 /* KnownFile.swift in Sources */, - OBJ_2758 /* KnownFileBuilder.swift in Sources */, - OBJ_2759 /* KnownType+Equality.swift in Sources */, - OBJ_2760 /* KnownType.swift in Sources */, - OBJ_2761 /* KnownTypeBuilder.swift in Sources */, - OBJ_2762 /* KnownTypeSerializer.swift in Sources */, - OBJ_2763 /* Semantic.swift in Sources */, - OBJ_2764 /* SemanticalObject.swift in Sources */, - OBJ_2765 /* Semantics.swift in Sources */, - OBJ_2766 /* TypeFormatter+Ext.swift in Sources */, - ); - }; - OBJ_2784 /* Sources */ = { + OBJ_3276 /* AttributeTaggableObject.swift in Sources */, + OBJ_3277 /* KnownAttribute.swift in Sources */, + OBJ_3278 /* KnownDeclaration.swift in Sources */, + OBJ_3279 /* KnownFile+Equality.swift in Sources */, + OBJ_3280 /* KnownFile.swift in Sources */, + OBJ_3281 /* KnownFileBuilder.swift in Sources */, + OBJ_3282 /* KnownType+Equality.swift in Sources */, + OBJ_3283 /* KnownType.swift in Sources */, + OBJ_3284 /* KnownTypeBuilder.swift in Sources */, + OBJ_3285 /* KnownTypeSerializer.swift in Sources */, + OBJ_3286 /* Semantic.swift in Sources */, + OBJ_3287 /* SemanticalObject.swift in Sources */, + OBJ_3288 /* Semantics.swift in Sources */, + OBJ_3289 /* TypeFormatter+Ext.swift in Sources */, + ); + }; + OBJ_3307 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2785 /* KnownFileBuilderTests.swift in Sources */, - OBJ_2786 /* KnownTypeSerializerTests.swift in Sources */, - OBJ_2787 /* TypeFormatter+ExtTests.swift in Sources */, + OBJ_3308 /* KnownFileBuilderTests.swift in Sources */, + OBJ_3309 /* KnownTypeSerializerTests.swift in Sources */, + OBJ_3310 /* TypeFormatter+ExtTests.swift in Sources */, ); }; - OBJ_2868 /* Sources */ = { + OBJ_3397 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2869 /* GrammarRules+Operators.swift in Sources */, - OBJ_2870 /* GrammarRules.swift in Sources */, - OBJ_2871 /* Lexer+Advance.swift in Sources */, - OBJ_2872 /* Lexer+AdvancedParsing.swift in Sources */, - OBJ_2873 /* Lexer+Consume.swift in Sources */, - OBJ_2874 /* Lexer.swift in Sources */, - OBJ_2875 /* TokenProtocol.swift in Sources */, - OBJ_2876 /* TokenizerLexer.swift in Sources */, + OBJ_3398 /* GrammarRules+Operators.swift in Sources */, + OBJ_3399 /* GrammarRules.swift in Sources */, + OBJ_3400 /* Lexer+Advance.swift in Sources */, + OBJ_3401 /* Lexer+AdvancedParsing.swift in Sources */, + OBJ_3402 /* Lexer+Consume.swift in Sources */, + OBJ_3403 /* Lexer.swift in Sources */, + OBJ_3404 /* TokenProtocol.swift in Sources */, + OBJ_3405 /* TokenizerLexer.swift in Sources */, ); }; - OBJ_2882 /* Sources */ = { + OBJ_3411 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2883 /* Package.swift in Sources */, + OBJ_3412 /* Package.swift in Sources */, ); }; - OBJ_2887 /* Sources */ = { + OBJ_3416 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2888 /* ASTNodeSerialization.swift in Sources */, - OBJ_2889 /* ObjcASTNode.swift in Sources */, - OBJ_2890 /* ObjcClass+Method.swift in Sources */, - OBJ_2891 /* ObjcClass+Property.swift in Sources */, - OBJ_2892 /* ObjcClassCategoryInterfaceNode.swift in Sources */, - OBJ_2893 /* ObjcClassImplementationNode.swift in Sources */, - OBJ_2894 /* ObjcClassInterfaceNode.swift in Sources */, - OBJ_2895 /* ObjcEnumDeclarationNode.swift in Sources */, - OBJ_2896 /* ObjcExpressionNode.swift in Sources */, - OBJ_2897 /* ObjcFunctionDefinitionNode.swift in Sources */, - OBJ_2898 /* ObjcGlobalContextNode.swift in Sources */, - OBJ_2899 /* ObjcIdentifierNode.swift in Sources */, - OBJ_2900 /* ObjcInitializableNode.swift in Sources */, - OBJ_2901 /* ObjcKeyword.swift in Sources */, - OBJ_2902 /* ObjcKeywordNode.swift in Sources */, - OBJ_2903 /* ObjcOperator.swift in Sources */, - OBJ_2904 /* ObjcPreprocessorDirective.swift in Sources */, - OBJ_2905 /* ObjcPropertyImplementationNode.swift in Sources */, - OBJ_2906 /* ObjcPropertySynthesizeListNode.swift in Sources */, - OBJ_2907 /* ObjcProtocolDeclarationNode.swift in Sources */, - OBJ_2908 /* ObjcStructDeclarationNode.swift in Sources */, - OBJ_2909 /* ObjcTokenType.swift in Sources */, - OBJ_2910 /* ObjcType.swift in Sources */, - OBJ_2911 /* ObjcTypeNameNode.swift in Sources */, - OBJ_2912 /* ObjcTypedefNode.swift in Sources */, - OBJ_2913 /* ObjcUnknownNode.swift in Sources */, - OBJ_2914 /* ObjcVariableDeclarationNode.swift in Sources */, - ); - }; - OBJ_2932 /* Sources */ = { + OBJ_3417 /* ASTNodeSerialization.swift in Sources */, + OBJ_3418 /* ObjcASTNode.swift in Sources */, + OBJ_3419 /* ObjcClass+Method.swift in Sources */, + OBJ_3420 /* ObjcClass+Property.swift in Sources */, + OBJ_3421 /* ObjcClassCategoryInterfaceNode.swift in Sources */, + OBJ_3422 /* ObjcClassImplementationNode.swift in Sources */, + OBJ_3423 /* ObjcClassInterfaceNode.swift in Sources */, + OBJ_3424 /* ObjcEnumDeclarationNode.swift in Sources */, + OBJ_3425 /* ObjcExpressionNode.swift in Sources */, + OBJ_3426 /* ObjcFunctionDefinitionNode.swift in Sources */, + OBJ_3427 /* ObjcGlobalContextNode.swift in Sources */, + OBJ_3428 /* ObjcIdentifierNode.swift in Sources */, + OBJ_3429 /* ObjcInitializableNode.swift in Sources */, + OBJ_3430 /* ObjcKeyword.swift in Sources */, + OBJ_3431 /* ObjcKeywordNode.swift in Sources */, + OBJ_3432 /* ObjcOperator.swift in Sources */, + OBJ_3433 /* ObjcPreprocessorDirective.swift in Sources */, + OBJ_3434 /* ObjcPropertyImplementationNode.swift in Sources */, + OBJ_3435 /* ObjcPropertySynthesizeListNode.swift in Sources */, + OBJ_3436 /* ObjcProtocolDeclarationNode.swift in Sources */, + OBJ_3437 /* ObjcStructDeclarationNode.swift in Sources */, + OBJ_3438 /* ObjcTokenType.swift in Sources */, + OBJ_3439 /* ObjcType.swift in Sources */, + OBJ_3440 /* ObjcTypeNameNode.swift in Sources */, + OBJ_3441 /* ObjcTypedefNode.swift in Sources */, + OBJ_3442 /* ObjcUnknownNode.swift in Sources */, + OBJ_3443 /* ObjcVariableDeclarationNode.swift in Sources */, + ); + }; + OBJ_3461 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2933 /* ObjcGrammarModelsTests.swift in Sources */, + OBJ_3462 /* ObjcGrammarModelsTests.swift in Sources */, ); }; - OBJ_2952 /* Sources */ = { + OBJ_3481 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_2953 /* ConstantExtractor.swift in Sources */, - OBJ_2954 /* AntlrDeclarationParser.swift in Sources */, - OBJ_2955 /* DeclarationExtractor.swift in Sources */, - OBJ_2956 /* DeclarationSyntaxElementType+ObjcType.swift in Sources */, - OBJ_2957 /* DeclarationSyntaxElementType.swift in Sources */, - OBJ_2958 /* ConstantExpressionSyntax.swift in Sources */, - OBJ_2959 /* ExpressionSyntax.swift in Sources */, - OBJ_2960 /* IdentifierSyntax.swift in Sources */, - OBJ_2961 /* InitializerSyntax.swift in Sources */, - OBJ_2962 /* ParameterDeclarationSyntax.swift in Sources */, - OBJ_2963 /* ParameterListSyntax.swift in Sources */, - OBJ_2964 /* ParameterTypeListSyntax.swift in Sources */, - OBJ_2965 /* PointerSyntax.swift in Sources */, - OBJ_2966 /* ProtocolReferenceListSyntax.swift in Sources */, - OBJ_2967 /* SpecifierQualifierListSyntax.swift in Sources */, - OBJ_2968 /* TypeQualifierListSyntax.swift in Sources */, - OBJ_2969 /* DeclarationSpecifierSyntax.swift in Sources */, - OBJ_2970 /* AlignmentSpecifierSyntax.swift in Sources */, - OBJ_2971 /* ArcBehaviourSpecifierSyntax.swift in Sources */, - OBJ_2972 /* BlockDeclarationSpecifierSyntax.swift in Sources */, - OBJ_2973 /* FunctionSpecifierSyntax.swift in Sources */, - OBJ_2974 /* IBOutletQualifierSyntax.swift in Sources */, - OBJ_2975 /* NullabilitySpecifierSyntax.swift in Sources */, - OBJ_2976 /* ProtocolQualifierSyntax.swift in Sources */, - OBJ_2977 /* StorageClassSpecifierSyntax.swift in Sources */, - OBJ_2978 /* TypePrefixSyntax.swift in Sources */, - OBJ_2979 /* TypeQualifierSyntax.swift in Sources */, - OBJ_2980 /* TypeSpecifierSyntax.swift in Sources */, - OBJ_2981 /* EnumSpecifierSyntax.swift in Sources */, - OBJ_2982 /* GenericTypeSpecifierSyntax.swift in Sources */, - OBJ_2983 /* ScalarTypeSpecifierSyntax.swift in Sources */, - OBJ_2984 /* StructOrUnionSpecifierSyntax.swift in Sources */, - OBJ_2985 /* TypeIdentifierSyntax.swift in Sources */, - OBJ_2986 /* DeclarationSpecifiersSyntax.swift in Sources */, - OBJ_2987 /* DeclarationSyntax.swift in Sources */, - OBJ_2988 /* DeclaratorSyntax.swift in Sources */, - OBJ_2989 /* DirectDeclaratorSyntax.swift in Sources */, - OBJ_2990 /* ArrayDeclaratorSyntax.swift in Sources */, - OBJ_2991 /* BlockDeclaratorSyntax.swift in Sources */, - OBJ_2992 /* FunctionDeclaratorSyntax.swift in Sources */, - OBJ_2993 /* FieldDeclaratorSyntax.swift in Sources */, - OBJ_2994 /* FieldDeclarationSyntax.swift in Sources */, - OBJ_2995 /* InitDeclarationListSyntax.swift in Sources */, - OBJ_2996 /* InitDeclarationSyntax.swift in Sources */, - OBJ_2997 /* AbstractDeclaratorSyntax.swift in Sources */, - OBJ_2998 /* DirectAbstractDeclaratorSyntax.swift in Sources */, - OBJ_2999 /* ArrayAbstractDeclaratorSyntax.swift in Sources */, - OBJ_3000 /* BlockAbstractDeclaratorSyntax.swift in Sources */, - OBJ_3001 /* FunctionAbstractDeclaratorSyntax.swift in Sources */, - OBJ_3002 /* TypeNameSyntax.swift in Sources */, - OBJ_3003 /* TypeVariableDeclaratorSyntax.swift in Sources */, - OBJ_3004 /* DeclarationTranslator.swift in Sources */, - OBJ_3005 /* DefinitionCollector.swift in Sources */, - OBJ_3006 /* Lexer+ObjcLexing.swift in Sources */, - OBJ_3007 /* NodeContext.swift in Sources */, - OBJ_3008 /* NonnullContextQuerier.swift in Sources */, - OBJ_3009 /* ObjcASTNodeFactory+DeclarationSyntax.swift in Sources */, - OBJ_3010 /* ObjcASTNodeFactory.swift in Sources */, - OBJ_3011 /* ObjcImportDecl.swift in Sources */, - OBJ_3012 /* ObjcParser.swift in Sources */, - OBJ_3013 /* ObjcParserListener.swift in Sources */, - OBJ_3014 /* ObjcParserState.swift in Sources */, - OBJ_3015 /* ObjcPreprocessorListener.swift in Sources */, - OBJ_3016 /* ObjcTokenType+TokenProtocol.swift in Sources */, - OBJ_3017 /* ObjcTypeParser.swift in Sources */, - OBJ_3018 /* ObjectiveCParser+ParserRuleContext.swift in Sources */, - OBJ_3019 /* ObjectiveCParser+RuleExt.swift in Sources */, - OBJ_3020 /* ObjectiveCPreprocessor.swift in Sources */, - OBJ_3021 /* Source+Ext.swift in Sources */, - OBJ_3022 /* VarDeclarationIdentifierNameExtractor.swift in Sources */, - ); - }; - OBJ_3045 /* Sources */ = { + OBJ_3482 /* ConstantExtractor.swift in Sources */, + OBJ_3483 /* AntlrDeclarationParser.swift in Sources */, + OBJ_3484 /* DeclarationExtractor.swift in Sources */, + OBJ_3485 /* DeclarationSyntaxElementType+ObjcType.swift in Sources */, + OBJ_3486 /* DeclarationSyntaxElementType.swift in Sources */, + OBJ_3487 /* ConstantExpressionSyntax.swift in Sources */, + OBJ_3488 /* ExpressionSyntax.swift in Sources */, + OBJ_3489 /* IdentifierSyntax.swift in Sources */, + OBJ_3490 /* InitializerSyntax.swift in Sources */, + OBJ_3491 /* ParameterDeclarationSyntax.swift in Sources */, + OBJ_3492 /* ParameterListSyntax.swift in Sources */, + OBJ_3493 /* ParameterTypeListSyntax.swift in Sources */, + OBJ_3494 /* PointerSyntax.swift in Sources */, + OBJ_3495 /* ProtocolReferenceListSyntax.swift in Sources */, + OBJ_3496 /* SpecifierQualifierListSyntax.swift in Sources */, + OBJ_3497 /* TypeQualifierListSyntax.swift in Sources */, + OBJ_3498 /* DeclarationSpecifierSyntax.swift in Sources */, + OBJ_3499 /* AlignmentSpecifierSyntax.swift in Sources */, + OBJ_3500 /* ArcBehaviourSpecifierSyntax.swift in Sources */, + OBJ_3501 /* BlockDeclarationSpecifierSyntax.swift in Sources */, + OBJ_3502 /* FunctionSpecifierSyntax.swift in Sources */, + OBJ_3503 /* IBOutletQualifierSyntax.swift in Sources */, + OBJ_3504 /* NullabilitySpecifierSyntax.swift in Sources */, + OBJ_3505 /* ProtocolQualifierSyntax.swift in Sources */, + OBJ_3506 /* StorageClassSpecifierSyntax.swift in Sources */, + OBJ_3507 /* TypePrefixSyntax.swift in Sources */, + OBJ_3508 /* TypeQualifierSyntax.swift in Sources */, + OBJ_3509 /* TypeSpecifierSyntax.swift in Sources */, + OBJ_3510 /* EnumSpecifierSyntax.swift in Sources */, + OBJ_3511 /* GenericTypeSpecifierSyntax.swift in Sources */, + OBJ_3512 /* ScalarTypeSpecifierSyntax.swift in Sources */, + OBJ_3513 /* StructOrUnionSpecifierSyntax.swift in Sources */, + OBJ_3514 /* TypeIdentifierSyntax.swift in Sources */, + OBJ_3515 /* DeclarationSpecifiersSyntax.swift in Sources */, + OBJ_3516 /* DeclarationSyntax.swift in Sources */, + OBJ_3517 /* DeclaratorSyntax.swift in Sources */, + OBJ_3518 /* DirectDeclaratorSyntax.swift in Sources */, + OBJ_3519 /* ArrayDeclaratorSyntax.swift in Sources */, + OBJ_3520 /* BlockDeclaratorSyntax.swift in Sources */, + OBJ_3521 /* FunctionDeclaratorSyntax.swift in Sources */, + OBJ_3522 /* FieldDeclaratorSyntax.swift in Sources */, + OBJ_3523 /* FieldDeclarationSyntax.swift in Sources */, + OBJ_3524 /* InitDeclarationListSyntax.swift in Sources */, + OBJ_3525 /* InitDeclarationSyntax.swift in Sources */, + OBJ_3526 /* AbstractDeclaratorSyntax.swift in Sources */, + OBJ_3527 /* DirectAbstractDeclaratorSyntax.swift in Sources */, + OBJ_3528 /* ArrayAbstractDeclaratorSyntax.swift in Sources */, + OBJ_3529 /* BlockAbstractDeclaratorSyntax.swift in Sources */, + OBJ_3530 /* FunctionAbstractDeclaratorSyntax.swift in Sources */, + OBJ_3531 /* TypeNameSyntax.swift in Sources */, + OBJ_3532 /* TypeVariableDeclaratorSyntax.swift in Sources */, + OBJ_3533 /* DeclarationTranslator.swift in Sources */, + OBJ_3534 /* DefinitionCollector.swift in Sources */, + OBJ_3535 /* Lexer+ObjcLexing.swift in Sources */, + OBJ_3536 /* NodeContext.swift in Sources */, + OBJ_3537 /* NonnullContextQuerier.swift in Sources */, + OBJ_3538 /* ObjcASTNodeFactory+DeclarationSyntax.swift in Sources */, + OBJ_3539 /* ObjcASTNodeFactory.swift in Sources */, + OBJ_3540 /* ObjcImportDecl.swift in Sources */, + OBJ_3541 /* ObjcParser.swift in Sources */, + OBJ_3542 /* ObjcParserListener.swift in Sources */, + OBJ_3543 /* ObjcParserState.swift in Sources */, + OBJ_3544 /* ObjcPreprocessorListener.swift in Sources */, + OBJ_3545 /* ObjcTokenType+TokenProtocol.swift in Sources */, + OBJ_3546 /* ObjcTypeParser.swift in Sources */, + OBJ_3547 /* ObjectiveCParser+ParserRuleContext.swift in Sources */, + OBJ_3548 /* ObjectiveCParser+RuleExt.swift in Sources */, + OBJ_3549 /* ObjectiveCPreprocessor.swift in Sources */, + OBJ_3550 /* Source+Ext.swift in Sources */, + OBJ_3551 /* VarDeclarationIdentifierNameExtractor.swift in Sources */, + ); + }; + OBJ_3574 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3046 /* ObjectiveCLexer.swift in Sources */, - OBJ_3047 /* ObjectiveCParser.swift in Sources */, - OBJ_3048 /* ObjectiveCParserBaseListener.swift in Sources */, - OBJ_3049 /* ObjectiveCParserBaseVisitor.swift in Sources */, - OBJ_3050 /* ObjectiveCParserListener.swift in Sources */, - OBJ_3051 /* ObjectiveCParserVisitor.swift in Sources */, - OBJ_3052 /* ObjectiveCPreprocessorLexer.swift in Sources */, - OBJ_3053 /* ObjectiveCPreprocessorParser.swift in Sources */, - OBJ_3054 /* ObjectiveCPreprocessorParserBaseListener.swift in Sources */, - OBJ_3055 /* ObjectiveCPreprocessorParserBaseVisitor.swift in Sources */, - OBJ_3056 /* ObjectiveCPreprocessorParserListener.swift in Sources */, - OBJ_3057 /* ObjectiveCPreprocessorParserVisitor.swift in Sources */, - OBJ_3058 /* shim.swift in Sources */, - ); - }; - OBJ_3072 /* Sources */ = { + OBJ_3575 /* ObjectiveCLexer.swift in Sources */, + OBJ_3576 /* ObjectiveCParser.swift in Sources */, + OBJ_3577 /* ObjectiveCParserBaseListener.swift in Sources */, + OBJ_3578 /* ObjectiveCParserBaseVisitor.swift in Sources */, + OBJ_3579 /* ObjectiveCParserListener.swift in Sources */, + OBJ_3580 /* ObjectiveCParserVisitor.swift in Sources */, + OBJ_3581 /* ObjectiveCPreprocessorLexer.swift in Sources */, + OBJ_3582 /* ObjectiveCPreprocessorParser.swift in Sources */, + OBJ_3583 /* ObjectiveCPreprocessorParserBaseListener.swift in Sources */, + OBJ_3584 /* ObjectiveCPreprocessorParserBaseVisitor.swift in Sources */, + OBJ_3585 /* ObjectiveCPreprocessorParserListener.swift in Sources */, + OBJ_3586 /* ObjectiveCPreprocessorParserVisitor.swift in Sources */, + OBJ_3587 /* shim.swift in Sources */, + ); + }; + OBJ_3601 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3073 /* AntlrDeclarationParserTests.swift in Sources */, - OBJ_3074 /* DeclarationExtractorTests.swift in Sources */, - OBJ_3075 /* DeclarationTranslatorTests.swift in Sources */, - OBJ_3076 /* DefinitionCollectorTests.swift in Sources */, - OBJ_3077 /* ObjcParserTests.swift in Sources */, - OBJ_3078 /* ObjcTypeParserTests.swift in Sources */, - OBJ_3079 /* AntlrErrorListener.swift in Sources */, - OBJ_3080 /* BaseParserTestFixture.swift in Sources */, - OBJ_3081 /* DeclarationExtractor+Asserter.swift in Sources */, - OBJ_3082 /* DeclarationSyntaxElementType+Asserter.swift in Sources */, - OBJ_3083 /* DeclarationTranslator+Asserter.swift in Sources */, - ); - }; - OBJ_3164 /* Sources */ = { + OBJ_3602 /* AntlrDeclarationParserTests.swift in Sources */, + OBJ_3603 /* DeclarationExtractorTests.swift in Sources */, + OBJ_3604 /* DeclarationTranslatorTests.swift in Sources */, + OBJ_3605 /* DefinitionCollectorTests.swift in Sources */, + OBJ_3606 /* ObjcParserTests.swift in Sources */, + OBJ_3607 /* ObjcTypeParserTests.swift in Sources */, + OBJ_3608 /* AntlrErrorListener.swift in Sources */, + OBJ_3609 /* BaseParserTestFixture.swift in Sources */, + OBJ_3610 /* DeclarationExtractor+Asserter.swift in Sources */, + OBJ_3611 /* DeclarationSyntaxElementType+Asserter.swift in Sources */, + OBJ_3612 /* DeclarationTranslator+Asserter.swift in Sources */, + ); + }; + OBJ_3699 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3165 /* CPreprocessorDirectiveConverter.swift in Sources */, - OBJ_3166 /* ObjectiveCASTCorrectorExpressionPass.swift in Sources */, - OBJ_3167 /* Intention+Metadata.swift in Sources */, - OBJ_3168 /* Intention+TypedSource.swift in Sources */, - OBJ_3169 /* ObjectiveCPropertyMergeIntentionPass.swift in Sources */, - OBJ_3170 /* MandatoryIntentionPass.swift in Sources */, - OBJ_3171 /* MandatorySyntaxNodePass.swift in Sources */, - OBJ_3172 /* ObjcParserStatePool.swift in Sources */, - OBJ_3173 /* ObjectiveC2SwiftRewriter.swift in Sources */, - OBJ_3174 /* ObjectiveC2SwiftRewriterJob.swift in Sources */, - OBJ_3175 /* ObjectiveC2SwiftRewriterJobBuilder.swift in Sources */, - OBJ_3176 /* ObjectiveCASTReader.swift in Sources */, - OBJ_3177 /* ObjectiveCASTReaderContext.swift in Sources */, - OBJ_3178 /* ObjectiveCExprASTReader.swift in Sources */, - OBJ_3179 /* ObjectiveCFileCollectionStep.swift in Sources */, - OBJ_3180 /* ObjectiveCFileCollectionStepDelegate.swift in Sources */, - OBJ_3181 /* ObjectiveCFrontend.swift in Sources */, - OBJ_3182 /* ObjectiveCImportDirectiveFileCollectionDelegate.swift in Sources */, - OBJ_3183 /* ObjectiveCIntentionCollector.swift in Sources */, - OBJ_3184 /* ObjectiveCMethodSignatureConverter.swift in Sources */, - OBJ_3185 /* ObjectiveCParserCache.swift in Sources */, - OBJ_3186 /* ObjectiveCStatementASTReader.swift in Sources */, - OBJ_3187 /* ObjectiveCSwiftRewriterService.swift in Sources */, - ); - }; - OBJ_3265 /* Sources */ = { + OBJ_3700 /* CPreprocessorDirectiveConverter.swift in Sources */, + OBJ_3701 /* ObjectiveCASTCorrectorExpressionPass.swift in Sources */, + OBJ_3702 /* Intention+Metadata.swift in Sources */, + OBJ_3703 /* Intention+TypedSource.swift in Sources */, + OBJ_3704 /* ObjectiveCPropertyMergeIntentionPass.swift in Sources */, + OBJ_3705 /* MandatoryIntentionPass.swift in Sources */, + OBJ_3706 /* MandatorySyntaxNodePass.swift in Sources */, + OBJ_3707 /* ObjcParserStatePool.swift in Sources */, + OBJ_3708 /* ObjectiveC2SwiftRewriter.swift in Sources */, + OBJ_3709 /* ObjectiveC2SwiftRewriterJob.swift in Sources */, + OBJ_3710 /* ObjectiveC2SwiftRewriterJobBuilder.swift in Sources */, + OBJ_3711 /* ObjectiveCASTReader.swift in Sources */, + OBJ_3712 /* ObjectiveCASTReaderContext.swift in Sources */, + OBJ_3713 /* ObjectiveCExprASTReader.swift in Sources */, + OBJ_3714 /* ObjectiveCFileCollectionStep.swift in Sources */, + OBJ_3715 /* ObjectiveCFileCollectionStepDelegate.swift in Sources */, + OBJ_3716 /* ObjectiveCFrontend.swift in Sources */, + OBJ_3717 /* ObjectiveCImportDirectiveFileCollectionDelegate.swift in Sources */, + OBJ_3718 /* ObjectiveCIntentionCollector.swift in Sources */, + OBJ_3719 /* ObjectiveCMethodSignatureConverter.swift in Sources */, + OBJ_3720 /* ObjectiveCParserCache.swift in Sources */, + OBJ_3721 /* ObjectiveCStatementASTReader.swift in Sources */, + OBJ_3722 /* ObjectiveCSwiftRewriterService.swift in Sources */, + ); + }; + OBJ_3806 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3266 /* ASTRewriterPassTests.swift in Sources */, - OBJ_3267 /* CPreprocessorDirectiveConverterTests.swift in Sources */, - OBJ_3268 /* ObjectiveCASTCorrectorExpressionPassTests.swift in Sources */, - OBJ_3269 /* MultiFileTestBuilder.swift in Sources */, - OBJ_3270 /* SingleFileTestUtils.swift in Sources */, - OBJ_3271 /* ObjectiveCPropertyMergeIntentionPassTests.swift in Sources */, - OBJ_3272 /* ObjectiveC2SwiftRewriter+Crashers.swift in Sources */, - OBJ_3273 /* ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift in Sources */, - OBJ_3274 /* ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift in Sources */, - OBJ_3275 /* ObjectiveC2SwiftRewriter+IntentionPassTests.swift in Sources */, - OBJ_3276 /* ObjectiveC2SwiftRewriter+MultiFilesTests.swift in Sources */, - OBJ_3277 /* ObjectiveC2SwiftRewriter+NullabilityTests.swift in Sources */, - OBJ_3278 /* ObjectiveC2SwiftRewriter+SourcePreprocessor.swift in Sources */, - OBJ_3279 /* ObjectiveC2SwiftRewriter+StmtTests.swift in Sources */, - OBJ_3280 /* ObjectiveC2SwiftRewriter+ThreadingTests.swift in Sources */, - OBJ_3281 /* ObjectiveC2SwiftRewriter+TypingTests.swift in Sources */, - OBJ_3282 /* ObjectiveC2SwiftRewriterJobBuilderTests.swift in Sources */, - OBJ_3283 /* ObjectiveC2SwiftRewriterJobTests.swift in Sources */, - OBJ_3284 /* ObjectiveC2SwiftRewriterTests.swift in Sources */, - OBJ_3285 /* ObjectiveCASTReaderContextTests.swift in Sources */, - OBJ_3286 /* ObjectiveCExprASTReaderTests.swift in Sources */, - OBJ_3287 /* ObjectiveCFileCollectionStepTests.swift in Sources */, - OBJ_3288 /* ObjectiveCImportDirectiveFileCollectionDelegateTests.swift in Sources */, - OBJ_3289 /* ObjectiveCIntentionCollectorTests.swift in Sources */, - OBJ_3290 /* ObjectiveCMethodSignatureConverterTests.swift in Sources */, - OBJ_3291 /* ObjectiveCStatementASTReaderTests.swift in Sources */, - OBJ_3292 /* PropertyMergeIntentionPassTests.swift in Sources */, - OBJ_3293 /* TestUtils.swift in Sources */, - ); - }; - OBJ_3374 /* Sources */ = { + OBJ_3807 /* ASTRewriterPassTests.swift in Sources */, + OBJ_3808 /* CPreprocessorDirectiveConverterTests.swift in Sources */, + OBJ_3809 /* ObjectiveCASTCorrectorExpressionPassTests.swift in Sources */, + OBJ_3810 /* MultiFileTestBuilder.swift in Sources */, + OBJ_3811 /* SingleFileTestUtils.swift in Sources */, + OBJ_3812 /* ObjectiveCPropertyMergeIntentionPassTests.swift in Sources */, + OBJ_3813 /* ObjectiveC2SwiftRewriter+Crashers.swift in Sources */, + OBJ_3814 /* ObjectiveC2SwiftRewriter+GlobalsProvidersTests.swift in Sources */, + OBJ_3815 /* ObjectiveC2SwiftRewriter+IntentionPassHistoryTests.swift in Sources */, + OBJ_3816 /* ObjectiveC2SwiftRewriter+IntentionPassTests.swift in Sources */, + OBJ_3817 /* ObjectiveC2SwiftRewriter+MultiFilesTests.swift in Sources */, + OBJ_3818 /* ObjectiveC2SwiftRewriter+NullabilityTests.swift in Sources */, + OBJ_3819 /* ObjectiveC2SwiftRewriter+SourcePreprocessor.swift in Sources */, + OBJ_3820 /* ObjectiveC2SwiftRewriter+StmtTests.swift in Sources */, + OBJ_3821 /* ObjectiveC2SwiftRewriter+ThreadingTests.swift in Sources */, + OBJ_3822 /* ObjectiveC2SwiftRewriter+TypingTests.swift in Sources */, + OBJ_3823 /* ObjectiveC2SwiftRewriterJobBuilderTests.swift in Sources */, + OBJ_3824 /* ObjectiveC2SwiftRewriterJobTests.swift in Sources */, + OBJ_3825 /* ObjectiveC2SwiftRewriterTests.swift in Sources */, + OBJ_3826 /* ObjectiveCASTReaderContextTests.swift in Sources */, + OBJ_3827 /* ObjectiveCExprASTReaderTests.swift in Sources */, + OBJ_3828 /* ObjectiveCFileCollectionStepTests.swift in Sources */, + OBJ_3829 /* ObjectiveCImportDirectiveFileCollectionDelegateTests.swift in Sources */, + OBJ_3830 /* ObjectiveCIntentionCollectorTests.swift in Sources */, + OBJ_3831 /* ObjectiveCMethodSignatureConverterTests.swift in Sources */, + OBJ_3832 /* ObjectiveCStatementASTReaderTests.swift in Sources */, + OBJ_3833 /* PropertyMergeIntentionPassTests.swift in Sources */, + OBJ_3834 /* TestUtils.swift in Sources */, + ); + }; + OBJ_3921 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3375 /* QuickSpecPreprocessor.swift in Sources */, - OBJ_3376 /* SourcePreprocessor.swift in Sources */, + OBJ_3922 /* QuickSpecPreprocessor.swift in Sources */, + OBJ_3923 /* SourcePreprocessor.swift in Sources */, ); }; - OBJ_3386 /* Sources */ = { + OBJ_3933 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3387 /* QuickSpecPreprocessorTests.swift in Sources */, + OBJ_3934 /* QuickSpecPreprocessorTests.swift in Sources */, ); }; - OBJ_3464 /* Sources */ = { + OBJ_4017 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3465 /* AccessLevel.swift in Sources */, - OBJ_3466 /* SwiftComment.swift in Sources */, - OBJ_3467 /* Expression+Ext.swift in Sources */, - OBJ_3468 /* Expression+Matcher.swift in Sources */, - OBJ_3469 /* Expression+Transformer.swift in Sources */, - OBJ_3470 /* Expression.swift in Sources */, - OBJ_3471 /* ArrayLiteralExpression.swift in Sources */, - OBJ_3472 /* AssignmentExpression.swift in Sources */, - OBJ_3473 /* BinaryExpression.swift in Sources */, - OBJ_3474 /* BlockLiteralExpression.swift in Sources */, - OBJ_3475 /* CastExpression.swift in Sources */, - OBJ_3476 /* ConstantExpression.swift in Sources */, - OBJ_3477 /* DictionaryLiteralExpression.swift in Sources */, - OBJ_3478 /* ExpressionPostfixBuildable.swift in Sources */, - OBJ_3479 /* IdentifierExpression.swift in Sources */, - OBJ_3480 /* OptionalAccessPostfixBuilder.swift in Sources */, - OBJ_3481 /* ParensExpression.swift in Sources */, - OBJ_3482 /* FunctionCallPostfix.swift in Sources */, - OBJ_3483 /* MemberPostfix.swift in Sources */, - OBJ_3484 /* Postfix.swift in Sources */, - OBJ_3485 /* SubscriptPostfix.swift in Sources */, - OBJ_3486 /* PostfixExpression.swift in Sources */, - OBJ_3487 /* PrefixExpression.swift in Sources */, - OBJ_3488 /* SelectorExpression.swift in Sources */, - OBJ_3489 /* SizeOfExpression.swift in Sources */, - OBJ_3490 /* TernaryExpression.swift in Sources */, - OBJ_3491 /* TryExpression.swift in Sources */, - OBJ_3492 /* TupleExpression.swift in Sources */, - OBJ_3493 /* TypeCheckExpression.swift in Sources */, - OBJ_3494 /* UnaryExpression.swift in Sources */, - OBJ_3495 /* UnknownExpression.swift in Sources */, - OBJ_3496 /* ExpressionKind.swift in Sources */, - OBJ_3497 /* FunctionSignatureParser.swift in Sources */, - OBJ_3498 /* Matchable.swift in Sources */, - OBJ_3499 /* Ownership.swift in Sources */, - OBJ_3500 /* Pattern.swift in Sources */, - OBJ_3501 /* PostfixChainInverter.swift in Sources */, - OBJ_3502 /* KeyedDecodingContainerProtocol+SwiftAST.swift in Sources */, - OBJ_3503 /* KeyedEncodingContainerProtocol+SwiftAST.swift in Sources */, - OBJ_3504 /* SerializationOptions.swift in Sources */, - OBJ_3505 /* SwiftASTSerializer.swift in Sources */, - OBJ_3506 /* UnkeyedDecodingContainer+SwiftAST.swift in Sources */, - OBJ_3507 /* UnkeyedEncodingContainer+SwiftAST.swift in Sources */, - OBJ_3508 /* Statement+Matcher.swift in Sources */, - OBJ_3509 /* Statement.swift in Sources */, - OBJ_3510 /* BreakStatement.swift in Sources */, - OBJ_3511 /* CompoundStatement.swift in Sources */, - OBJ_3512 /* ContinueStatement.swift in Sources */, - OBJ_3513 /* DeferStatement.swift in Sources */, - OBJ_3514 /* DoStatement.swift in Sources */, - OBJ_3515 /* ExpressionsStatement.swift in Sources */, - OBJ_3516 /* FallthroughStatement.swift in Sources */, - OBJ_3517 /* ForStatement.swift in Sources */, - OBJ_3518 /* IfStatement.swift in Sources */, - OBJ_3519 /* LocalFunctionStatement.swift in Sources */, - OBJ_3520 /* RepeatWhileStatement.swift in Sources */, - OBJ_3521 /* ReturnStatement.swift in Sources */, - OBJ_3522 /* SwitchStatement.swift in Sources */, - OBJ_3523 /* ThrowStatement.swift in Sources */, - OBJ_3524 /* UnknownStatement.swift in Sources */, - OBJ_3525 /* VariableDeclarationsStatement.swift in Sources */, - OBJ_3526 /* WhiteStatement.swift in Sources */, - OBJ_3527 /* StatementKind.swift in Sources */, - OBJ_3528 /* FunctionIdentifier.swift in Sources */, - OBJ_3529 /* FunctionSignature.swift in Sources */, - OBJ_3530 /* LocalFunction.swift in Sources */, - OBJ_3531 /* ObjcPropertyAttribute.swift in Sources */, - OBJ_3532 /* ParameterSignature.swift in Sources */, - OBJ_3533 /* SelectorSignature.swift in Sources */, - OBJ_3534 /* SubscriptIdentifier.swift in Sources */, - OBJ_3535 /* SubscriptSignature.swift in Sources */, - OBJ_3536 /* SwiftOperator.swift in Sources */, - OBJ_3537 /* SwiftRewriterAttribute.swift in Sources */, - OBJ_3538 /* SwiftType+Stdlib.swift in Sources */, - OBJ_3539 /* SwiftType.swift in Sources */, - OBJ_3540 /* SwiftTypeParser.swift in Sources */, - OBJ_3541 /* SyntaxNode.swift in Sources */, - OBJ_3542 /* SyntaxNodeIterator.swift in Sources */, - OBJ_3543 /* SyntaxNodeRewriter.swift in Sources */, - OBJ_3544 /* TypeFormatter.swift in Sources */, - OBJ_3545 /* UnknownASTContext.swift in Sources */, - OBJ_3546 /* ValueMatcher+Matchers.swift in Sources */, - OBJ_3547 /* ValueMatcher+PartialValueMatcher.swift in Sources */, - OBJ_3548 /* ValueMatcher.swift in Sources */, - OBJ_3549 /* ValueMatcherConvertible.swift in Sources */, - OBJ_3550 /* ValueStorage.swift in Sources */, - OBJ_3551 /* ValueTransformer.swift in Sources */, - OBJ_3552 /* AnonymousSyntaxNodeStatefulVisitor.swift in Sources */, - OBJ_3553 /* AnonymousSyntaxNodeVisitor.swift in Sources */, - OBJ_3554 /* BaseSyntaxNodeVisitor.swift in Sources */, - OBJ_3555 /* ExpressionVisitor.swift in Sources */, - OBJ_3556 /* StatementStatefulVisitor.swift in Sources */, - OBJ_3557 /* StatementVisitor.swift in Sources */, - ); - }; - OBJ_3573 /* Sources */ = { + OBJ_4018 /* AccessLevel.swift in Sources */, + OBJ_4019 /* SwiftComment.swift in Sources */, + OBJ_4020 /* Expression+Ext.swift in Sources */, + OBJ_4021 /* Expression+Matcher.swift in Sources */, + OBJ_4022 /* Expression+Transformer.swift in Sources */, + OBJ_4023 /* Expression.swift in Sources */, + OBJ_4024 /* ArrayLiteralExpression.swift in Sources */, + OBJ_4025 /* AssignmentExpression.swift in Sources */, + OBJ_4026 /* BinaryExpression.swift in Sources */, + OBJ_4027 /* BlockLiteralExpression.swift in Sources */, + OBJ_4028 /* CastExpression.swift in Sources */, + OBJ_4029 /* ConstantExpression.swift in Sources */, + OBJ_4030 /* DictionaryLiteralExpression.swift in Sources */, + OBJ_4031 /* ExpressionPostfixBuildable.swift in Sources */, + OBJ_4032 /* IdentifierExpression.swift in Sources */, + OBJ_4033 /* OptionalAccessPostfixBuilder.swift in Sources */, + OBJ_4034 /* ParensExpression.swift in Sources */, + OBJ_4035 /* FunctionCallPostfix.swift in Sources */, + OBJ_4036 /* MemberPostfix.swift in Sources */, + OBJ_4037 /* Postfix.swift in Sources */, + OBJ_4038 /* SubscriptPostfix.swift in Sources */, + OBJ_4039 /* PostfixExpression.swift in Sources */, + OBJ_4040 /* PrefixExpression.swift in Sources */, + OBJ_4041 /* SelectorExpression.swift in Sources */, + OBJ_4042 /* SizeOfExpression.swift in Sources */, + OBJ_4043 /* TernaryExpression.swift in Sources */, + OBJ_4044 /* TryExpression.swift in Sources */, + OBJ_4045 /* TupleExpression.swift in Sources */, + OBJ_4046 /* TypeCheckExpression.swift in Sources */, + OBJ_4047 /* UnaryExpression.swift in Sources */, + OBJ_4048 /* UnknownExpression.swift in Sources */, + OBJ_4049 /* ExpressionKind.swift in Sources */, + OBJ_4050 /* FunctionSignatureParser.swift in Sources */, + OBJ_4051 /* Matchable.swift in Sources */, + OBJ_4052 /* Ownership.swift in Sources */, + OBJ_4053 /* Pattern.swift in Sources */, + OBJ_4054 /* PostfixChainInverter.swift in Sources */, + OBJ_4055 /* KeyedDecodingContainerProtocol+SwiftAST.swift in Sources */, + OBJ_4056 /* KeyedEncodingContainerProtocol+SwiftAST.swift in Sources */, + OBJ_4057 /* SerializationOptions.swift in Sources */, + OBJ_4058 /* SwiftASTSerializer.swift in Sources */, + OBJ_4059 /* UnkeyedDecodingContainer+SwiftAST.swift in Sources */, + OBJ_4060 /* UnkeyedEncodingContainer+SwiftAST.swift in Sources */, + OBJ_4061 /* Statement+Matcher.swift in Sources */, + OBJ_4062 /* Statement.swift in Sources */, + OBJ_4063 /* BreakStatement.swift in Sources */, + OBJ_4064 /* CompoundStatement.swift in Sources */, + OBJ_4065 /* ContinueStatement.swift in Sources */, + OBJ_4066 /* DeferStatement.swift in Sources */, + OBJ_4067 /* DoStatement.swift in Sources */, + OBJ_4068 /* ExpressionsStatement.swift in Sources */, + OBJ_4069 /* FallthroughStatement.swift in Sources */, + OBJ_4070 /* ForStatement.swift in Sources */, + OBJ_4071 /* IfStatement.swift in Sources */, + OBJ_4072 /* LocalFunctionStatement.swift in Sources */, + OBJ_4073 /* RepeatWhileStatement.swift in Sources */, + OBJ_4074 /* ReturnStatement.swift in Sources */, + OBJ_4075 /* SwitchStatement.swift in Sources */, + OBJ_4076 /* ThrowStatement.swift in Sources */, + OBJ_4077 /* UnknownStatement.swift in Sources */, + OBJ_4078 /* VariableDeclarationsStatement.swift in Sources */, + OBJ_4079 /* WhiteStatement.swift in Sources */, + OBJ_4080 /* StatementKind.swift in Sources */, + OBJ_4081 /* FunctionIdentifier.swift in Sources */, + OBJ_4082 /* FunctionSignature.swift in Sources */, + OBJ_4083 /* LocalFunction.swift in Sources */, + OBJ_4084 /* ObjcPropertyAttribute.swift in Sources */, + OBJ_4085 /* ParameterSignature.swift in Sources */, + OBJ_4086 /* SelectorSignature.swift in Sources */, + OBJ_4087 /* SubscriptIdentifier.swift in Sources */, + OBJ_4088 /* SubscriptSignature.swift in Sources */, + OBJ_4089 /* SwiftOperator.swift in Sources */, + OBJ_4090 /* SwiftRewriterAttribute.swift in Sources */, + OBJ_4091 /* SwiftType+Stdlib.swift in Sources */, + OBJ_4092 /* SwiftType.swift in Sources */, + OBJ_4093 /* SwiftTypeParser.swift in Sources */, + OBJ_4094 /* SyntaxNode.swift in Sources */, + OBJ_4095 /* SyntaxNodeIterator.swift in Sources */, + OBJ_4096 /* SyntaxNodeRewriter.swift in Sources */, + OBJ_4097 /* TypeFormatter.swift in Sources */, + OBJ_4098 /* UnknownASTContext.swift in Sources */, + OBJ_4099 /* ValueMatcher+Matchers.swift in Sources */, + OBJ_4100 /* ValueMatcher+PartialValueMatcher.swift in Sources */, + OBJ_4101 /* ValueMatcher.swift in Sources */, + OBJ_4102 /* ValueMatcherConvertible.swift in Sources */, + OBJ_4103 /* ValueStorage.swift in Sources */, + OBJ_4104 /* ValueTransformer.swift in Sources */, + OBJ_4105 /* AnonymousSyntaxNodeStatefulVisitor.swift in Sources */, + OBJ_4106 /* AnonymousSyntaxNodeVisitor.swift in Sources */, + OBJ_4107 /* BaseSyntaxNodeVisitor.swift in Sources */, + OBJ_4108 /* ExpressionVisitor.swift in Sources */, + OBJ_4109 /* StatementStatefulVisitor.swift in Sources */, + OBJ_4110 /* StatementVisitor.swift in Sources */, + ); + }; + OBJ_4126 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3574 /* AccessLevelTests.swift in Sources */, - OBJ_3575 /* Expression+MatcherTests.swift in Sources */, - OBJ_3576 /* PostfixExpressionTests.swift in Sources */, - OBJ_3577 /* SelectorExpressionTests.swift in Sources */, - OBJ_3578 /* ExpressionTests.swift in Sources */, - OBJ_3579 /* FunctionIdentifierTests.swift in Sources */, - OBJ_3580 /* FunctionSignatureParserTests.swift in Sources */, - OBJ_3581 /* PatternTests.swift in Sources */, - OBJ_3582 /* SwiftASTSerializerTests.swift in Sources */, - OBJ_3583 /* StatementTests.swift in Sources */, - OBJ_3584 /* FunctionSignatureTests.swift in Sources */, - OBJ_3585 /* SwiftOperatorTests.swift in Sources */, - OBJ_3586 /* SwiftTypeParserTests.swift in Sources */, - OBJ_3587 /* SwiftTypeTests.swift in Sources */, - OBJ_3588 /* SyntaxNodeIteratorTests.swift in Sources */, - OBJ_3589 /* SyntaxNodeRewriterTests.swift in Sources */, - OBJ_3590 /* SyntaxNodeTests.swift in Sources */, - OBJ_3591 /* TypeFormatterTests.swift in Sources */, - OBJ_3592 /* ValueMatcher+MatchersTests.swift in Sources */, - OBJ_3593 /* ValueMatcherTests.swift in Sources */, - OBJ_3594 /* ValueTransformerTests.swift in Sources */, - ); - }; - OBJ_3675 /* Sources */ = { + OBJ_4127 /* AccessLevelTests.swift in Sources */, + OBJ_4128 /* Expression+MatcherTests.swift in Sources */, + OBJ_4129 /* PostfixExpressionTests.swift in Sources */, + OBJ_4130 /* SelectorExpressionTests.swift in Sources */, + OBJ_4131 /* ExpressionTests.swift in Sources */, + OBJ_4132 /* FunctionIdentifierTests.swift in Sources */, + OBJ_4133 /* FunctionSignatureParserTests.swift in Sources */, + OBJ_4134 /* PatternTests.swift in Sources */, + OBJ_4135 /* SwiftASTSerializerTests.swift in Sources */, + OBJ_4136 /* StatementTests.swift in Sources */, + OBJ_4137 /* FunctionSignatureTests.swift in Sources */, + OBJ_4138 /* SwiftOperatorTests.swift in Sources */, + OBJ_4139 /* SwiftTypeParserTests.swift in Sources */, + OBJ_4140 /* SwiftTypeTests.swift in Sources */, + OBJ_4141 /* SyntaxNodeIteratorTests.swift in Sources */, + OBJ_4142 /* SyntaxNodeRewriterTests.swift in Sources */, + OBJ_4143 /* SyntaxNodeTests.swift in Sources */, + OBJ_4144 /* TypeFormatterTests.swift in Sources */, + OBJ_4145 /* ValueMatcher+MatchersTests.swift in Sources */, + OBJ_4146 /* ValueMatcherTests.swift in Sources */, + OBJ_4147 /* ValueTransformerTests.swift in Sources */, + ); + }; + OBJ_4234 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3676 /* DebugOptions.swift in Sources */, - OBJ_3677 /* Exports.swift in Sources */, - OBJ_3678 /* FormatPipeline.swift in Sources */, - OBJ_3679 /* LintPipeline.swift in Sources */, - OBJ_3680 /* Pipelines+Generated.swift in Sources */, - OBJ_3681 /* SwiftFormatError.swift in Sources */, - OBJ_3682 /* SwiftFormatter.swift in Sources */, - OBJ_3683 /* SwiftLinter.swift in Sources */, - OBJ_3684 /* SyntaxValidatingVisitor.swift in Sources */, - ); - }; - OBJ_3705 /* Sources */ = { + OBJ_4235 /* DebugOptions.swift in Sources */, + OBJ_4236 /* Exports.swift in Sources */, + OBJ_4237 /* FormatPipeline.swift in Sources */, + OBJ_4238 /* LintPipeline.swift in Sources */, + OBJ_4239 /* Pipelines+Generated.swift in Sources */, + OBJ_4240 /* SwiftFormatError.swift in Sources */, + OBJ_4241 /* SwiftFormatter.swift in Sources */, + OBJ_4242 /* SwiftLinter.swift in Sources */, + OBJ_4243 /* SyntaxValidatingVisitor.swift in Sources */, + ); + }; + OBJ_4264 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3706 /* Configuration.swift in Sources */, - OBJ_3707 /* Indent.swift in Sources */, - OBJ_3708 /* RuleRegistry+Generated.swift in Sources */, + OBJ_4265 /* Configuration.swift in Sources */, + OBJ_4266 /* Indent.swift in Sources */, + OBJ_4267 /* RuleRegistry+Generated.swift in Sources */, ); }; - OBJ_3713 /* Sources */ = { - isa = PBXSourcesBuildPhase; - files = ( - OBJ_3714 /* Context.swift in Sources */, - OBJ_3715 /* Finding+Convenience.swift in Sources */, - OBJ_3716 /* Finding.swift in Sources */, - OBJ_3717 /* FindingCategorizing.swift in Sources */, - OBJ_3718 /* FindingEmitter.swift in Sources */, - OBJ_3719 /* Rule.swift in Sources */, - OBJ_3720 /* RuleBasedFindingCategory.swift in Sources */, - OBJ_3721 /* RuleMask.swift in Sources */, - OBJ_3722 /* RuleState.swift in Sources */, - OBJ_3723 /* SyntaxFormatRule.swift in Sources */, - OBJ_3724 /* SyntaxLintRule.swift in Sources */, - OBJ_3725 /* SyntaxProtocol+Convenience.swift in Sources */, - OBJ_3726 /* Trivia+Convenience.swift in Sources */, - ); - }; - OBJ_3737 /* Sources */ = { + OBJ_4272 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3738 /* Comment.swift in Sources */, - OBJ_3739 /* Indent+Length.swift in Sources */, - OBJ_3740 /* OperatorContext.swift in Sources */, - OBJ_3741 /* PrettyPrint.swift in Sources */, - OBJ_3742 /* PrettyPrintFindingCategory.swift in Sources */, - OBJ_3743 /* SequenceExprFolding.swift in Sources */, - OBJ_3744 /* Token.swift in Sources */, - OBJ_3745 /* TokenStreamCreator.swift in Sources */, - OBJ_3746 /* Verbatim.swift in Sources */, - ); - }; - OBJ_3759 /* Sources */ = { + OBJ_4273 /* Context.swift in Sources */, + OBJ_4274 /* Finding+Convenience.swift in Sources */, + OBJ_4275 /* Finding.swift in Sources */, + OBJ_4276 /* FindingCategorizing.swift in Sources */, + OBJ_4277 /* FindingEmitter.swift in Sources */, + OBJ_4278 /* Rule.swift in Sources */, + OBJ_4279 /* RuleBasedFindingCategory.swift in Sources */, + OBJ_4280 /* RuleMask.swift in Sources */, + OBJ_4281 /* RuleState.swift in Sources */, + OBJ_4282 /* SyntaxFormatRule.swift in Sources */, + OBJ_4283 /* SyntaxLintRule.swift in Sources */, + OBJ_4284 /* SyntaxProtocol+Convenience.swift in Sources */, + OBJ_4285 /* Trivia+Convenience.swift in Sources */, + ); + }; + OBJ_4296 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3760 /* AddModifierRewriter.swift in Sources */, - OBJ_3761 /* AllPublicDeclarationsHaveDocumentation.swift in Sources */, - OBJ_3762 /* AlwaysUseLowerCamelCase.swift in Sources */, - OBJ_3763 /* AmbiguousTrailingClosureOverload.swift in Sources */, - OBJ_3764 /* BeginDocumentationCommentWithOneLineSummary.swift in Sources */, - OBJ_3765 /* DeclSyntaxProtocol+Comments.swift in Sources */, - OBJ_3766 /* DoNotUseSemicolons.swift in Sources */, - OBJ_3767 /* DontRepeatTypeInStaticProperties.swift in Sources */, - OBJ_3768 /* FileScopedDeclarationPrivacy.swift in Sources */, - OBJ_3769 /* FullyIndirectEnum.swift in Sources */, - OBJ_3770 /* FunctionDeclSyntax+Convenience.swift in Sources */, - OBJ_3771 /* GroupNumericLiterals.swift in Sources */, - OBJ_3772 /* IdentifiersMustBeASCII.swift in Sources */, - OBJ_3773 /* ImportsXCTestVisitor.swift in Sources */, - OBJ_3774 /* ModifierListSyntax+Convenience.swift in Sources */, - OBJ_3775 /* NeverForceUnwrap.swift in Sources */, - OBJ_3776 /* NeverUseForceTry.swift in Sources */, - OBJ_3777 /* NeverUseImplicitlyUnwrappedOptionals.swift in Sources */, - OBJ_3778 /* NoAccessLevelOnExtensionDeclaration.swift in Sources */, - OBJ_3779 /* NoBlockComments.swift in Sources */, - OBJ_3780 /* NoCasesWithOnlyFallthrough.swift in Sources */, - OBJ_3781 /* NoEmptyTrailingClosureParentheses.swift in Sources */, - OBJ_3782 /* NoLabelsInCasePatterns.swift in Sources */, - OBJ_3783 /* NoLeadingUnderscores.swift in Sources */, - OBJ_3784 /* NoParensAroundConditions.swift in Sources */, - OBJ_3785 /* NoPlaygroundLiterals.swift in Sources */, - OBJ_3786 /* NoVoidReturnOnFunctionSignature.swift in Sources */, - OBJ_3787 /* OneCasePerLine.swift in Sources */, - OBJ_3788 /* OneVariableDeclarationPerLine.swift in Sources */, - OBJ_3789 /* OnlyOneTrailingClosureArgument.swift in Sources */, - OBJ_3790 /* OrderedImports.swift in Sources */, - OBJ_3791 /* ReplaceTrivia.swift in Sources */, - OBJ_3792 /* ReturnVoidInsteadOfEmptyTuple.swift in Sources */, - OBJ_3793 /* RuleNameCache+Generated.swift in Sources */, - OBJ_3794 /* SemicolonSyntaxProtocol.swift in Sources */, - OBJ_3795 /* TokenSyntax+Convenience.swift in Sources */, - OBJ_3796 /* UseEarlyExits.swift in Sources */, - OBJ_3797 /* UseLetInEveryBoundCaseVariable.swift in Sources */, - OBJ_3798 /* UseShorthandTypeNames.swift in Sources */, - OBJ_3799 /* UseSingleLinePropertyGetter.swift in Sources */, - OBJ_3800 /* UseSynthesizedInitializer.swift in Sources */, - OBJ_3801 /* UseTripleSlashForDocumentationComments.swift in Sources */, - OBJ_3802 /* UseWhereClausesInForLoops.swift in Sources */, - OBJ_3803 /* ValidateDocumentationComments.swift in Sources */, - OBJ_3804 /* VarDeclSyntax+Convenience.swift in Sources */, - ); - }; - OBJ_3817 /* Sources */ = { + OBJ_4297 /* Comment.swift in Sources */, + OBJ_4298 /* Indent+Length.swift in Sources */, + OBJ_4299 /* OperatorContext.swift in Sources */, + OBJ_4300 /* PrettyPrint.swift in Sources */, + OBJ_4301 /* PrettyPrintFindingCategory.swift in Sources */, + OBJ_4302 /* SequenceExprFolding.swift in Sources */, + OBJ_4303 /* Token.swift in Sources */, + OBJ_4304 /* TokenStreamCreator.swift in Sources */, + OBJ_4305 /* Verbatim.swift in Sources */, + ); + }; + OBJ_4318 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3818 /* LazySplitSequence.swift in Sources */, - OBJ_3819 /* RememberingIterator.swift in Sources */, - OBJ_3820 /* WhitespaceFindingCategory.swift in Sources */, - OBJ_3821 /* WhitespaceLinter.swift in Sources */, + OBJ_4319 /* AddModifierRewriter.swift in Sources */, + OBJ_4320 /* AllPublicDeclarationsHaveDocumentation.swift in Sources */, + OBJ_4321 /* AlwaysUseLowerCamelCase.swift in Sources */, + OBJ_4322 /* AmbiguousTrailingClosureOverload.swift in Sources */, + OBJ_4323 /* BeginDocumentationCommentWithOneLineSummary.swift in Sources */, + OBJ_4324 /* DeclSyntaxProtocol+Comments.swift in Sources */, + OBJ_4325 /* DoNotUseSemicolons.swift in Sources */, + OBJ_4326 /* DontRepeatTypeInStaticProperties.swift in Sources */, + OBJ_4327 /* FileScopedDeclarationPrivacy.swift in Sources */, + OBJ_4328 /* FullyIndirectEnum.swift in Sources */, + OBJ_4329 /* FunctionDeclSyntax+Convenience.swift in Sources */, + OBJ_4330 /* GroupNumericLiterals.swift in Sources */, + OBJ_4331 /* IdentifiersMustBeASCII.swift in Sources */, + OBJ_4332 /* ImportsXCTestVisitor.swift in Sources */, + OBJ_4333 /* ModifierListSyntax+Convenience.swift in Sources */, + OBJ_4334 /* NeverForceUnwrap.swift in Sources */, + OBJ_4335 /* NeverUseForceTry.swift in Sources */, + OBJ_4336 /* NeverUseImplicitlyUnwrappedOptionals.swift in Sources */, + OBJ_4337 /* NoAccessLevelOnExtensionDeclaration.swift in Sources */, + OBJ_4338 /* NoBlockComments.swift in Sources */, + OBJ_4339 /* NoCasesWithOnlyFallthrough.swift in Sources */, + OBJ_4340 /* NoEmptyTrailingClosureParentheses.swift in Sources */, + OBJ_4341 /* NoLabelsInCasePatterns.swift in Sources */, + OBJ_4342 /* NoLeadingUnderscores.swift in Sources */, + OBJ_4343 /* NoParensAroundConditions.swift in Sources */, + OBJ_4344 /* NoPlaygroundLiterals.swift in Sources */, + OBJ_4345 /* NoVoidReturnOnFunctionSignature.swift in Sources */, + OBJ_4346 /* OneCasePerLine.swift in Sources */, + OBJ_4347 /* OneVariableDeclarationPerLine.swift in Sources */, + OBJ_4348 /* OnlyOneTrailingClosureArgument.swift in Sources */, + OBJ_4349 /* OrderedImports.swift in Sources */, + OBJ_4350 /* ReplaceTrivia.swift in Sources */, + OBJ_4351 /* ReturnVoidInsteadOfEmptyTuple.swift in Sources */, + OBJ_4352 /* RuleNameCache+Generated.swift in Sources */, + OBJ_4353 /* SemicolonSyntaxProtocol.swift in Sources */, + OBJ_4354 /* TokenSyntax+Convenience.swift in Sources */, + OBJ_4355 /* UseEarlyExits.swift in Sources */, + OBJ_4356 /* UseLetInEveryBoundCaseVariable.swift in Sources */, + OBJ_4357 /* UseShorthandTypeNames.swift in Sources */, + OBJ_4358 /* UseSingleLinePropertyGetter.swift in Sources */, + OBJ_4359 /* UseSynthesizedInitializer.swift in Sources */, + OBJ_4360 /* UseTripleSlashForDocumentationComments.swift in Sources */, + OBJ_4361 /* UseWhereClausesInForLoops.swift in Sources */, + OBJ_4362 /* ValidateDocumentationComments.swift in Sources */, + OBJ_4363 /* VarDeclSyntax+Convenience.swift in Sources */, ); }; - OBJ_3835 /* Sources */ = { + OBJ_4376 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3836 /* GlobalOptions.swift in Sources */, - OBJ_3837 /* ObjectiveCCommand.swift in Sources */, - OBJ_3838 /* ObjectiveCFrontendImpl.swift in Sources */, - OBJ_3839 /* ObjectiveCSwiftRewriterServiceImpl.swift in Sources */, - OBJ_3840 /* StdoutFileCollectionStepListener.swift in Sources */, - OBJ_3841 /* SwiftRewriterCommand.swift in Sources */, - OBJ_3842 /* Target.swift in Sources */, - OBJ_3843 /* main.swift in Sources */, + OBJ_4377 /* LazySplitSequence.swift in Sources */, + OBJ_4378 /* RememberingIterator.swift in Sources */, + OBJ_4379 /* WhitespaceFindingCategory.swift in Sources */, + OBJ_4380 /* WhitespaceLinter.swift in Sources */, ); }; - OBJ_3929 /* Sources */ = { + OBJ_4394 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_3930 /* FilesExplorer.swift in Sources */, - OBJ_3931 /* Menu.swift in Sources */, - OBJ_3932 /* Stopwatch.swift in Sources */, - OBJ_3933 /* SwiftRewriterFrontend.swift in Sources */, + OBJ_4395 /* GlobalOptions.swift in Sources */, + OBJ_4396 /* JavaScriptCommand.swift in Sources */, + OBJ_4397 /* JavaScriptFrontendImpl.swift in Sources */, + OBJ_4398 /* JavaScriptSwiftRewriterServiceImpl.swift in Sources */, + OBJ_4399 /* ObjectiveCCommand.swift in Sources */, + OBJ_4400 /* ObjectiveCFrontendImpl.swift in Sources */, + OBJ_4401 /* ObjectiveCSwiftRewriterServiceImpl.swift in Sources */, + OBJ_4402 /* StdoutFileCollectionStepListener.swift in Sources */, + OBJ_4403 /* SwiftRewriterCommand.swift in Sources */, + OBJ_4404 /* Target.swift in Sources */, + OBJ_4405 /* main.swift in Sources */, + ); + }; + OBJ_4499 /* Sources */ = { + isa = PBXSourcesBuildPhase; + files = ( + OBJ_4500 /* FilesExplorer.swift in Sources */, + OBJ_4501 /* Menu.swift in Sources */, + OBJ_4502 /* Stopwatch.swift in Sources */, + OBJ_4503 /* SwiftRewriterFrontend.swift in Sources */, ); }; - OBJ_4014 /* Sources */ = { + OBJ_4590 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4015 /* ColorizeSyntaxVisitor.swift in Sources */, - OBJ_4016 /* DiskInputFile.swift in Sources */, - OBJ_4017 /* FileDiskProvider.swift in Sources */, - OBJ_4018 /* FileProvider.swift in Sources */, - OBJ_4019 /* FileWriterOutput.swift in Sources */, - OBJ_4020 /* InputSourcesProvider.swift in Sources */, - OBJ_4021 /* NullWriterOutput.swift in Sources */, - OBJ_4022 /* PathFilter.swift in Sources */, - OBJ_4023 /* SingleInputProvider.swift in Sources */, - OBJ_4024 /* StdoutWriterOutput.swift in Sources */, - OBJ_4025 /* SwiftASTCommentApplier.swift in Sources */, - OBJ_4026 /* SwiftRewriterService.swift in Sources */, - OBJ_4027 /* SwiftSyntaxOptions.swift in Sources */, - OBJ_4028 /* SwiftWriter.swift in Sources */, - OBJ_4029 /* WriterOutput.swift in Sources */, - ); - }; - OBJ_4105 /* Sources */ = { + OBJ_4591 /* ColorizeSyntaxVisitor.swift in Sources */, + OBJ_4592 /* DiskInputFile.swift in Sources */, + OBJ_4593 /* FileDiskProvider.swift in Sources */, + OBJ_4594 /* FileProvider.swift in Sources */, + OBJ_4595 /* FileWriterOutput.swift in Sources */, + OBJ_4596 /* InputSourcesProvider.swift in Sources */, + OBJ_4597 /* NullWriterOutput.swift in Sources */, + OBJ_4598 /* PathFilter.swift in Sources */, + OBJ_4599 /* SingleInputProvider.swift in Sources */, + OBJ_4600 /* StdoutWriterOutput.swift in Sources */, + OBJ_4601 /* SwiftASTCommentApplier.swift in Sources */, + OBJ_4602 /* SwiftRewriterService.swift in Sources */, + OBJ_4603 /* SwiftSyntaxOptions.swift in Sources */, + OBJ_4604 /* SwiftWriter.swift in Sources */, + OBJ_4605 /* WriterOutput.swift in Sources */, + ); + }; + OBJ_4687 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4106 /* ColorizeSyntaxVisitorTests.swift in Sources */, - OBJ_4107 /* SwiftWriterTests.swift in Sources */, + OBJ_4688 /* ColorizeSyntaxVisitorTests.swift in Sources */, + OBJ_4689 /* SwiftWriterTests.swift in Sources */, ); }; - OBJ_4189 /* Sources */ = { + OBJ_4777 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4190 /* Package.swift in Sources */, + OBJ_4778 /* Package.swift in Sources */, ); }; - OBJ_4227 /* Sources */ = { + OBJ_4817 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4228 /* SwiftRewriterTests.swift in Sources */, + OBJ_4818 /* SwiftRewriterTests.swift in Sources */, ); }; - OBJ_4314 /* Sources */ = { + OBJ_4912 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4315 /* AbsolutePosition.swift in Sources */, - OBJ_4316 /* AtomicCounter.swift in Sources */, - OBJ_4317 /* CNodes.swift in Sources */, - OBJ_4318 /* IncrementalParseTransition.swift in Sources */, - OBJ_4319 /* RawSyntax.swift in Sources */, - OBJ_4320 /* SourceLength.swift in Sources */, - OBJ_4321 /* SourceLocation.swift in Sources */, - OBJ_4322 /* SourcePresence.swift in Sources */, - OBJ_4323 /* Syntax.swift in Sources */, - OBJ_4324 /* SyntaxChildren.swift in Sources */, - OBJ_4325 /* SyntaxClassifier.swift in Sources */, - OBJ_4326 /* SyntaxData.swift in Sources */, - OBJ_4327 /* SyntaxOtherNodes.swift in Sources */, - OBJ_4328 /* SyntaxVerifier.swift in Sources */, - OBJ_4329 /* Utils.swift in Sources */, - OBJ_4330 /* _SyntaxParserInterop.swift in Sources */, - OBJ_4331 /* Misc.swift in Sources */, - OBJ_4332 /* SyntaxAnyVisitor.swift in Sources */, - OBJ_4333 /* SyntaxBaseNodes.swift in Sources */, - OBJ_4334 /* SyntaxBuilders.swift in Sources */, - OBJ_4335 /* SyntaxClassification.swift in Sources */, - OBJ_4336 /* SyntaxCollections.swift in Sources */, - OBJ_4337 /* SyntaxEnum.swift in Sources */, - OBJ_4338 /* SyntaxFactory.swift in Sources */, - OBJ_4339 /* SyntaxKind.swift in Sources */, - OBJ_4340 /* SyntaxRewriter.swift in Sources */, - OBJ_4341 /* SyntaxTraits.swift in Sources */, - OBJ_4342 /* SyntaxVisitor.swift in Sources */, - OBJ_4343 /* TokenKind.swift in Sources */, - OBJ_4344 /* Trivia.swift in Sources */, - OBJ_4345 /* SyntaxDeclNodes.swift in Sources */, - OBJ_4346 /* SyntaxExprNodes.swift in Sources */, - OBJ_4347 /* SyntaxNodes.swift in Sources */, - OBJ_4348 /* SyntaxPatternNodes.swift in Sources */, - OBJ_4349 /* SyntaxStmtNodes.swift in Sources */, - OBJ_4350 /* SyntaxTypeNodes.swift in Sources */, - ); - }; - OBJ_4358 /* Sources */ = { + OBJ_4913 /* AbsolutePosition.swift in Sources */, + OBJ_4914 /* AtomicCounter.swift in Sources */, + OBJ_4915 /* CNodes.swift in Sources */, + OBJ_4916 /* IncrementalParseTransition.swift in Sources */, + OBJ_4917 /* RawSyntax.swift in Sources */, + OBJ_4918 /* SourceLength.swift in Sources */, + OBJ_4919 /* SourceLocation.swift in Sources */, + OBJ_4920 /* SourcePresence.swift in Sources */, + OBJ_4921 /* Syntax.swift in Sources */, + OBJ_4922 /* SyntaxChildren.swift in Sources */, + OBJ_4923 /* SyntaxClassifier.swift in Sources */, + OBJ_4924 /* SyntaxData.swift in Sources */, + OBJ_4925 /* SyntaxOtherNodes.swift in Sources */, + OBJ_4926 /* SyntaxVerifier.swift in Sources */, + OBJ_4927 /* Utils.swift in Sources */, + OBJ_4928 /* _SyntaxParserInterop.swift in Sources */, + OBJ_4929 /* Misc.swift in Sources */, + OBJ_4930 /* SyntaxAnyVisitor.swift in Sources */, + OBJ_4931 /* SyntaxBaseNodes.swift in Sources */, + OBJ_4932 /* SyntaxBuilders.swift in Sources */, + OBJ_4933 /* SyntaxClassification.swift in Sources */, + OBJ_4934 /* SyntaxCollections.swift in Sources */, + OBJ_4935 /* SyntaxEnum.swift in Sources */, + OBJ_4936 /* SyntaxFactory.swift in Sources */, + OBJ_4937 /* SyntaxKind.swift in Sources */, + OBJ_4938 /* SyntaxRewriter.swift in Sources */, + OBJ_4939 /* SyntaxTraits.swift in Sources */, + OBJ_4940 /* SyntaxVisitor.swift in Sources */, + OBJ_4941 /* TokenKind.swift in Sources */, + OBJ_4942 /* Trivia.swift in Sources */, + OBJ_4943 /* SyntaxDeclNodes.swift in Sources */, + OBJ_4944 /* SyntaxExprNodes.swift in Sources */, + OBJ_4945 /* SyntaxNodes.swift in Sources */, + OBJ_4946 /* SyntaxPatternNodes.swift in Sources */, + OBJ_4947 /* SyntaxStmtNodes.swift in Sources */, + OBJ_4948 /* SyntaxTypeNodes.swift in Sources */, + ); + }; + OBJ_4956 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4359 /* Package.swift in Sources */, + OBJ_4957 /* Package.swift in Sources */, ); }; - OBJ_4363 /* Sources */ = { + OBJ_4961 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4364 /* CNodes.swift in Sources */, - OBJ_4365 /* Diagnostic.swift in Sources */, - OBJ_4366 /* SyntaxParser.swift in Sources */, - OBJ_4367 /* NodeDeclarationHash.swift in Sources */, + OBJ_4962 /* CNodes.swift in Sources */, + OBJ_4963 /* Diagnostic.swift in Sources */, + OBJ_4964 /* SyntaxParser.swift in Sources */, + OBJ_4965 /* NodeDeclarationHash.swift in Sources */, ); }; - OBJ_4376 /* Sources */ = { + OBJ_4974 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4377 /* DefaultSyntaxPassProvider.swift in Sources */, - OBJ_4378 /* StatementSpacingSyntaxPass.swift in Sources */, + OBJ_4975 /* DefaultSyntaxPassProvider.swift in Sources */, + OBJ_4976 /* StatementSpacingSyntaxPass.swift in Sources */, ); }; - OBJ_4407 /* Sources */ = { + OBJ_5005 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4408 /* BaseSyntaxRewriterPassTest.swift in Sources */, - OBJ_4409 /* DefaultSyntaxPassProviderTests.swift in Sources */, - OBJ_4410 /* StatementSpacingSyntaxPassTests.swift in Sources */, + OBJ_5006 /* BaseSyntaxRewriterPassTest.swift in Sources */, + OBJ_5007 /* DefaultSyntaxPassProviderTests.swift in Sources */, + OBJ_5008 /* StatementSpacingSyntaxPassTests.swift in Sources */, ); }; - OBJ_4491 /* Sources */ = { + OBJ_5095 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4492 /* BaseSwiftSyntaxProducer.swift in Sources */, - OBJ_4493 /* DecoratableElement.swift in Sources */, - OBJ_4494 /* ModifiersSyntaxDecorators.swift in Sources */, - OBJ_4495 /* StartTokenHandler.swift in Sources */, - OBJ_4496 /* SwiftSyntax+Ext.swift in Sources */, - OBJ_4497 /* SwiftSyntaxProducer+Exp.swift in Sources */, - OBJ_4498 /* SwiftSyntaxProducer+Stmt.swift in Sources */, - OBJ_4499 /* SwiftSyntaxProducer.swift in Sources */, - OBJ_4500 /* SwiftSyntaxProducerDelegate.swift in Sources */, - OBJ_4501 /* SwiftSyntaxRewriterPass.swift in Sources */, - OBJ_4502 /* SwiftSyntaxRewriterPassApplier.swift in Sources */, - OBJ_4503 /* SwiftTypeConverter.swift in Sources */, - OBJ_4504 /* VariableDeclSyntaxGenerator.swift in Sources */, - OBJ_4505 /* VariableDeclarationGrouping.swift in Sources */, - ); - }; - OBJ_4532 /* Sources */ = { + OBJ_5096 /* BaseSwiftSyntaxProducer.swift in Sources */, + OBJ_5097 /* DecoratableElement.swift in Sources */, + OBJ_5098 /* ModifiersSyntaxDecorators.swift in Sources */, + OBJ_5099 /* StartTokenHandler.swift in Sources */, + OBJ_5100 /* SwiftSyntax+Ext.swift in Sources */, + OBJ_5101 /* SwiftSyntaxProducer+Exp.swift in Sources */, + OBJ_5102 /* SwiftSyntaxProducer+Stmt.swift in Sources */, + OBJ_5103 /* SwiftSyntaxProducer.swift in Sources */, + OBJ_5104 /* SwiftSyntaxProducerDelegate.swift in Sources */, + OBJ_5105 /* SwiftSyntaxRewriterPass.swift in Sources */, + OBJ_5106 /* SwiftSyntaxRewriterPassApplier.swift in Sources */, + OBJ_5107 /* SwiftTypeConverter.swift in Sources */, + OBJ_5108 /* VariableDeclSyntaxGenerator.swift in Sources */, + OBJ_5109 /* VariableDeclarationGrouping.swift in Sources */, + ); + }; + OBJ_5136 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4533 /* BaseSwiftSyntaxProducerTests.swift in Sources */, - OBJ_4534 /* ModifiersSyntaxDecoratorsTests.swift in Sources */, - OBJ_4535 /* SwiftSyntaxProducer+ExpTests.swift in Sources */, - OBJ_4536 /* SwiftSyntaxProducer+StmtTests.swift in Sources */, - OBJ_4537 /* SwiftSyntaxProducerTests.swift in Sources */, - OBJ_4538 /* SwiftTypeConversionTests.swift in Sources */, + OBJ_5137 /* BaseSwiftSyntaxProducerTests.swift in Sources */, + OBJ_5138 /* ModifiersSyntaxDecoratorsTests.swift in Sources */, + OBJ_5139 /* SwiftSyntaxProducer+ExpTests.swift in Sources */, + OBJ_5140 /* SwiftSyntaxProducer+StmtTests.swift in Sources */, + OBJ_5141 /* SwiftSyntaxProducerTests.swift in Sources */, + OBJ_5142 /* SwiftTypeConversionTests.swift in Sources */, ); }; - OBJ_4619 /* Sources */ = { + OBJ_5229 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4620 /* Array+Testing.swift in Sources */, - OBJ_4621 /* Asserter.swift in Sources */, - OBJ_4622 /* Antlr+Asserter.swift in Sources */, - OBJ_4623 /* Asserter+KeyPath.swift in Sources */, - OBJ_4624 /* ASTNode+Asserter.swift in Sources */, - OBJ_4625 /* RawCodeComment+Asserter.swift in Sources */, - OBJ_4626 /* ClassExtensionGenerationIntention+Asserter.swift in Sources */, - OBJ_4627 /* FileGenerationIntention+Asserter.swift in Sources */, - OBJ_4628 /* FromSourceIntention+Asserter.swift in Sources */, - OBJ_4629 /* FunctionBodyIntention+Asserter.swift in Sources */, - OBJ_4630 /* FunctionIntention+Asserter.swift in Sources */, - OBJ_4631 /* Historic+Asserter.swift in Sources */, - OBJ_4632 /* IntentionCollection+Asserter.swift in Sources */, - OBJ_4633 /* MethodGenerationIntention+Asserter.swift in Sources */, - OBJ_4634 /* PropertyGenerationIntention+Asserter.swift in Sources */, - OBJ_4635 /* SubscriptGenerationIntention+Asserter.swift in Sources */, - OBJ_4636 /* TypeGenerationIntention+Asserter.swift in Sources */, - OBJ_4637 /* ValueStorageIntention+Asserter.swift in Sources */, - OBJ_4638 /* ObjcASTNode+Asserter.swift in Sources */, - OBJ_4639 /* ObjcClassCategoryInterfaceNode+Asserter.swift in Sources */, - OBJ_4640 /* ObjcClassInterfaceNode+Asserter.swift in Sources */, - OBJ_4641 /* ObjcConstantExpressionNode+Asserter.swift in Sources */, - OBJ_4642 /* ObjcEnumCaseNode+Asserter.swift in Sources */, - OBJ_4643 /* ObjcEnumDeclarationNode+Asserter.swift in Sources */, - OBJ_4644 /* ObjcExpressionNode+Asserter.swift in Sources */, - OBJ_4645 /* ObjcFunctionDefinitionNode+Asserter.swift in Sources */, - OBJ_4646 /* ObjcFunctionParameterNode+Asserter.swift in Sources */, - OBJ_4647 /* ObjcIdentifierNode+Asserter.swift in Sources */, - OBJ_4648 /* ObjcInitialExpressionNode+Asserter.swift in Sources */, - OBJ_4649 /* ObjcMethodBodyNode+Asserter.swift in Sources */, - OBJ_4650 /* ObjcMethodDefinitionNode+Asserter.swift in Sources */, - OBJ_4651 /* ObjcPropertyAttributesListNode+Asserter.swift in Sources */, - OBJ_4652 /* ObjcPropertyDefinitionNode+Asserter.swift in Sources */, - OBJ_4653 /* ObjcPropertyImplementationNode+Asserter.swift in Sources */, - OBJ_4654 /* ObjcPropertySynthesizeListNode+Asserter.swift in Sources */, - OBJ_4655 /* ObjcProtocolDeclaration+Asserter.swift in Sources */, - OBJ_4656 /* ObjcStructDeclarationNode+Asserter.swift in Sources */, - OBJ_4657 /* ObjcStructFieldNode+Asserter.swift in Sources */, - OBJ_4658 /* ObjcTypeNameNode+Asserter.swift in Sources */, - OBJ_4659 /* ObjcTypedefNode+Asserter.swift in Sources */, - OBJ_4660 /* ObjcVariableDeclarationNode+Asserter.swift in Sources */, - OBJ_4661 /* ObjcImportDecl+Asserter.swift in Sources */, - OBJ_4662 /* AnyObject+Asserter.swift in Sources */, - OBJ_4663 /* Bool+Asserter.swift in Sources */, - OBJ_4664 /* Collection+Asserter.swift in Sources */, - OBJ_4665 /* Equatable+Asserter.swift in Sources */, - OBJ_4666 /* IteratorProtocol+Asserter.swift in Sources */, - OBJ_4667 /* Sequence+Asserter.swift in Sources */, - OBJ_4668 /* Expression+Asserter.swift in Sources */, - OBJ_4669 /* FunctionSignature+Asserter.swift in Sources */, - OBJ_4670 /* ParameterSignature+Asserter.swift in Sources */, - OBJ_4671 /* Statement+Asserter.swift in Sources */, - OBJ_4672 /* SourceRange+Asserter.swift in Sources */, - OBJ_4673 /* DeclarationBuilder.swift in Sources */, - OBJ_4674 /* IntentionCollectionBuilder.swift in Sources */, - OBJ_4675 /* MemberBuilder.swift in Sources */, - OBJ_4676 /* TypeBuilder.swift in Sources */, - OBJ_4677 /* _FunctionBuilder.swift in Sources */, - OBJ_4678 /* ExpressionPassTestCase.swift in Sources */, - OBJ_4679 /* ExpressionPrinter.swift in Sources */, - OBJ_4680 /* MersenneTwister.swift in Sources */, - OBJ_4681 /* StatementPrinter.swift in Sources */, - OBJ_4682 /* StringDiffTesting.swift in Sources */, - OBJ_4683 /* SyntaxNode+TestUtils.swift in Sources */, - OBJ_4684 /* TestWriterOutput.swift in Sources */, - OBJ_4685 /* VirtualFileDisk.swift in Sources */, - ); - }; - OBJ_4764 /* Sources */ = { + OBJ_5230 /* Array+Testing.swift in Sources */, + OBJ_5231 /* Asserter.swift in Sources */, + OBJ_5232 /* Antlr+Asserter.swift in Sources */, + OBJ_5233 /* Asserter+KeyPath.swift in Sources */, + OBJ_5234 /* ASTNode+Asserter.swift in Sources */, + OBJ_5235 /* RawCodeComment+Asserter.swift in Sources */, + OBJ_5236 /* ClassExtensionGenerationIntention+Asserter.swift in Sources */, + OBJ_5237 /* FileGenerationIntention+Asserter.swift in Sources */, + OBJ_5238 /* FromSourceIntention+Asserter.swift in Sources */, + OBJ_5239 /* FunctionBodyIntention+Asserter.swift in Sources */, + OBJ_5240 /* FunctionIntention+Asserter.swift in Sources */, + OBJ_5241 /* Historic+Asserter.swift in Sources */, + OBJ_5242 /* IntentionCollection+Asserter.swift in Sources */, + OBJ_5243 /* MethodGenerationIntention+Asserter.swift in Sources */, + OBJ_5244 /* PropertyGenerationIntention+Asserter.swift in Sources */, + OBJ_5245 /* SubscriptGenerationIntention+Asserter.swift in Sources */, + OBJ_5246 /* TypeGenerationIntention+Asserter.swift in Sources */, + OBJ_5247 /* ValueStorageIntention+Asserter.swift in Sources */, + OBJ_5248 /* JsFunctionBodyNode+Asserter.swift in Sources */, + OBJ_5249 /* JsFunctionDefinitionNode+Asserter.swift in Sources */, + OBJ_5250 /* JsIdentifierNode+Asserter.swift in Sources */, + OBJ_5251 /* ObjcASTNode+Asserter.swift in Sources */, + OBJ_5252 /* ObjcClassCategoryInterfaceNode+Asserter.swift in Sources */, + OBJ_5253 /* ObjcClassInterfaceNode+Asserter.swift in Sources */, + OBJ_5254 /* ObjcConstantExpressionNode+Asserter.swift in Sources */, + OBJ_5255 /* ObjcEnumCaseNode+Asserter.swift in Sources */, + OBJ_5256 /* ObjcEnumDeclarationNode+Asserter.swift in Sources */, + OBJ_5257 /* ObjcExpressionNode+Asserter.swift in Sources */, + OBJ_5258 /* ObjcFunctionDefinitionNode+Asserter.swift in Sources */, + OBJ_5259 /* ObjcFunctionParameterNode+Asserter.swift in Sources */, + OBJ_5260 /* ObjcIdentifierNode+Asserter.swift in Sources */, + OBJ_5261 /* ObjcInitialExpressionNode+Asserter.swift in Sources */, + OBJ_5262 /* ObjcMethodBodyNode+Asserter.swift in Sources */, + OBJ_5263 /* ObjcMethodDefinitionNode+Asserter.swift in Sources */, + OBJ_5264 /* ObjcPropertyAttributesListNode+Asserter.swift in Sources */, + OBJ_5265 /* ObjcPropertyDefinitionNode+Asserter.swift in Sources */, + OBJ_5266 /* ObjcPropertyImplementationNode+Asserter.swift in Sources */, + OBJ_5267 /* ObjcPropertySynthesizeListNode+Asserter.swift in Sources */, + OBJ_5268 /* ObjcProtocolDeclaration+Asserter.swift in Sources */, + OBJ_5269 /* ObjcStructDeclarationNode+Asserter.swift in Sources */, + OBJ_5270 /* ObjcStructFieldNode+Asserter.swift in Sources */, + OBJ_5271 /* ObjcTypeNameNode+Asserter.swift in Sources */, + OBJ_5272 /* ObjcTypedefNode+Asserter.swift in Sources */, + OBJ_5273 /* ObjcVariableDeclarationNode+Asserter.swift in Sources */, + OBJ_5274 /* ObjcImportDecl+Asserter.swift in Sources */, + OBJ_5275 /* AnyObject+Asserter.swift in Sources */, + OBJ_5276 /* Bool+Asserter.swift in Sources */, + OBJ_5277 /* Collection+Asserter.swift in Sources */, + OBJ_5278 /* Equatable+Asserter.swift in Sources */, + OBJ_5279 /* IteratorProtocol+Asserter.swift in Sources */, + OBJ_5280 /* Sequence+Asserter.swift in Sources */, + OBJ_5281 /* Expression+Asserter.swift in Sources */, + OBJ_5282 /* FunctionSignature+Asserter.swift in Sources */, + OBJ_5283 /* ParameterSignature+Asserter.swift in Sources */, + OBJ_5284 /* Statement+Asserter.swift in Sources */, + OBJ_5285 /* SourceRange+Asserter.swift in Sources */, + OBJ_5286 /* DeclarationBuilder.swift in Sources */, + OBJ_5287 /* IntentionCollectionBuilder.swift in Sources */, + OBJ_5288 /* MemberBuilder.swift in Sources */, + OBJ_5289 /* TypeBuilder.swift in Sources */, + OBJ_5290 /* _FunctionBuilder.swift in Sources */, + OBJ_5291 /* ExpressionPassTestCase.swift in Sources */, + OBJ_5292 /* ExpressionPrinter.swift in Sources */, + OBJ_5293 /* MersenneTwister.swift in Sources */, + OBJ_5294 /* StatementPrinter.swift in Sources */, + OBJ_5295 /* StringDiffTesting.swift in Sources */, + OBJ_5296 /* SyntaxNode+TestUtils.swift in Sources */, + OBJ_5297 /* TestWriterOutput.swift in Sources */, + OBJ_5298 /* VirtualFileDisk.swift in Sources */, + ); + }; + OBJ_5383 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4765 /* StringDiffTestingTests.swift in Sources */, - OBJ_4766 /* VirtualFileDiskTests.swift in Sources */, + OBJ_5384 /* StringDiffTestingTests.swift in Sources */, + OBJ_5385 /* VirtualFileDiskTests.swift in Sources */, ); }; - OBJ_4847 /* Sources */ = { + OBJ_5472 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4848 /* TypeDefinitions.swift in Sources */, + OBJ_5473 /* TypeDefinitions.swift in Sources */, ); }; - OBJ_4853 /* Sources */ = { + OBJ_5478 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4854 /* TypeLexers.swift in Sources */, + OBJ_5479 /* TypeLexers.swift in Sources */, ); }; - OBJ_4861 /* Sources */ = { + OBJ_5486 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4862 /* CodeDefinition.swift in Sources */, - OBJ_4863 /* GlobalCodeDefinition.swift in Sources */, - OBJ_4864 /* GlobalIntentionCodeDefinition.swift in Sources */, - OBJ_4865 /* KnownMemberCodeDefinition.swift in Sources */, - OBJ_4866 /* LocalCodeDefinition.swift in Sources */, - OBJ_4867 /* TypeCodeDefinition.swift in Sources */, - OBJ_4868 /* ArrayDefinitionsSource.swift in Sources */, - OBJ_4869 /* CodeScope.swift in Sources */, - OBJ_4870 /* CompoundDefinitionsSource.swift in Sources */, - OBJ_4871 /* DefaultCodeScope.swift in Sources */, - OBJ_4872 /* DefinitionsSource.swift in Sources */, - OBJ_4873 /* SyntaxNode+CodeScope.swift in Sources */, - OBJ_4874 /* CompoundKnownType.swift in Sources */, - OBJ_4875 /* GlobalsProvider.swift in Sources */, - OBJ_4876 /* IntentionCollectionTypeSystem.swift in Sources */, - OBJ_4877 /* DynamicMemberLookup.swift in Sources */, - OBJ_4878 /* KnownTypeMemberLookup.swift in Sources */, - OBJ_4879 /* MemberLookupType.swift in Sources */, - OBJ_4880 /* MemberSearchCache.swift in Sources */, - OBJ_4881 /* SwiftTypeMemberLookup.swift in Sources */, - OBJ_4882 /* TypeMemberLookupContext.swift in Sources */, - OBJ_4883 /* OverloadResolver.swift in Sources */, - OBJ_4884 /* KnownTypeProvider.swift in Sources */, - OBJ_4885 /* TypealiasProvider.swift in Sources */, - OBJ_4886 /* TypeCategory.swift in Sources */, - OBJ_4887 /* TypeMapper.swift in Sources */, - OBJ_4888 /* TypeMemberLookup.swift in Sources */, - OBJ_4889 /* CallableTypeResolver.swift in Sources */, - OBJ_4890 /* CoercionVerifier.swift in Sources */, - OBJ_4891 /* DefaultLocalTypeResolverInvoker.swift in Sources */, - OBJ_4892 /* DefaultTypeResolverInvoker.swift in Sources */, - OBJ_4893 /* ExpressionTypeResolver.swift in Sources */, - OBJ_4894 /* IteratorTypeResolver.swift in Sources */, - OBJ_4895 /* LocalTypeResolverInvoker.swift in Sources */, - OBJ_4896 /* PatternMatcher.swift in Sources */, - OBJ_4897 /* TypeResolverIntrinsicsBuilder.swift in Sources */, - OBJ_4898 /* TypeResolverInvoker.swift in Sources */, - OBJ_4899 /* TypeSystem.swift in Sources */, - ); - }; - OBJ_4938 /* Sources */ = { + OBJ_5487 /* CodeDefinition.swift in Sources */, + OBJ_5488 /* GlobalCodeDefinition.swift in Sources */, + OBJ_5489 /* GlobalIntentionCodeDefinition.swift in Sources */, + OBJ_5490 /* KnownMemberCodeDefinition.swift in Sources */, + OBJ_5491 /* LocalCodeDefinition.swift in Sources */, + OBJ_5492 /* TypeCodeDefinition.swift in Sources */, + OBJ_5493 /* ArrayDefinitionsSource.swift in Sources */, + OBJ_5494 /* CodeScope.swift in Sources */, + OBJ_5495 /* CompoundDefinitionsSource.swift in Sources */, + OBJ_5496 /* DefaultCodeScope.swift in Sources */, + OBJ_5497 /* DefinitionsSource.swift in Sources */, + OBJ_5498 /* SyntaxNode+CodeScope.swift in Sources */, + OBJ_5499 /* CompoundKnownType.swift in Sources */, + OBJ_5500 /* GlobalsProvider.swift in Sources */, + OBJ_5501 /* IntentionCollectionTypeSystem.swift in Sources */, + OBJ_5502 /* DynamicMemberLookup.swift in Sources */, + OBJ_5503 /* KnownTypeMemberLookup.swift in Sources */, + OBJ_5504 /* MemberLookupType.swift in Sources */, + OBJ_5505 /* MemberSearchCache.swift in Sources */, + OBJ_5506 /* SwiftTypeMemberLookup.swift in Sources */, + OBJ_5507 /* TypeMemberLookupContext.swift in Sources */, + OBJ_5508 /* OverloadResolver.swift in Sources */, + OBJ_5509 /* KnownTypeProvider.swift in Sources */, + OBJ_5510 /* TypealiasProvider.swift in Sources */, + OBJ_5511 /* TypeCategory.swift in Sources */, + OBJ_5512 /* TypeMapper.swift in Sources */, + OBJ_5513 /* TypeMemberLookup.swift in Sources */, + OBJ_5514 /* CallableTypeResolver.swift in Sources */, + OBJ_5515 /* CoercionVerifier.swift in Sources */, + OBJ_5516 /* DefaultLocalTypeResolverInvoker.swift in Sources */, + OBJ_5517 /* DefaultTypeResolverInvoker.swift in Sources */, + OBJ_5518 /* ExpressionTypeResolver.swift in Sources */, + OBJ_5519 /* IteratorTypeResolver.swift in Sources */, + OBJ_5520 /* LocalTypeResolverInvoker.swift in Sources */, + OBJ_5521 /* PatternMatcher.swift in Sources */, + OBJ_5522 /* TypeResolverIntrinsicsBuilder.swift in Sources */, + OBJ_5523 /* TypeResolverInvoker.swift in Sources */, + OBJ_5524 /* TypeSystem.swift in Sources */, + ); + }; + OBJ_5563 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_4939 /* CodeDefinitionTests.swift in Sources */, - OBJ_4940 /* DefaultCodeScopeTests.swift in Sources */, - OBJ_4941 /* DefaultTypeMapperTests.swift in Sources */, - OBJ_4942 /* DefaultTypeResolverInvokerTests.swift in Sources */, - OBJ_4943 /* ExpressionTypeResolverTests+Fixtures.swift in Sources */, - OBJ_4944 /* IntentionCollectionTypeSystemTests.swift in Sources */, - OBJ_4945 /* KnownTypeMemberLookupTests.swift in Sources */, - OBJ_4946 /* OverloadResolverTests.swift in Sources */, - OBJ_4947 /* CallableTypeResolverTests.swift in Sources */, - OBJ_4948 /* CoercionVerifierTests.swift in Sources */, - OBJ_4949 /* ExpressionTypeResolverTests+DynamicMemberLookup.swift in Sources */, - OBJ_4950 /* ExpressionTypeResolverTests.swift in Sources */, - OBJ_4951 /* IteratorTypeResolverTests.swift in Sources */, - OBJ_4952 /* PatternMatcherTests.swift in Sources */, - OBJ_4953 /* TypeSystemTests.swift in Sources */, - ); - }; - OBJ_5034 /* Sources */ = { + OBJ_5564 /* CodeDefinitionTests.swift in Sources */, + OBJ_5565 /* DefaultCodeScopeTests.swift in Sources */, + OBJ_5566 /* DefaultTypeMapperTests.swift in Sources */, + OBJ_5567 /* DefaultTypeResolverInvokerTests.swift in Sources */, + OBJ_5568 /* ExpressionTypeResolverTests+Fixtures.swift in Sources */, + OBJ_5569 /* IntentionCollectionTypeSystemTests.swift in Sources */, + OBJ_5570 /* KnownTypeMemberLookupTests.swift in Sources */, + OBJ_5571 /* OverloadResolverTests.swift in Sources */, + OBJ_5572 /* CallableTypeResolverTests.swift in Sources */, + OBJ_5573 /* CoercionVerifierTests.swift in Sources */, + OBJ_5574 /* ExpressionTypeResolverTests+DynamicMemberLookup.swift in Sources */, + OBJ_5575 /* ExpressionTypeResolverTests.swift in Sources */, + OBJ_5576 /* IteratorTypeResolverTests.swift in Sources */, + OBJ_5577 /* PatternMatcherTests.swift in Sources */, + OBJ_5578 /* TypeSystemTests.swift in Sources */, + ); + }; + OBJ_5665 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_5035 /* CodeSource.swift in Sources */, - OBJ_5036 /* ConcurrentOperationQueue.swift in Sources */, - OBJ_5037 /* ConcurrentValue.swift in Sources */, - OBJ_5038 /* Diagnostics.swift in Sources */, - OBJ_5039 /* InvalidSource.swift in Sources */, - OBJ_5040 /* LinuxSupport.swift in Sources */, - OBJ_5041 /* Mutex.swift in Sources */, - OBJ_5042 /* Source.swift in Sources */, - OBJ_5043 /* SourceLength.swift in Sources */, - OBJ_5044 /* SourceLocation.swift in Sources */, - OBJ_5045 /* SourceRange.swift in Sources */, - OBJ_5046 /* String.swift in Sources */, - OBJ_5047 /* StringCodeSource.swift in Sources */, - OBJ_5048 /* Utils.swift in Sources */, - ); - }; - OBJ_5053 /* Sources */ = { + OBJ_5666 /* CodeSource.swift in Sources */, + OBJ_5667 /* ConcurrentOperationQueue.swift in Sources */, + OBJ_5668 /* ConcurrentValue.swift in Sources */, + OBJ_5669 /* Diagnostics.swift in Sources */, + OBJ_5670 /* InvalidSource.swift in Sources */, + OBJ_5671 /* LinuxSupport.swift in Sources */, + OBJ_5672 /* Mutex.swift in Sources */, + OBJ_5673 /* Source.swift in Sources */, + OBJ_5674 /* SourceLength.swift in Sources */, + OBJ_5675 /* SourceLocation.swift in Sources */, + OBJ_5676 /* SourceRange.swift in Sources */, + OBJ_5677 /* String.swift in Sources */, + OBJ_5678 /* StringCodeSource.swift in Sources */, + OBJ_5679 /* Utils.swift in Sources */, + ); + }; + OBJ_5684 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_5054 /* ConcurrentOperationQueueTests.swift in Sources */, - OBJ_5055 /* ConcurrentValueTests.swift in Sources */, - OBJ_5056 /* InvalidSourceTests.swift in Sources */, - OBJ_5057 /* MutexTests.swift in Sources */, - OBJ_5058 /* SourceRangeTests.swift in Sources */, - OBJ_5059 /* StringCodeSourceTests.swift in Sources */, - OBJ_5060 /* StringTests.swift in Sources */, + OBJ_5685 /* ConcurrentOperationQueueTests.swift in Sources */, + OBJ_5686 /* ConcurrentValueTests.swift in Sources */, + OBJ_5687 /* InvalidSourceTests.swift in Sources */, + OBJ_5688 /* MutexTests.swift in Sources */, + OBJ_5689 /* SourceRangeTests.swift in Sources */, + OBJ_5690 /* StringCodeSourceTests.swift in Sources */, + OBJ_5691 /* StringTests.swift in Sources */, ); }; - OBJ_5067 /* Sources */ = { + OBJ_5698 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_5068 /* NullRewriterOutputTarget.swift in Sources */, - OBJ_5069 /* RewriterOutputTarget.swift in Sources */, - OBJ_5070 /* StringRewriterOutput.swift in Sources */, + OBJ_5699 /* NullRewriterOutputTarget.swift in Sources */, + OBJ_5700 /* RewriterOutputTarget.swift in Sources */, + OBJ_5701 /* StringRewriterOutput.swift in Sources */, ); }; - OBJ_5081 /* Sources */ = { + OBJ_5712 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_5082 /* RewriterOutputTarget.swift in Sources */, - OBJ_5083 /* StringRewriterOutputTests.swift in Sources */, + OBJ_5713 /* RewriterOutputTarget.swift in Sources */, + OBJ_5714 /* StringRewriterOutputTests.swift in Sources */, ); }; - OBJ_5164 /* Sources */ = { + OBJ_5801 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_5165 /* atomic-counter.c in Sources */, + OBJ_5802 /* atomic-counter.c in Sources */, ); }; - OBJ_5171 /* Sources */ = { + OBJ_5808 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_5172 /* Package.swift in Sources */, + OBJ_5809 /* Package.swift in Sources */, ); }; - OBJ_5177 /* Sources */ = { + OBJ_5814 /* Sources */ = { isa = PBXSourcesBuildPhase; files = ( - OBJ_5178 /* Package.swift in Sources */, + OBJ_5815 /* Package.swift in Sources */, ); }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - OBJ_1402 /* PBXTargetDependency */ = { + OBJ_1495 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_1404 /* PBXTargetDependency */ = { + OBJ_1497 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_1406 /* PBXTargetDependency */ = { + OBJ_1499 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_1408 /* PBXTargetDependency */ = { + OBJ_1501 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_1410 /* PBXTargetDependency */ = { + OBJ_1503 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_1412 /* PBXTargetDependency */ = { + OBJ_1505 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_1414 /* PBXTargetDependency */ = { + OBJ_1507 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_1416 /* PBXTargetDependency */ = { + OBJ_1509 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_1418 /* PBXTargetDependency */ = { + OBJ_1511 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_1420 /* PBXTargetDependency */ = { + OBJ_1513 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_1422 /* PBXTargetDependency */ = { + OBJ_1515 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_1424 /* PBXTargetDependency */ = { + OBJ_1517 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_1426 /* PBXTargetDependency */ = { + OBJ_1519 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_1428 /* PBXTargetDependency */ = { + OBJ_1521 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_1430 /* PBXTargetDependency */ = { + OBJ_1523 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_1432 /* PBXTargetDependency */ = { + OBJ_1525 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_1434 /* PBXTargetDependency */ = { + OBJ_1527 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_1436 /* PBXTargetDependency */ = { + OBJ_1529 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_1438 /* PBXTargetDependency */ = { + OBJ_1531 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_1440 /* PBXTargetDependency */ = { + OBJ_1533 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_1501 /* PBXTargetDependency */ = { + OBJ_1597 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_1503 /* PBXTargetDependency */ = { + OBJ_1599 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_1505 /* PBXTargetDependency */ = { + OBJ_1601 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_1507 /* PBXTargetDependency */ = { + OBJ_1603 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_1509 /* PBXTargetDependency */ = { + OBJ_1605 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_1511 /* PBXTargetDependency */ = { + OBJ_1607 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_1513 /* PBXTargetDependency */ = { + OBJ_1609 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_1515 /* PBXTargetDependency */ = { + OBJ_1611 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_1517 /* PBXTargetDependency */ = { + OBJ_1613 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_1519 /* PBXTargetDependency */ = { + OBJ_1615 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_1521 /* PBXTargetDependency */ = { + OBJ_1617 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_1523 /* PBXTargetDependency */ = { + OBJ_1619 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_1621 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_1623 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_1625 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_1525 /* PBXTargetDependency */ = { + OBJ_1627 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_1527 /* PBXTargetDependency */ = { + OBJ_1629 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_1529 /* PBXTargetDependency */ = { + OBJ_1631 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_1531 /* PBXTargetDependency */ = { + OBJ_1633 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_1533 /* PBXTargetDependency */ = { + OBJ_1635 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_1535 /* PBXTargetDependency */ = { + OBJ_1637 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_1536 /* PBXTargetDependency */ = { + OBJ_1638 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_1537 /* PBXTargetDependency */ = { + OBJ_1639 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_1538 /* PBXTargetDependency */ = { + OBJ_1640 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_1539 /* PBXTargetDependency */ = { + OBJ_1641 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_1540 /* PBXTargetDependency */ = { + OBJ_1642 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_1541 /* PBXTargetDependency */ = { + OBJ_1643 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_1542 /* PBXTargetDependency */ = { + OBJ_1644 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_1543 /* PBXTargetDependency */ = { + OBJ_1645 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_1544 /* PBXTargetDependency */ = { + OBJ_1646 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_1545 /* PBXTargetDependency */ = { + OBJ_1647 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_1546 /* PBXTargetDependency */ = { + OBJ_1648 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_1547 /* PBXTargetDependency */ = { + OBJ_1649 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_1548 /* PBXTargetDependency */ = { + OBJ_1650 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_1549 /* PBXTargetDependency */ = { + OBJ_1651 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_1550 /* PBXTargetDependency */ = { + OBJ_1652 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_1551 /* PBXTargetDependency */ = { + OBJ_1653 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_1552 /* PBXTargetDependency */ = { + OBJ_1654 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_1553 /* PBXTargetDependency */ = { + OBJ_1655 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_1554 /* PBXTargetDependency */ = { + OBJ_1656 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_1555 /* PBXTargetDependency */ = { + OBJ_1657 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_1717 /* PBXTargetDependency */ = { + OBJ_1819 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_1736 /* PBXTargetDependency */ = { + OBJ_1838 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_1737 /* PBXTargetDependency */ = { + OBJ_1839 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_1738 /* PBXTargetDependency */ = { + OBJ_1840 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_1785 /* PBXTargetDependency */ = { + OBJ_1887 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-argument-parser::ArgumentParserToolInfo /* ArgumentParserToolInfo */; }; - OBJ_1843 /* PBXTargetDependency */ = { + OBJ_1945 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_1844 /* PBXTargetDependency */ = { + OBJ_1946 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_1845 /* PBXTargetDependency */ = { + OBJ_1947 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_1846 /* PBXTargetDependency */ = { + OBJ_1948 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_1847 /* PBXTargetDependency */ = { + OBJ_1949 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_1848 /* PBXTargetDependency */ = { + OBJ_1950 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_1849 /* PBXTargetDependency */ = { + OBJ_1951 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_1850 /* PBXTargetDependency */ = { + OBJ_1952 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_1851 /* PBXTargetDependency */ = { + OBJ_1953 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_1852 /* PBXTargetDependency */ = { + OBJ_1954 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_1853 /* PBXTargetDependency */ = { + OBJ_1955 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_1854 /* PBXTargetDependency */ = { + OBJ_1956 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_1855 /* PBXTargetDependency */ = { + OBJ_1957 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_1856 /* PBXTargetDependency */ = { + OBJ_1958 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_1857 /* PBXTargetDependency */ = { + OBJ_1959 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_1858 /* PBXTargetDependency */ = { + OBJ_1960 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_1859 /* PBXTargetDependency */ = { + OBJ_1961 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_1860 /* PBXTargetDependency */ = { + OBJ_1962 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_1914 /* PBXTargetDependency */ = { + OBJ_2019 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_1915 /* PBXTargetDependency */ = { + OBJ_2020 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_1916 /* PBXTargetDependency */ = { + OBJ_2021 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_1917 /* PBXTargetDependency */ = { + OBJ_2022 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_1918 /* PBXTargetDependency */ = { + OBJ_2023 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_1919 /* PBXTargetDependency */ = { + OBJ_2024 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_1920 /* PBXTargetDependency */ = { + OBJ_2025 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_1921 /* PBXTargetDependency */ = { + OBJ_2026 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_1922 /* PBXTargetDependency */ = { + OBJ_2027 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_1923 /* PBXTargetDependency */ = { + OBJ_2028 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_2029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_2030 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_2031 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_1924 /* PBXTargetDependency */ = { + OBJ_2032 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_1925 /* PBXTargetDependency */ = { + OBJ_2033 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_1926 /* PBXTargetDependency */ = { + OBJ_2034 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_1927 /* PBXTargetDependency */ = { + OBJ_2035 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_1928 /* PBXTargetDependency */ = { + OBJ_2036 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_1929 /* PBXTargetDependency */ = { + OBJ_2037 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_1930 /* PBXTargetDependency */ = { + OBJ_2038 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_1931 /* PBXTargetDependency */ = { + OBJ_2039 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_1932 /* PBXTargetDependency */ = { + OBJ_2040 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_1933 /* PBXTargetDependency */ = { + OBJ_2041 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_1934 /* PBXTargetDependency */ = { + OBJ_2042 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_1935 /* PBXTargetDependency */ = { + OBJ_2043 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_1936 /* PBXTargetDependency */ = { + OBJ_2044 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_1937 /* PBXTargetDependency */ = { + OBJ_2045 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_1938 /* PBXTargetDependency */ = { + OBJ_2046 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_1939 /* PBXTargetDependency */ = { + OBJ_2047 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_1940 /* PBXTargetDependency */ = { + OBJ_2048 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_1941 /* PBXTargetDependency */ = { + OBJ_2049 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_1942 /* PBXTargetDependency */ = { + OBJ_2050 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_1943 /* PBXTargetDependency */ = { + OBJ_2051 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_1944 /* PBXTargetDependency */ = { + OBJ_2052 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_1945 /* PBXTargetDependency */ = { + OBJ_2053 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_1946 /* PBXTargetDependency */ = { + OBJ_2054 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_1947 /* PBXTargetDependency */ = { + OBJ_2055 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_1948 /* PBXTargetDependency */ = { + OBJ_2056 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_1949 /* PBXTargetDependency */ = { + OBJ_2057 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2017 /* PBXTargetDependency */ = { + OBJ_2125 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_2018 /* PBXTargetDependency */ = { + OBJ_2126 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_2019 /* PBXTargetDependency */ = { + OBJ_2127 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_2020 /* PBXTargetDependency */ = { + OBJ_2128 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_2021 /* PBXTargetDependency */ = { + OBJ_2129 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_2022 /* PBXTargetDependency */ = { + OBJ_2130 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_2023 /* PBXTargetDependency */ = { + OBJ_2131 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_2024 /* PBXTargetDependency */ = { + OBJ_2132 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_2025 /* PBXTargetDependency */ = { + OBJ_2133 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_2026 /* PBXTargetDependency */ = { + OBJ_2134 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_2027 /* PBXTargetDependency */ = { + OBJ_2135 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2028 /* PBXTargetDependency */ = { + OBJ_2136 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_2029 /* PBXTargetDependency */ = { + OBJ_2137 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_2030 /* PBXTargetDependency */ = { + OBJ_2138 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2031 /* PBXTargetDependency */ = { + OBJ_2139 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2032 /* PBXTargetDependency */ = { + OBJ_2140 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_2033 /* PBXTargetDependency */ = { + OBJ_2141 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_2034 /* PBXTargetDependency */ = { + OBJ_2142 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_2035 /* PBXTargetDependency */ = { + OBJ_2143 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_2036 /* PBXTargetDependency */ = { + OBJ_2144 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_2037 /* PBXTargetDependency */ = { + OBJ_2145 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2099 /* PBXTargetDependency */ = { + OBJ_2210 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_2100 /* PBXTargetDependency */ = { + OBJ_2211 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_2101 /* PBXTargetDependency */ = { + OBJ_2212 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_2102 /* PBXTargetDependency */ = { + OBJ_2213 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_2103 /* PBXTargetDependency */ = { + OBJ_2214 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_2104 /* PBXTargetDependency */ = { + OBJ_2215 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_2105 /* PBXTargetDependency */ = { + OBJ_2216 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_2106 /* PBXTargetDependency */ = { + OBJ_2217 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_2107 /* PBXTargetDependency */ = { + OBJ_2218 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_2108 /* PBXTargetDependency */ = { + OBJ_2219 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_2109 /* PBXTargetDependency */ = { + OBJ_2220 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_2110 /* PBXTargetDependency */ = { + OBJ_2221 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + target = swiftrewriter::JsParser /* JsParser */; }; - OBJ_2111 /* PBXTargetDependency */ = { + OBJ_2222 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; }; - OBJ_2112 /* PBXTargetDependency */ = { + OBJ_2223 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; - OBJ_2113 /* PBXTargetDependency */ = { + OBJ_2224 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + }; + OBJ_2225 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + }; + OBJ_2226 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + }; + OBJ_2227 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_2114 /* PBXTargetDependency */ = { + OBJ_2228 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_2115 /* PBXTargetDependency */ = { + OBJ_2229 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_2116 /* PBXTargetDependency */ = { + OBJ_2230 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_2117 /* PBXTargetDependency */ = { + OBJ_2231 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_2118 /* PBXTargetDependency */ = { + OBJ_2232 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_2119 /* PBXTargetDependency */ = { + OBJ_2233 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_2120 /* PBXTargetDependency */ = { + OBJ_2234 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_2121 /* PBXTargetDependency */ = { + OBJ_2235 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_2122 /* PBXTargetDependency */ = { + OBJ_2236 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_2123 /* PBXTargetDependency */ = { + OBJ_2237 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_2124 /* PBXTargetDependency */ = { + OBJ_2238 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_2125 /* PBXTargetDependency */ = { + OBJ_2239 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_2126 /* PBXTargetDependency */ = { + OBJ_2240 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2127 /* PBXTargetDependency */ = { + OBJ_2241 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_2128 /* PBXTargetDependency */ = { + OBJ_2242 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_2129 /* PBXTargetDependency */ = { + OBJ_2243 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2130 /* PBXTargetDependency */ = { + OBJ_2244 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2131 /* PBXTargetDependency */ = { + OBJ_2245 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_2132 /* PBXTargetDependency */ = { + OBJ_2246 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_2133 /* PBXTargetDependency */ = { + OBJ_2247 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_2134 /* PBXTargetDependency */ = { + OBJ_2248 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_2135 /* PBXTargetDependency */ = { + OBJ_2249 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_2136 /* PBXTargetDependency */ = { + OBJ_2250 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2167 /* PBXTargetDependency */ = { + OBJ_2281 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_2168 /* PBXTargetDependency */ = { + OBJ_2282 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_2169 /* PBXTargetDependency */ = { + OBJ_2283 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_2170 /* PBXTargetDependency */ = { + OBJ_2284 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_2171 /* PBXTargetDependency */ = { + OBJ_2285 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_2172 /* PBXTargetDependency */ = { + OBJ_2286 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_2173 /* PBXTargetDependency */ = { + OBJ_2287 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_2174 /* PBXTargetDependency */ = { + OBJ_2288 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_2175 /* PBXTargetDependency */ = { + OBJ_2289 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2176 /* PBXTargetDependency */ = { + OBJ_2290 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_2177 /* PBXTargetDependency */ = { + OBJ_2291 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_2178 /* PBXTargetDependency */ = { + OBJ_2292 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2179 /* PBXTargetDependency */ = { + OBJ_2293 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2180 /* PBXTargetDependency */ = { + OBJ_2294 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_2181 /* PBXTargetDependency */ = { + OBJ_2295 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_2182 /* PBXTargetDependency */ = { + OBJ_2296 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_2183 /* PBXTargetDependency */ = { + OBJ_2297 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_2184 /* PBXTargetDependency */ = { + OBJ_2298 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_2185 /* PBXTargetDependency */ = { + OBJ_2299 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2235 /* PBXTargetDependency */ = { + OBJ_2352 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_2236 /* PBXTargetDependency */ = { + OBJ_2353 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_2237 /* PBXTargetDependency */ = { + OBJ_2354 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_2238 /* PBXTargetDependency */ = { + OBJ_2355 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_2239 /* PBXTargetDependency */ = { + OBJ_2356 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_2240 /* PBXTargetDependency */ = { + OBJ_2357 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_2241 /* PBXTargetDependency */ = { + OBJ_2358 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_2242 /* PBXTargetDependency */ = { + OBJ_2359 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_2243 /* PBXTargetDependency */ = { + OBJ_2360 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_2244 /* PBXTargetDependency */ = { + OBJ_2361 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_2245 /* PBXTargetDependency */ = { + OBJ_2362 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_2246 /* PBXTargetDependency */ = { + OBJ_2363 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_2364 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_2365 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_2366 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_2247 /* PBXTargetDependency */ = { + OBJ_2367 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_2248 /* PBXTargetDependency */ = { + OBJ_2368 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_2249 /* PBXTargetDependency */ = { + OBJ_2369 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_2250 /* PBXTargetDependency */ = { + OBJ_2370 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_2251 /* PBXTargetDependency */ = { + OBJ_2371 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_2252 /* PBXTargetDependency */ = { + OBJ_2372 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_2253 /* PBXTargetDependency */ = { + OBJ_2373 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_2254 /* PBXTargetDependency */ = { + OBJ_2374 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_2255 /* PBXTargetDependency */ = { + OBJ_2375 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_2256 /* PBXTargetDependency */ = { + OBJ_2376 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_2257 /* PBXTargetDependency */ = { + OBJ_2377 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_2258 /* PBXTargetDependency */ = { + OBJ_2378 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_2259 /* PBXTargetDependency */ = { + OBJ_2379 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_2260 /* PBXTargetDependency */ = { + OBJ_2380 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_2261 /* PBXTargetDependency */ = { + OBJ_2381 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_2262 /* PBXTargetDependency */ = { + OBJ_2382 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2263 /* PBXTargetDependency */ = { + OBJ_2383 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_2264 /* PBXTargetDependency */ = { + OBJ_2384 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_2265 /* PBXTargetDependency */ = { + OBJ_2385 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2266 /* PBXTargetDependency */ = { + OBJ_2386 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2267 /* PBXTargetDependency */ = { + OBJ_2387 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_2268 /* PBXTargetDependency */ = { + OBJ_2388 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_2269 /* PBXTargetDependency */ = { + OBJ_2389 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_2270 /* PBXTargetDependency */ = { + OBJ_2390 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_2271 /* PBXTargetDependency */ = { + OBJ_2391 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_2272 /* PBXTargetDependency */ = { + OBJ_2392 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2285 /* PBXTargetDependency */ = { + OBJ_2405 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2286 /* PBXTargetDependency */ = { + OBJ_2406 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2287 /* PBXTargetDependency */ = { + OBJ_2407 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2299 /* PBXTargetDependency */ = { + OBJ_2419 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2300 /* PBXTargetDependency */ = { + OBJ_2420 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2301 /* PBXTargetDependency */ = { + OBJ_2421 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2302 /* PBXTargetDependency */ = { + OBJ_2422 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2357 /* PBXTargetDependency */ = { + OBJ_2480 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_2358 /* PBXTargetDependency */ = { + OBJ_2481 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_2359 /* PBXTargetDependency */ = { + OBJ_2482 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_2360 /* PBXTargetDependency */ = { + OBJ_2483 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_2361 /* PBXTargetDependency */ = { + OBJ_2484 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_2362 /* PBXTargetDependency */ = { + OBJ_2485 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_2363 /* PBXTargetDependency */ = { + OBJ_2486 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_2364 /* PBXTargetDependency */ = { + OBJ_2487 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_2365 /* PBXTargetDependency */ = { + OBJ_2488 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_2366 /* PBXTargetDependency */ = { + OBJ_2489 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_2367 /* PBXTargetDependency */ = { + OBJ_2490 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_2368 /* PBXTargetDependency */ = { + OBJ_2491 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_2492 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_2493 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_2494 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_2369 /* PBXTargetDependency */ = { + OBJ_2495 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_2370 /* PBXTargetDependency */ = { + OBJ_2496 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_2371 /* PBXTargetDependency */ = { + OBJ_2497 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_2372 /* PBXTargetDependency */ = { + OBJ_2498 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_2373 /* PBXTargetDependency */ = { + OBJ_2499 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_2374 /* PBXTargetDependency */ = { + OBJ_2500 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_2375 /* PBXTargetDependency */ = { + OBJ_2501 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_2376 /* PBXTargetDependency */ = { + OBJ_2502 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_2377 /* PBXTargetDependency */ = { + OBJ_2503 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_2378 /* PBXTargetDependency */ = { + OBJ_2504 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_2379 /* PBXTargetDependency */ = { + OBJ_2505 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_2380 /* PBXTargetDependency */ = { + OBJ_2506 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_2381 /* PBXTargetDependency */ = { + OBJ_2507 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_2382 /* PBXTargetDependency */ = { + OBJ_2508 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_2383 /* PBXTargetDependency */ = { + OBJ_2509 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_2384 /* PBXTargetDependency */ = { + OBJ_2510 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2385 /* PBXTargetDependency */ = { + OBJ_2511 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2386 /* PBXTargetDependency */ = { + OBJ_2512 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2387 /* PBXTargetDependency */ = { + OBJ_2513 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_2388 /* PBXTargetDependency */ = { + OBJ_2514 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_2389 /* PBXTargetDependency */ = { + OBJ_2515 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_2390 /* PBXTargetDependency */ = { + OBJ_2516 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_2391 /* PBXTargetDependency */ = { + OBJ_2517 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_2392 /* PBXTargetDependency */ = { + OBJ_2518 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_2393 /* PBXTargetDependency */ = { + OBJ_2519 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2394 /* PBXTargetDependency */ = { + OBJ_2520 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_2442 /* PBXTargetDependency */ = { + OBJ_2568 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_2443 /* PBXTargetDependency */ = { + OBJ_2569 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_2444 /* PBXTargetDependency */ = { + OBJ_2570 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_2445 /* PBXTargetDependency */ = { + OBJ_2571 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_2446 /* PBXTargetDependency */ = { + OBJ_2572 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_2447 /* PBXTargetDependency */ = { + OBJ_2573 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_2448 /* PBXTargetDependency */ = { + OBJ_2574 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_2449 /* PBXTargetDependency */ = { + OBJ_2575 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_2450 /* PBXTargetDependency */ = { + OBJ_2576 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_2451 /* PBXTargetDependency */ = { + OBJ_2577 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_2452 /* PBXTargetDependency */ = { + OBJ_2578 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2453 /* PBXTargetDependency */ = { + OBJ_2579 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_2454 /* PBXTargetDependency */ = { + OBJ_2580 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_2455 /* PBXTargetDependency */ = { + OBJ_2581 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2456 /* PBXTargetDependency */ = { + OBJ_2582 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2457 /* PBXTargetDependency */ = { + OBJ_2583 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_2458 /* PBXTargetDependency */ = { + OBJ_2584 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_2459 /* PBXTargetDependency */ = { + OBJ_2585 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_2460 /* PBXTargetDependency */ = { + OBJ_2586 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_2461 /* PBXTargetDependency */ = { + OBJ_2587 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_2462 /* PBXTargetDependency */ = { + OBJ_2588 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2521 /* PBXTargetDependency */ = { + OBJ_2650 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_2522 /* PBXTargetDependency */ = { + OBJ_2651 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_2523 /* PBXTargetDependency */ = { + OBJ_2652 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_2524 /* PBXTargetDependency */ = { + OBJ_2653 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_2525 /* PBXTargetDependency */ = { + OBJ_2654 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_2526 /* PBXTargetDependency */ = { + OBJ_2655 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_2527 /* PBXTargetDependency */ = { + OBJ_2656 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_2528 /* PBXTargetDependency */ = { + OBJ_2657 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_2529 /* PBXTargetDependency */ = { + OBJ_2658 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_2530 /* PBXTargetDependency */ = { + OBJ_2659 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_2531 /* PBXTargetDependency */ = { + OBJ_2660 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_2532 /* PBXTargetDependency */ = { + OBJ_2661 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_2662 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_2663 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_2664 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_2533 /* PBXTargetDependency */ = { + OBJ_2665 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_2534 /* PBXTargetDependency */ = { + OBJ_2666 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_2535 /* PBXTargetDependency */ = { + OBJ_2667 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_2536 /* PBXTargetDependency */ = { + OBJ_2668 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_2537 /* PBXTargetDependency */ = { + OBJ_2669 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_2538 /* PBXTargetDependency */ = { + OBJ_2670 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_2539 /* PBXTargetDependency */ = { + OBJ_2671 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_2540 /* PBXTargetDependency */ = { + OBJ_2672 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_2541 /* PBXTargetDependency */ = { + OBJ_2673 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_2542 /* PBXTargetDependency */ = { + OBJ_2674 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_2543 /* PBXTargetDependency */ = { + OBJ_2675 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_2544 /* PBXTargetDependency */ = { + OBJ_2676 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_2545 /* PBXTargetDependency */ = { + OBJ_2677 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_2546 /* PBXTargetDependency */ = { + OBJ_2678 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_2547 /* PBXTargetDependency */ = { + OBJ_2679 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_2548 /* PBXTargetDependency */ = { + OBJ_2680 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2549 /* PBXTargetDependency */ = { + OBJ_2681 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_2550 /* PBXTargetDependency */ = { + OBJ_2682 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_2551 /* PBXTargetDependency */ = { + OBJ_2683 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2552 /* PBXTargetDependency */ = { + OBJ_2684 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2553 /* PBXTargetDependency */ = { + OBJ_2685 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_2554 /* PBXTargetDependency */ = { + OBJ_2686 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_2555 /* PBXTargetDependency */ = { + OBJ_2687 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_2556 /* PBXTargetDependency */ = { + OBJ_2688 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_2557 /* PBXTargetDependency */ = { + OBJ_2689 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_2558 /* PBXTargetDependency */ = { + OBJ_2690 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2629 /* PBXTargetDependency */ = { + OBJ_2761 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_2630 /* PBXTargetDependency */ = { + OBJ_2762 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2631 /* PBXTargetDependency */ = { + OBJ_2763 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2632 /* PBXTargetDependency */ = { + OBJ_2764 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2633 /* PBXTargetDependency */ = { + OBJ_2765 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_2634 /* PBXTargetDependency */ = { + OBJ_2766 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_2635 /* PBXTargetDependency */ = { + OBJ_2767 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_2636 /* PBXTargetDependency */ = { + OBJ_2768 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_2637 /* PBXTargetDependency */ = { + OBJ_2769 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_2638 /* PBXTargetDependency */ = { + OBJ_2770 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2711 /* PBXTargetDependency */ = { + OBJ_2846 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_2712 /* PBXTargetDependency */ = { + OBJ_2847 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_2713 /* PBXTargetDependency */ = { + OBJ_2848 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_2714 /* PBXTargetDependency */ = { + OBJ_2849 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_2715 /* PBXTargetDependency */ = { + OBJ_2850 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_2716 /* PBXTargetDependency */ = { + OBJ_2851 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_2717 /* PBXTargetDependency */ = { + OBJ_2852 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_2718 /* PBXTargetDependency */ = { + OBJ_2853 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_2719 /* PBXTargetDependency */ = { + OBJ_2854 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_2720 /* PBXTargetDependency */ = { + OBJ_2855 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_2721 /* PBXTargetDependency */ = { + OBJ_2856 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_2722 /* PBXTargetDependency */ = { + OBJ_2857 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_2858 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_2859 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_2860 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_2723 /* PBXTargetDependency */ = { + OBJ_2861 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_2724 /* PBXTargetDependency */ = { + OBJ_2862 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_2725 /* PBXTargetDependency */ = { + OBJ_2863 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_2726 /* PBXTargetDependency */ = { + OBJ_2864 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_2727 /* PBXTargetDependency */ = { + OBJ_2865 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_2728 /* PBXTargetDependency */ = { + OBJ_2866 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_2729 /* PBXTargetDependency */ = { + OBJ_2867 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_2730 /* PBXTargetDependency */ = { + OBJ_2868 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_2731 /* PBXTargetDependency */ = { + OBJ_2869 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_2732 /* PBXTargetDependency */ = { + OBJ_2870 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_2733 /* PBXTargetDependency */ = { + OBJ_2871 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_2734 /* PBXTargetDependency */ = { + OBJ_2872 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_2735 /* PBXTargetDependency */ = { + OBJ_2873 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_2736 /* PBXTargetDependency */ = { + OBJ_2874 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_2737 /* PBXTargetDependency */ = { + OBJ_2875 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_2738 /* PBXTargetDependency */ = { + OBJ_2876 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_2739 /* PBXTargetDependency */ = { + OBJ_2877 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_2740 /* PBXTargetDependency */ = { + OBJ_2878 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2741 /* PBXTargetDependency */ = { + OBJ_2879 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2742 /* PBXTargetDependency */ = { + OBJ_2880 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2743 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; - }; - OBJ_2744 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; - }; - OBJ_2745 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; - }; - OBJ_2746 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; - }; - OBJ_2747 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; - }; - OBJ_2748 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; - }; - OBJ_2774 /* PBXTargetDependency */ = { + OBJ_2881 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_2775 /* PBXTargetDependency */ = { + OBJ_2882 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_2776 /* PBXTargetDependency */ = { + OBJ_2883 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_2777 /* PBXTargetDependency */ = { + OBJ_2884 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_2778 /* PBXTargetDependency */ = { + OBJ_2885 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_2779 /* PBXTargetDependency */ = { + OBJ_2886 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2827 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::TestCommons /* TestCommons */; - }; - OBJ_2828 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; - }; - OBJ_2829 /* PBXTargetDependency */ = { + OBJ_2952 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_2830 /* PBXTargetDependency */ = { + OBJ_2953 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_2831 /* PBXTargetDependency */ = { + OBJ_2954 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_2832 /* PBXTargetDependency */ = { + OBJ_2955 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_2833 /* PBXTargetDependency */ = { + OBJ_2956 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_2834 /* PBXTargetDependency */ = { + OBJ_2957 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_2835 /* PBXTargetDependency */ = { + OBJ_2958 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_2836 /* PBXTargetDependency */ = { + OBJ_2959 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_2837 /* PBXTargetDependency */ = { + OBJ_2960 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_2838 /* PBXTargetDependency */ = { + OBJ_2961 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_2962 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_2963 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_2964 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_2839 /* PBXTargetDependency */ = { + OBJ_2965 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_2840 /* PBXTargetDependency */ = { + OBJ_2966 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_2841 /* PBXTargetDependency */ = { + OBJ_2967 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_2842 /* PBXTargetDependency */ = { + OBJ_2968 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + }; + OBJ_2969 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_2843 /* PBXTargetDependency */ = { + OBJ_2970 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_2844 /* PBXTargetDependency */ = { + OBJ_2971 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_2845 /* PBXTargetDependency */ = { + OBJ_2972 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_2846 /* PBXTargetDependency */ = { + OBJ_2973 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_2847 /* PBXTargetDependency */ = { + OBJ_2974 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Intentions /* Intentions */; + }; + OBJ_2975 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_2848 /* PBXTargetDependency */ = { + OBJ_2976 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_2849 /* PBXTargetDependency */ = { + OBJ_2977 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_2850 /* PBXTargetDependency */ = { + OBJ_2978 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_2851 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; - }; - OBJ_2852 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; - }; - OBJ_2853 /* PBXTargetDependency */ = { + OBJ_2979 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_2854 /* PBXTargetDependency */ = { + OBJ_2980 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_2855 /* PBXTargetDependency */ = { + OBJ_2981 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_2856 /* PBXTargetDependency */ = { + OBJ_2982 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_2857 /* PBXTargetDependency */ = { + OBJ_2983 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_2858 /* PBXTargetDependency */ = { + OBJ_2984 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_2859 /* PBXTargetDependency */ = { + OBJ_2985 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_2860 /* PBXTargetDependency */ = { + OBJ_2986 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_2861 /* PBXTargetDependency */ = { + OBJ_2987 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_2862 /* PBXTargetDependency */ = { + OBJ_2988 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_2863 /* PBXTargetDependency */ = { + OBJ_2989 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_2864 /* PBXTargetDependency */ = { + OBJ_2990 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_2922 /* PBXTargetDependency */ = { + OBJ_3054 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_2923 /* PBXTargetDependency */ = { + OBJ_3055 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_2924 /* PBXTargetDependency */ = { + OBJ_3056 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swiftrewriter::JavaScriptFrontend /* JavaScriptFrontend */; }; - OBJ_2925 /* PBXTargetDependency */ = { + OBJ_3057 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_2926 /* PBXTargetDependency */ = { + OBJ_3058 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_2927 /* PBXTargetDependency */ = { + OBJ_3059 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_2942 /* PBXTargetDependency */ = { + OBJ_3060 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_2943 /* PBXTargetDependency */ = { + OBJ_3061 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; - }; - OBJ_2944 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; - }; - OBJ_2945 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; - }; - OBJ_2946 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; - }; - OBJ_2947 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; - }; - OBJ_2948 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_3033 /* PBXTargetDependency */ = { + OBJ_3062 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_3034 /* PBXTargetDependency */ = { + OBJ_3063 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_3035 /* PBXTargetDependency */ = { + OBJ_3064 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_3036 /* PBXTargetDependency */ = { + OBJ_3065 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = console::Console /* Console */; }; - OBJ_3037 /* PBXTargetDependency */ = { + OBJ_3066 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = swiftrewriter::JsParser /* JsParser */; }; - OBJ_3038 /* PBXTargetDependency */ = { + OBJ_3067 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; }; - OBJ_3039 /* PBXTargetDependency */ = { + OBJ_3068 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; - OBJ_3040 /* PBXTargetDependency */ = { + OBJ_3069 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_3041 /* PBXTargetDependency */ = { + OBJ_3070 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_3064 /* PBXTargetDependency */ = { + OBJ_3071 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_3065 /* PBXTargetDependency */ = { + OBJ_3072 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_3066 /* PBXTargetDependency */ = { + OBJ_3073 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_3067 /* PBXTargetDependency */ = { + OBJ_3074 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_3123 /* PBXTargetDependency */ = { + OBJ_3075 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TestCommons /* TestCommons */; + target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_3124 /* PBXTargetDependency */ = { + OBJ_3076 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_3125 /* PBXTargetDependency */ = { + OBJ_3077 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + target = swiftrewriter::Commons /* Commons */; }; - OBJ_3126 /* PBXTargetDependency */ = { + OBJ_3078 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormat /* SwiftFormat */; + target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_3127 /* PBXTargetDependency */ = { + OBJ_3079 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; + target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_3128 /* PBXTargetDependency */ = { + OBJ_3080 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_3129 /* PBXTargetDependency */ = { + OBJ_3081 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatRules /* SwiftFormatRules */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_3130 /* PBXTargetDependency */ = { + OBJ_3082 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_3131 /* PBXTargetDependency */ = { + OBJ_3083 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_3132 /* PBXTargetDependency */ = { + OBJ_3084 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_3133 /* PBXTargetDependency */ = { + OBJ_3085 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = console::Console /* Console */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_3134 /* PBXTargetDependency */ = { + OBJ_3086 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_3135 /* PBXTargetDependency */ = { + OBJ_3087 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_3136 /* PBXTargetDependency */ = { + OBJ_3088 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_3137 /* PBXTargetDependency */ = { + OBJ_3089 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_3138 /* PBXTargetDependency */ = { + OBJ_3090 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::IntentionPasses /* IntentionPasses */; + target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_3139 /* PBXTargetDependency */ = { + OBJ_3091 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Analysis /* Analysis */; + target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_3140 /* PBXTargetDependency */ = { + OBJ_3092 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GraphvizLib /* GraphvizLib */; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_3141 /* PBXTargetDependency */ = { + OBJ_3093 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Commons /* Commons */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_3142 /* PBXTargetDependency */ = { + OBJ_3094 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeSystem /* TypeSystem */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_3143 /* PBXTargetDependency */ = { + OBJ_3095 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + target = swiftrewriter::Utils /* Utils */; }; - OBJ_3144 /* PBXTargetDependency */ = { + OBJ_3123 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_3145 /* PBXTargetDependency */ = { + OBJ_3124 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; - OBJ_3146 /* PBXTargetDependency */ = { + OBJ_3125 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_3147 /* PBXTargetDependency */ = { + OBJ_3126 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_3148 /* PBXTargetDependency */ = { + OBJ_3127 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_3149 /* PBXTargetDependency */ = { + OBJ_3128 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::Utils /* Utils */; }; OBJ_3150 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = minilexer::TypeLexing /* TypeLexing */; }; OBJ_3151 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = minilexer::MiniLexer /* MiniLexer */; }; OBJ_3152 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; }; OBJ_3153 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; OBJ_3154 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; OBJ_3155 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; - }; - OBJ_3156 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; - }; - OBJ_3157 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_3158 /* PBXTargetDependency */ = { + OBJ_3156 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_3159 /* PBXTargetDependency */ = { + OBJ_3157 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_3160 /* PBXTargetDependency */ = { + OBJ_3158 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_3225 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; - }; - OBJ_3226 /* PBXTargetDependency */ = { + OBJ_3177 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormat /* SwiftFormat */; - }; - OBJ_3227 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_3228 /* PBXTargetDependency */ = { + OBJ_3178 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_3229 /* PBXTargetDependency */ = { + OBJ_3179 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatRules /* SwiftFormatRules */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_3230 /* PBXTargetDependency */ = { + OBJ_3180 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; + target = swiftrewriter::Utils /* Utils */; }; OBJ_3231 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + target = swiftrewriter::TestCommons /* TestCommons */; }; OBJ_3232 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; OBJ_3233 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = console::Console /* Console */; + target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; OBJ_3234 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + target = swift-format::SwiftFormat /* SwiftFormat */; }; OBJ_3235 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; OBJ_3236 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; OBJ_3237 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; OBJ_3238 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; OBJ_3239 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::IntentionPasses /* IntentionPasses */; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; OBJ_3240 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Analysis /* Analysis */; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; OBJ_3241 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GraphvizLib /* GraphvizLib */; + target = console::Console /* Console */; }; OBJ_3242 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Commons /* Commons */; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; OBJ_3243 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeSystem /* TypeSystem */; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; OBJ_3244 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; OBJ_3245 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; OBJ_3246 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; OBJ_3247 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = swiftrewriter::Analysis /* Analysis */; }; OBJ_3248 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; OBJ_3249 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::Commons /* Commons */; }; OBJ_3250 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::TypeSystem /* TypeSystem */; }; OBJ_3251 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; OBJ_3252 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; OBJ_3253 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; OBJ_3254 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; OBJ_3255 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; OBJ_3256 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = swiftrewriter::Intentions /* Intentions */; }; OBJ_3257 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swiftrewriter::KnownType /* KnownType */; }; OBJ_3258 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = swiftrewriter::SwiftAST /* SwiftAST */; }; OBJ_3259 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; OBJ_3260 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; - }; - OBJ_3333 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::TestCommons /* TestCommons */; - }; - OBJ_3334 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; - }; - OBJ_3335 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_3336 /* PBXTargetDependency */ = { + OBJ_3261 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormat /* SwiftFormat */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_3337 /* PBXTargetDependency */ = { + OBJ_3262 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; + target = swiftrewriter::JsParser /* JsParser */; }; - OBJ_3338 /* PBXTargetDependency */ = { + OBJ_3263 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_3339 /* PBXTargetDependency */ = { + OBJ_3264 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatRules /* SwiftFormatRules */; + target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_3340 /* PBXTargetDependency */ = { + OBJ_3265 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; }; - OBJ_3341 /* PBXTargetDependency */ = { + OBJ_3266 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_3342 /* PBXTargetDependency */ = { + OBJ_3267 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; - OBJ_3343 /* PBXTargetDependency */ = { + OBJ_3268 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = console::Console /* Console */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_3344 /* PBXTargetDependency */ = { + OBJ_3269 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_3345 /* PBXTargetDependency */ = { + OBJ_3270 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_3346 /* PBXTargetDependency */ = { + OBJ_3271 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + target = swiftrewriter::Utils /* Utils */; }; - OBJ_3347 /* PBXTargetDependency */ = { + OBJ_3297 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_3348 /* PBXTargetDependency */ = { + OBJ_3298 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_3349 /* PBXTargetDependency */ = { + OBJ_3299 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::IntentionPasses /* IntentionPasses */; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_3350 /* PBXTargetDependency */ = { + OBJ_3300 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Analysis /* Analysis */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_3351 /* PBXTargetDependency */ = { + OBJ_3301 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GraphvizLib /* GraphvizLib */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_3352 /* PBXTargetDependency */ = { + OBJ_3302 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Commons /* Commons */; + target = swiftrewriter::Utils /* Utils */; }; OBJ_3353 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeSystem /* TypeSystem */; + target = swiftrewriter::TestCommons /* TestCommons */; }; OBJ_3354 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; OBJ_3355 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; OBJ_3356 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swift-format::SwiftFormat /* SwiftFormat */; }; OBJ_3357 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; OBJ_3358 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; OBJ_3359 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; OBJ_3360 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; OBJ_3361 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; OBJ_3362 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; OBJ_3363 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = console::Console /* Console */; }; OBJ_3364 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swiftrewriter::JsParser /* JsParser */; }; OBJ_3365 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; }; OBJ_3366 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; OBJ_3367 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; OBJ_3368 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; OBJ_3369 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; OBJ_3370 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_3380 /* PBXTargetDependency */ = { + OBJ_3371 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_3381 /* PBXTargetDependency */ = { + OBJ_3372 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_3425 /* PBXTargetDependency */ = { + OBJ_3373 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_3426 /* PBXTargetDependency */ = { + OBJ_3374 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormat /* SwiftFormat */; + target = swiftrewriter::Commons /* Commons */; }; - OBJ_3427 /* PBXTargetDependency */ = { + OBJ_3375 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; + target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_3428 /* PBXTargetDependency */ = { + OBJ_3376 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_3429 /* PBXTargetDependency */ = { + OBJ_3377 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatRules /* SwiftFormatRules */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_3430 /* PBXTargetDependency */ = { + OBJ_3378 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_3431 /* PBXTargetDependency */ = { + OBJ_3379 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_3432 /* PBXTargetDependency */ = { + OBJ_3380 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_3433 /* PBXTargetDependency */ = { + OBJ_3381 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = console::Console /* Console */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_3434 /* PBXTargetDependency */ = { + OBJ_3382 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_3435 /* PBXTargetDependency */ = { + OBJ_3383 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_3436 /* PBXTargetDependency */ = { + OBJ_3384 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_3437 /* PBXTargetDependency */ = { + OBJ_3385 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_3438 /* PBXTargetDependency */ = { + OBJ_3386 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::IntentionPasses /* IntentionPasses */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_3439 /* PBXTargetDependency */ = { + OBJ_3387 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Analysis /* Analysis */; + target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_3440 /* PBXTargetDependency */ = { + OBJ_3388 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GraphvizLib /* GraphvizLib */; + target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_3441 /* PBXTargetDependency */ = { + OBJ_3389 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Commons /* Commons */; + target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_3442 /* PBXTargetDependency */ = { + OBJ_3390 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeSystem /* TypeSystem */; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_3443 /* PBXTargetDependency */ = { + OBJ_3391 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_3444 /* PBXTargetDependency */ = { + OBJ_3392 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_3445 /* PBXTargetDependency */ = { + OBJ_3393 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swiftrewriter::Utils /* Utils */; }; - OBJ_3446 /* PBXTargetDependency */ = { + OBJ_3451 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_3447 /* PBXTargetDependency */ = { + OBJ_3452 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_3448 /* PBXTargetDependency */ = { + OBJ_3453 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_3449 /* PBXTargetDependency */ = { + OBJ_3454 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_3450 /* PBXTargetDependency */ = { + OBJ_3455 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_3451 /* PBXTargetDependency */ = { + OBJ_3456 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swiftrewriter::Utils /* Utils */; }; - OBJ_3452 /* PBXTargetDependency */ = { + OBJ_3471 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_3453 /* PBXTargetDependency */ = { + OBJ_3472 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_3454 /* PBXTargetDependency */ = { + OBJ_3473 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_3455 /* PBXTargetDependency */ = { + OBJ_3474 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_3456 /* PBXTargetDependency */ = { + OBJ_3475 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_3457 /* PBXTargetDependency */ = { + OBJ_3476 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_3458 /* PBXTargetDependency */ = { + OBJ_3477 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + target = swiftrewriter::Utils /* Utils */; }; - OBJ_3459 /* PBXTargetDependency */ = { + OBJ_3562 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_3460 /* PBXTargetDependency */ = { + OBJ_3563 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = minilexer::MiniLexer /* MiniLexer */; }; OBJ_3564 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; OBJ_3565 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; OBJ_3566 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; OBJ_3567 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; OBJ_3568 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::Antlr4 /* Antlr4 */; + }; + OBJ_3569 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; + }; + OBJ_3570 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; + OBJ_3593 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; + }; + OBJ_3594 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::Antlr4 /* Antlr4 */; + }; + OBJ_3595 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; + }; + OBJ_3596 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_3634 /* PBXTargetDependency */ = { + OBJ_3655 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_3635 /* PBXTargetDependency */ = { + OBJ_3656 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_3636 /* PBXTargetDependency */ = { + OBJ_3657 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_3637 /* PBXTargetDependency */ = { + OBJ_3658 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_3638 /* PBXTargetDependency */ = { + OBJ_3659 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_3639 /* PBXTargetDependency */ = { + OBJ_3660 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_3640 /* PBXTargetDependency */ = { + OBJ_3661 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_3641 /* PBXTargetDependency */ = { + OBJ_3662 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_3642 /* PBXTargetDependency */ = { + OBJ_3663 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_3643 /* PBXTargetDependency */ = { + OBJ_3664 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_3644 /* PBXTargetDependency */ = { + OBJ_3665 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_3645 /* PBXTargetDependency */ = { + OBJ_3666 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_3667 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_3668 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_3669 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_3646 /* PBXTargetDependency */ = { + OBJ_3670 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_3647 /* PBXTargetDependency */ = { + OBJ_3671 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_3648 /* PBXTargetDependency */ = { + OBJ_3672 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_3649 /* PBXTargetDependency */ = { + OBJ_3673 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_3650 /* PBXTargetDependency */ = { + OBJ_3674 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_3651 /* PBXTargetDependency */ = { + OBJ_3675 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_3652 /* PBXTargetDependency */ = { + OBJ_3676 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_3653 /* PBXTargetDependency */ = { + OBJ_3677 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_3654 /* PBXTargetDependency */ = { + OBJ_3678 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_3655 /* PBXTargetDependency */ = { + OBJ_3679 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_3656 /* PBXTargetDependency */ = { + OBJ_3680 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_3657 /* PBXTargetDependency */ = { + OBJ_3681 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_3658 /* PBXTargetDependency */ = { + OBJ_3682 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_3659 /* PBXTargetDependency */ = { + OBJ_3683 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_3660 /* PBXTargetDependency */ = { + OBJ_3684 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_3661 /* PBXTargetDependency */ = { + OBJ_3685 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_3662 /* PBXTargetDependency */ = { + OBJ_3686 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_3663 /* PBXTargetDependency */ = { + OBJ_3687 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_3664 /* PBXTargetDependency */ = { + OBJ_3688 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_3665 /* PBXTargetDependency */ = { + OBJ_3689 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_3666 /* PBXTargetDependency */ = { + OBJ_3690 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_3667 /* PBXTargetDependency */ = { + OBJ_3691 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_3668 /* PBXTargetDependency */ = { + OBJ_3692 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_3669 /* PBXTargetDependency */ = { + OBJ_3693 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_3670 /* PBXTargetDependency */ = { + OBJ_3694 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_3671 /* PBXTargetDependency */ = { + OBJ_3695 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_3694 /* PBXTargetDependency */ = { + OBJ_3763 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + }; + OBJ_3764 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormat /* SwiftFormat */; + }; + OBJ_3765 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_3695 /* PBXTargetDependency */ = { + OBJ_3766 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_3696 /* PBXTargetDependency */ = { + OBJ_3767 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_3697 /* PBXTargetDependency */ = { + OBJ_3768 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_3698 /* PBXTargetDependency */ = { + OBJ_3769 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_3699 /* PBXTargetDependency */ = { + OBJ_3770 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_3700 /* PBXTargetDependency */ = { + OBJ_3771 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = console::Console /* Console */; }; - OBJ_3701 /* PBXTargetDependency */ = { + OBJ_3772 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + target = swiftrewriter::JsParser /* JsParser */; }; - OBJ_3731 /* PBXTargetDependency */ = { + OBJ_3773 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; }; - OBJ_3732 /* PBXTargetDependency */ = { + OBJ_3774 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; - OBJ_3733 /* PBXTargetDependency */ = { + OBJ_3775 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_3752 /* PBXTargetDependency */ = { + OBJ_3776 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_3753 /* PBXTargetDependency */ = { + OBJ_3777 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_3754 /* PBXTargetDependency */ = { + OBJ_3778 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_3755 /* PBXTargetDependency */ = { + OBJ_3779 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_3810 /* PBXTargetDependency */ = { + OBJ_3780 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_3811 /* PBXTargetDependency */ = { + OBJ_3781 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_3812 /* PBXTargetDependency */ = { + OBJ_3782 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_3813 /* PBXTargetDependency */ = { + OBJ_3783 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + target = swiftrewriter::Commons /* Commons */; }; - OBJ_3827 /* PBXTargetDependency */ = { + OBJ_3784 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_3828 /* PBXTargetDependency */ = { + OBJ_3785 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_3829 /* PBXTargetDependency */ = { + OBJ_3786 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_3830 /* PBXTargetDependency */ = { + OBJ_3787 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_3885 /* PBXTargetDependency */ = { + OBJ_3788 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_3886 /* PBXTargetDependency */ = { + OBJ_3789 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterCLI /* SwiftRewriterCLI */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_3888 /* PBXTargetDependency */ = { + OBJ_3790 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-argument-parser::ArgumentParser /* ArgumentParser */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_3889 /* PBXTargetDependency */ = { + OBJ_3791 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-argument-parser::ArgumentParserToolInfo /* ArgumentParserToolInfo */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_3890 /* PBXTargetDependency */ = { + OBJ_3792 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; + }; + OBJ_3793 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::Antlr4 /* Antlr4 */; + }; + OBJ_3794 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; + }; + OBJ_3795 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::KnownType /* KnownType */; + }; + OBJ_3796 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftAST /* SwiftAST */; + }; + OBJ_3797 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_3798 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + }; + OBJ_3799 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + }; + OBJ_3800 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_3801 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; + OBJ_3877 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TestCommons /* TestCommons */; + }; + OBJ_3878 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + }; + OBJ_3879 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_3891 /* PBXTargetDependency */ = { + OBJ_3880 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_3892 /* PBXTargetDependency */ = { + OBJ_3881 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_3893 /* PBXTargetDependency */ = { + OBJ_3882 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_3894 /* PBXTargetDependency */ = { + OBJ_3883 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_3895 /* PBXTargetDependency */ = { + OBJ_3884 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_3896 /* PBXTargetDependency */ = { + OBJ_3885 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_3897 /* PBXTargetDependency */ = { + OBJ_3886 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_3898 /* PBXTargetDependency */ = { + OBJ_3887 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_3899 /* PBXTargetDependency */ = { + OBJ_3888 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_3889 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_3890 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_3891 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_3900 /* PBXTargetDependency */ = { + OBJ_3892 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_3901 /* PBXTargetDependency */ = { + OBJ_3893 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_3902 /* PBXTargetDependency */ = { + OBJ_3894 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_3903 /* PBXTargetDependency */ = { + OBJ_3895 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_3904 /* PBXTargetDependency */ = { + OBJ_3896 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_3905 /* PBXTargetDependency */ = { + OBJ_3897 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_3906 /* PBXTargetDependency */ = { + OBJ_3898 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_3907 /* PBXTargetDependency */ = { + OBJ_3899 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_3908 /* PBXTargetDependency */ = { + OBJ_3900 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_3909 /* PBXTargetDependency */ = { + OBJ_3901 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_3910 /* PBXTargetDependency */ = { + OBJ_3902 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_3911 /* PBXTargetDependency */ = { + OBJ_3903 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_3912 /* PBXTargetDependency */ = { + OBJ_3904 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_3913 /* PBXTargetDependency */ = { + OBJ_3905 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_3914 /* PBXTargetDependency */ = { + OBJ_3906 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_3915 /* PBXTargetDependency */ = { + OBJ_3907 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_3916 /* PBXTargetDependency */ = { + OBJ_3908 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_3917 /* PBXTargetDependency */ = { + OBJ_3909 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_3918 /* PBXTargetDependency */ = { + OBJ_3910 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_3919 /* PBXTargetDependency */ = { + OBJ_3911 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_3920 /* PBXTargetDependency */ = { + OBJ_3912 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_3921 /* PBXTargetDependency */ = { + OBJ_3913 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_3922 /* PBXTargetDependency */ = { + OBJ_3914 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_3923 /* PBXTargetDependency */ = { + OBJ_3915 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_3924 /* PBXTargetDependency */ = { + OBJ_3916 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_3925 /* PBXTargetDependency */ = { + OBJ_3917 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_3973 /* PBXTargetDependency */ = { + OBJ_3927 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-argument-parser::ArgumentParser /* ArgumentParser */; + target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_3974 /* PBXTargetDependency */ = { + OBJ_3928 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-argument-parser::ArgumentParserToolInfo /* ArgumentParserToolInfo */; + target = swiftrewriter::Utils /* Utils */; }; OBJ_3975 /* PBXTargetDependency */ = { isa = PBXTargetDependency; @@ -14300,1760 +15651,2854 @@ }; OBJ_3984 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + target = swiftrewriter::JsParser /* JsParser */; }; OBJ_3985 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; }; OBJ_3986 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; OBJ_3987 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; OBJ_3988 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; OBJ_3989 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::IntentionPasses /* IntentionPasses */; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; OBJ_3990 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Analysis /* Analysis */; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; OBJ_3991 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GraphvizLib /* GraphvizLib */; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; OBJ_3992 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Commons /* Commons */; + target = swiftrewriter::Analysis /* Analysis */; }; OBJ_3993 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeSystem /* TypeSystem */; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; OBJ_3994 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swiftrewriter::Commons /* Commons */; }; OBJ_3995 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + target = swiftrewriter::TypeSystem /* TypeSystem */; }; OBJ_3996 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swiftrewriter::Intentions /* Intentions */; }; OBJ_3997 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; OBJ_3998 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; OBJ_3999 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = minilexer::TypeLexing /* TypeLexing */; }; OBJ_4000 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; OBJ_4001 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; OBJ_4002 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; OBJ_4003 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; OBJ_4004 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; OBJ_4005 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; OBJ_4006 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = swiftrewriter::KnownType /* KnownType */; }; OBJ_4007 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swiftrewriter::SwiftAST /* SwiftAST */; }; OBJ_4008 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; OBJ_4009 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; OBJ_4010 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_4011 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + }; + OBJ_4012 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_4013 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; + OBJ_4117 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_4118 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + }; + OBJ_4119 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + }; + OBJ_4120 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_4121 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_4066 /* PBXTargetDependency */ = { + OBJ_4190 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TestCommons /* TestCommons */; + }; + OBJ_4191 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + }; + OBJ_4192 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + }; + OBJ_4193 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_4067 /* PBXTargetDependency */ = { + OBJ_4194 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_4068 /* PBXTargetDependency */ = { + OBJ_4195 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_4069 /* PBXTargetDependency */ = { + OBJ_4196 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_4070 /* PBXTargetDependency */ = { + OBJ_4197 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_4071 /* PBXTargetDependency */ = { + OBJ_4198 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_4072 /* PBXTargetDependency */ = { + OBJ_4199 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4073 /* PBXTargetDependency */ = { + OBJ_4200 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_4074 /* PBXTargetDependency */ = { + OBJ_4201 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_4202 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_4203 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_4204 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_4075 /* PBXTargetDependency */ = { + OBJ_4205 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_4076 /* PBXTargetDependency */ = { + OBJ_4206 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_4077 /* PBXTargetDependency */ = { + OBJ_4207 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_4078 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; - }; - OBJ_4079 /* PBXTargetDependency */ = { + OBJ_4208 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_4080 /* PBXTargetDependency */ = { + OBJ_4209 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_4081 /* PBXTargetDependency */ = { + OBJ_4210 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_4082 /* PBXTargetDependency */ = { + OBJ_4211 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_4083 /* PBXTargetDependency */ = { + OBJ_4212 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_4084 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; - }; - OBJ_4085 /* PBXTargetDependency */ = { + OBJ_4213 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_4086 /* PBXTargetDependency */ = { + OBJ_4214 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_4087 /* PBXTargetDependency */ = { + OBJ_4215 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_4088 /* PBXTargetDependency */ = { + OBJ_4216 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_4089 /* PBXTargetDependency */ = { + OBJ_4217 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_4090 /* PBXTargetDependency */ = { + OBJ_4218 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_4091 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; - }; - OBJ_4092 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; - }; - OBJ_4093 /* PBXTargetDependency */ = { + OBJ_4219 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_4094 /* PBXTargetDependency */ = { + OBJ_4220 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_4095 /* PBXTargetDependency */ = { + OBJ_4221 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_4096 /* PBXTargetDependency */ = { + OBJ_4222 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_4097 /* PBXTargetDependency */ = { + OBJ_4223 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_4098 /* PBXTargetDependency */ = { + OBJ_4224 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_4099 /* PBXTargetDependency */ = { + OBJ_4225 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_4100 /* PBXTargetDependency */ = { + OBJ_4226 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_4147 /* PBXTargetDependency */ = { + OBJ_4227 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TestCommons /* TestCommons */; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_4148 /* PBXTargetDependency */ = { + OBJ_4228 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4149 /* PBXTargetDependency */ = { + OBJ_4229 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4150 /* PBXTargetDependency */ = { + OBJ_4230 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormat /* SwiftFormat */; + target = swiftrewriter::Utils /* Utils */; }; - OBJ_4151 /* PBXTargetDependency */ = { + OBJ_4253 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_4152 /* PBXTargetDependency */ = { + OBJ_4254 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_4153 /* PBXTargetDependency */ = { + OBJ_4255 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_4154 /* PBXTargetDependency */ = { + OBJ_4256 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_4155 /* PBXTargetDependency */ = { + OBJ_4257 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_4156 /* PBXTargetDependency */ = { + OBJ_4258 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + }; + OBJ_4259 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_4260 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4157 /* PBXTargetDependency */ = { + OBJ_4290 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = console::Console /* Console */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4158 /* PBXTargetDependency */ = { + OBJ_4291 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4159 /* PBXTargetDependency */ = { + OBJ_4292 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4160 /* PBXTargetDependency */ = { + OBJ_4311 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_4161 /* PBXTargetDependency */ = { + OBJ_4312 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4162 /* PBXTargetDependency */ = { + OBJ_4313 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4163 /* PBXTargetDependency */ = { + OBJ_4314 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::IntentionPasses /* IntentionPasses */; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4164 /* PBXTargetDependency */ = { + OBJ_4369 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Analysis /* Analysis */; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_4165 /* PBXTargetDependency */ = { + OBJ_4370 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GraphvizLib /* GraphvizLib */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4166 /* PBXTargetDependency */ = { + OBJ_4371 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Commons /* Commons */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4167 /* PBXTargetDependency */ = { + OBJ_4372 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeSystem /* TypeSystem */; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4168 /* PBXTargetDependency */ = { + OBJ_4386 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_4169 /* PBXTargetDependency */ = { + OBJ_4387 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4170 /* PBXTargetDependency */ = { + OBJ_4388 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4171 /* PBXTargetDependency */ = { + OBJ_4389 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4172 /* PBXTargetDependency */ = { + OBJ_4451 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swiftrewriter::JavaScriptFrontend /* JavaScriptFrontend */; }; - OBJ_4173 /* PBXTargetDependency */ = { + OBJ_4452 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_4174 /* PBXTargetDependency */ = { + OBJ_4453 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::SwiftRewriterCLI /* SwiftRewriterCLI */; }; - OBJ_4175 /* PBXTargetDependency */ = { + OBJ_4455 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = swift-argument-parser::ArgumentParser /* ArgumentParser */; }; - OBJ_4176 /* PBXTargetDependency */ = { + OBJ_4456 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swift-argument-parser::ArgumentParserToolInfo /* ArgumentParserToolInfo */; }; - OBJ_4177 /* PBXTargetDependency */ = { + OBJ_4457 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_4178 /* PBXTargetDependency */ = { + OBJ_4458 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_4179 /* PBXTargetDependency */ = { + OBJ_4459 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_4180 /* PBXTargetDependency */ = { + OBJ_4460 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_4181 /* PBXTargetDependency */ = { + OBJ_4461 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_4182 /* PBXTargetDependency */ = { + OBJ_4462 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_4183 /* PBXTargetDependency */ = { + OBJ_4463 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_4184 /* PBXTargetDependency */ = { + OBJ_4464 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4195 /* PBXTargetDependency */ = { + OBJ_4465 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutputTests /* WriterTargetOutputTests */; + target = console::Console /* Console */; }; - OBJ_4197 /* PBXTargetDependency */ = { + OBJ_4466 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::UtilsTests /* UtilsTests */; + target = swiftrewriter::JsParser /* JsParser */; }; - OBJ_4199 /* PBXTargetDependency */ = { + OBJ_4467 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeSystemTests /* TypeSystemTests */; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; }; - OBJ_4201 /* PBXTargetDependency */ = { + OBJ_4468 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TestCommonsTests /* TestCommonsTests */; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; - OBJ_4203 /* PBXTargetDependency */ = { + OBJ_4469 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupportTests /* SwiftSyntaxSupportTests */; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_4205 /* PBXTargetDependency */ = { + OBJ_4470 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPassesTests /* SwiftSyntaxRewriterPassesTests */; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_4207 /* PBXTargetDependency */ = { + OBJ_4471 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterTests /* SwiftRewriterTests */; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_4209 /* PBXTargetDependency */ = { + OBJ_4472 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterLibTests /* SwiftRewriterLibTests */; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_4210 /* PBXTargetDependency */ = { + OBJ_4473 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftASTTests /* SwiftASTTests */; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_4211 /* PBXTargetDependency */ = { + OBJ_4474 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SourcePreprocessorsTests /* SourcePreprocessorsTests */; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_4212 /* PBXTargetDependency */ = { + OBJ_4475 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjectiveCFrontendTests /* ObjectiveCFrontendTests */; + target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_4213 /* PBXTargetDependency */ = { + OBJ_4476 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserTests /* ObjcParserTests */; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_4214 /* PBXTargetDependency */ = { + OBJ_4477 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModelsTests /* ObjcGrammarModelsTests */; + target = swiftrewriter::Commons /* Commons */; }; - OBJ_4215 /* PBXTargetDependency */ = { + OBJ_4478 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownTypeTests /* KnownTypeTests */; + target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_4216 /* PBXTargetDependency */ = { + OBJ_4479 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::IntentionsTests /* IntentionsTests */; + target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_4217 /* PBXTargetDependency */ = { + OBJ_4480 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::IntentionPassesTests /* IntentionPassesTests */; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_4218 /* PBXTargetDependency */ = { + OBJ_4481 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GraphvizLibTests /* GraphvizLibTests */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_4219 /* PBXTargetDependency */ = { + OBJ_4482 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBaseTests /* GrammarModelBaseTests */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_4220 /* PBXTargetDependency */ = { + OBJ_4483 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GlobalsProvidersTests /* GlobalsProvidersTests */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_4221 /* PBXTargetDependency */ = { + OBJ_4484 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ExpressionPassesTests /* ExpressionPassesTests */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_4222 /* PBXTargetDependency */ = { + OBJ_4485 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::CommonsTests /* CommonsTests */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_4223 /* PBXTargetDependency */ = { + OBJ_4486 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AnalysisTests /* AnalysisTests */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_4270 /* PBXTargetDependency */ = { + OBJ_4487 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriter /* SwiftRewriter */; + target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_4271 /* PBXTargetDependency */ = { + OBJ_4488 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_4272 /* PBXTargetDependency */ = { + OBJ_4489 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterCLI /* SwiftRewriterCLI */; + target = swiftrewriter::KnownType /* KnownType */; + }; + OBJ_4490 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftAST /* SwiftAST */; + }; + OBJ_4491 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_4492 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + }; + OBJ_4493 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4273 /* PBXTargetDependency */ = { + OBJ_4494 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_4495 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; + OBJ_4546 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-argument-parser::ArgumentParser /* ArgumentParser */; }; - OBJ_4274 /* PBXTargetDependency */ = { + OBJ_4547 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-argument-parser::ArgumentParserToolInfo /* ArgumentParserToolInfo */; }; - OBJ_4275 /* PBXTargetDependency */ = { + OBJ_4548 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_4276 /* PBXTargetDependency */ = { + OBJ_4549 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_4277 /* PBXTargetDependency */ = { + OBJ_4550 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_4278 /* PBXTargetDependency */ = { + OBJ_4551 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_4279 /* PBXTargetDependency */ = { + OBJ_4552 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_4280 /* PBXTargetDependency */ = { + OBJ_4553 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_4281 /* PBXTargetDependency */ = { + OBJ_4554 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_4282 /* PBXTargetDependency */ = { + OBJ_4555 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4283 /* PBXTargetDependency */ = { + OBJ_4556 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_4284 /* PBXTargetDependency */ = { + OBJ_4557 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_4558 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_4559 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_4560 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_4285 /* PBXTargetDependency */ = { + OBJ_4561 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_4286 /* PBXTargetDependency */ = { + OBJ_4562 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_4287 /* PBXTargetDependency */ = { + OBJ_4563 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_4288 /* PBXTargetDependency */ = { + OBJ_4564 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_4289 /* PBXTargetDependency */ = { + OBJ_4565 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_4290 /* PBXTargetDependency */ = { + OBJ_4566 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_4291 /* PBXTargetDependency */ = { + OBJ_4567 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_4292 /* PBXTargetDependency */ = { + OBJ_4568 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_4293 /* PBXTargetDependency */ = { + OBJ_4569 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_4294 /* PBXTargetDependency */ = { + OBJ_4570 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_4295 /* PBXTargetDependency */ = { + OBJ_4571 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_4296 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; - }; - OBJ_4297 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; - }; - OBJ_4298 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; - }; - OBJ_4299 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; - }; - OBJ_4300 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; - }; - OBJ_4301 /* PBXTargetDependency */ = { + OBJ_4572 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_4302 /* PBXTargetDependency */ = { + OBJ_4573 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_4303 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; - }; - OBJ_4304 /* PBXTargetDependency */ = { + OBJ_4574 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_4305 /* PBXTargetDependency */ = { + OBJ_4575 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_4306 /* PBXTargetDependency */ = { + OBJ_4576 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_4307 /* PBXTargetDependency */ = { + OBJ_4577 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_4308 /* PBXTargetDependency */ = { + OBJ_4578 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_4309 /* PBXTargetDependency */ = { + OBJ_4579 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_4310 /* PBXTargetDependency */ = { + OBJ_4580 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_4353 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; - }; - OBJ_4371 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; - }; - OBJ_4372 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; - }; - OBJ_4392 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; - }; - OBJ_4393 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; - }; - OBJ_4394 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; - }; - OBJ_4395 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; - }; - OBJ_4396 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; - }; - OBJ_4397 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; - }; - OBJ_4398 /* PBXTargetDependency */ = { + OBJ_4581 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_4399 /* PBXTargetDependency */ = { + OBJ_4582 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_4400 /* PBXTargetDependency */ = { + OBJ_4583 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_4401 /* PBXTargetDependency */ = { + OBJ_4584 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4402 /* PBXTargetDependency */ = { + OBJ_4585 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4403 /* PBXTargetDependency */ = { + OBJ_4586 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_4450 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::TestCommons /* TestCommons */; - }; - OBJ_4451 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; - }; - OBJ_4452 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; - }; - OBJ_4453 /* PBXTargetDependency */ = { + OBJ_4645 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_4454 /* PBXTargetDependency */ = { + OBJ_4646 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_4455 /* PBXTargetDependency */ = { + OBJ_4647 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_4456 /* PBXTargetDependency */ = { + OBJ_4648 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_4457 /* PBXTargetDependency */ = { + OBJ_4649 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_4458 /* PBXTargetDependency */ = { + OBJ_4650 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_4459 /* PBXTargetDependency */ = { + OBJ_4651 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4460 /* PBXTargetDependency */ = { + OBJ_4652 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_4461 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; - }; - OBJ_4462 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; - }; - OBJ_4463 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; - }; - OBJ_4464 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::IntentionPasses /* IntentionPasses */; - }; - OBJ_4465 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::Analysis /* Analysis */; - }; - OBJ_4466 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::GraphvizLib /* GraphvizLib */; - }; - OBJ_4467 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::Commons /* Commons */; - }; - OBJ_4468 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::TypeSystem /* TypeSystem */; - }; - OBJ_4469 /* PBXTargetDependency */ = { + OBJ_4653 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + target = swiftrewriter::JsParser /* JsParser */; }; - OBJ_4470 /* PBXTargetDependency */ = { + OBJ_4654 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; }; - OBJ_4471 /* PBXTargetDependency */ = { + OBJ_4655 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; - OBJ_4472 /* PBXTargetDependency */ = { + OBJ_4656 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_4473 /* PBXTargetDependency */ = { + OBJ_4657 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_4474 /* PBXTargetDependency */ = { + OBJ_4658 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_4475 /* PBXTargetDependency */ = { + OBJ_4659 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_4476 /* PBXTargetDependency */ = { + OBJ_4660 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_4477 /* PBXTargetDependency */ = { + OBJ_4661 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_4478 /* PBXTargetDependency */ = { + OBJ_4662 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_4479 /* PBXTargetDependency */ = { + OBJ_4663 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_4480 /* PBXTargetDependency */ = { + OBJ_4664 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swiftrewriter::Commons /* Commons */; }; - OBJ_4481 /* PBXTargetDependency */ = { + OBJ_4665 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_4482 /* PBXTargetDependency */ = { + OBJ_4666 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_4483 /* PBXTargetDependency */ = { + OBJ_4667 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_4484 /* PBXTargetDependency */ = { + OBJ_4668 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_4485 /* PBXTargetDependency */ = { + OBJ_4669 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_4486 /* PBXTargetDependency */ = { + OBJ_4670 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_4487 /* PBXTargetDependency */ = { + OBJ_4671 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_4518 /* PBXTargetDependency */ = { + OBJ_4672 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_4519 /* PBXTargetDependency */ = { + OBJ_4673 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_4520 /* PBXTargetDependency */ = { + OBJ_4674 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_4521 /* PBXTargetDependency */ = { + OBJ_4675 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_4522 /* PBXTargetDependency */ = { + OBJ_4676 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_4523 /* PBXTargetDependency */ = { + OBJ_4677 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_4524 /* PBXTargetDependency */ = { + OBJ_4678 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_4525 /* PBXTargetDependency */ = { + OBJ_4679 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_4526 /* PBXTargetDependency */ = { + OBJ_4680 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4527 /* PBXTargetDependency */ = { + OBJ_4681 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4528 /* PBXTargetDependency */ = { + OBJ_4682 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_4578 /* PBXTargetDependency */ = { + OBJ_4732 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_4579 /* PBXTargetDependency */ = { + OBJ_4733 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_4580 /* PBXTargetDependency */ = { + OBJ_4734 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_4581 /* PBXTargetDependency */ = { + OBJ_4735 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_4582 /* PBXTargetDependency */ = { + OBJ_4736 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_4583 /* PBXTargetDependency */ = { + OBJ_4737 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_4584 /* PBXTargetDependency */ = { + OBJ_4738 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_4585 /* PBXTargetDependency */ = { + OBJ_4739 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_4586 /* PBXTargetDependency */ = { + OBJ_4740 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_4587 /* PBXTargetDependency */ = { + OBJ_4741 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4588 /* PBXTargetDependency */ = { + OBJ_4742 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_4589 /* PBXTargetDependency */ = { + OBJ_4743 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_4744 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_4745 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_4746 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_4590 /* PBXTargetDependency */ = { + OBJ_4747 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_4591 /* PBXTargetDependency */ = { + OBJ_4748 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_4592 /* PBXTargetDependency */ = { + OBJ_4749 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_4593 /* PBXTargetDependency */ = { + OBJ_4750 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + }; + OBJ_4751 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_4594 /* PBXTargetDependency */ = { + OBJ_4752 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_4595 /* PBXTargetDependency */ = { + OBJ_4753 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_4596 /* PBXTargetDependency */ = { + OBJ_4754 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_4597 /* PBXTargetDependency */ = { + OBJ_4755 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_4598 /* PBXTargetDependency */ = { + OBJ_4756 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Intentions /* Intentions */; + }; + OBJ_4757 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_4599 /* PBXTargetDependency */ = { + OBJ_4758 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_4600 /* PBXTargetDependency */ = { + OBJ_4759 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_4601 /* PBXTargetDependency */ = { + OBJ_4760 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_4602 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; - }; - OBJ_4603 /* PBXTargetDependency */ = { + OBJ_4761 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; - }; - OBJ_4604 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_4605 /* PBXTargetDependency */ = { + OBJ_4762 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_4606 /* PBXTargetDependency */ = { + OBJ_4763 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_4607 /* PBXTargetDependency */ = { + OBJ_4764 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_4608 /* PBXTargetDependency */ = { + OBJ_4765 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_4609 /* PBXTargetDependency */ = { + OBJ_4766 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_4610 /* PBXTargetDependency */ = { + OBJ_4767 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_4611 /* PBXTargetDependency */ = { + OBJ_4768 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_4612 /* PBXTargetDependency */ = { + OBJ_4769 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_4613 /* PBXTargetDependency */ = { + OBJ_4770 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4614 /* PBXTargetDependency */ = { + OBJ_4771 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4615 /* PBXTargetDependency */ = { + OBJ_4772 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_4724 /* PBXTargetDependency */ = { + OBJ_4783 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + target = swiftrewriter::WriterTargetOutputTests /* WriterTargetOutputTests */; }; - OBJ_4725 /* PBXTargetDependency */ = { + OBJ_4785 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + target = swiftrewriter::UtilsTests /* UtilsTests */; }; - OBJ_4726 /* PBXTargetDependency */ = { + OBJ_4787 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormat /* SwiftFormat */; + target = swiftrewriter::TypeSystemTests /* TypeSystemTests */; }; - OBJ_4727 /* PBXTargetDependency */ = { + OBJ_4789 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; + target = swiftrewriter::TestCommonsTests /* TestCommonsTests */; }; - OBJ_4728 /* PBXTargetDependency */ = { + OBJ_4791 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; + target = swiftrewriter::SwiftSyntaxSupportTests /* SwiftSyntaxSupportTests */; }; - OBJ_4729 /* PBXTargetDependency */ = { + OBJ_4793 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatRules /* SwiftFormatRules */; + target = swiftrewriter::SwiftSyntaxRewriterPassesTests /* SwiftSyntaxRewriterPassesTests */; }; - OBJ_4730 /* PBXTargetDependency */ = { + OBJ_4795 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; + target = swiftrewriter::SwiftRewriterTests /* SwiftRewriterTests */; }; - OBJ_4731 /* PBXTargetDependency */ = { + OBJ_4797 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + target = swiftrewriter::SwiftRewriterLibTests /* SwiftRewriterLibTests */; }; - OBJ_4732 /* PBXTargetDependency */ = { + OBJ_4798 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + target = swiftrewriter::SwiftASTTests /* SwiftASTTests */; }; - OBJ_4733 /* PBXTargetDependency */ = { + OBJ_4799 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = console::Console /* Console */; + target = swiftrewriter::SourcePreprocessorsTests /* SourcePreprocessorsTests */; }; - OBJ_4734 /* PBXTargetDependency */ = { + OBJ_4800 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + target = swiftrewriter::ObjectiveCFrontendTests /* ObjectiveCFrontendTests */; }; - OBJ_4735 /* PBXTargetDependency */ = { + OBJ_4801 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + target = swiftrewriter::ObjcParserTests /* ObjcParserTests */; }; - OBJ_4736 /* PBXTargetDependency */ = { + OBJ_4802 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + target = swiftrewriter::ObjcGrammarModelsTests /* ObjcGrammarModelsTests */; }; - OBJ_4737 /* PBXTargetDependency */ = { + OBJ_4803 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + target = swiftrewriter::KnownTypeTests /* KnownTypeTests */; }; - OBJ_4738 /* PBXTargetDependency */ = { + OBJ_4804 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::IntentionPasses /* IntentionPasses */; + target = swiftrewriter::JsParserTests /* JsParserTests */; }; - OBJ_4739 /* PBXTargetDependency */ = { + OBJ_4805 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Analysis /* Analysis */; + target = swiftrewriter::JavaScriptFrontendTests /* JavaScriptFrontendTests */; }; - OBJ_4740 /* PBXTargetDependency */ = { + OBJ_4806 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GraphvizLib /* GraphvizLib */; + target = swiftrewriter::IntentionsTests /* IntentionsTests */; }; - OBJ_4741 /* PBXTargetDependency */ = { + OBJ_4807 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Commons /* Commons */; + target = swiftrewriter::IntentionPassesTests /* IntentionPassesTests */; }; - OBJ_4742 /* PBXTargetDependency */ = { + OBJ_4808 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeSystem /* TypeSystem */; + target = swiftrewriter::GraphvizLibTests /* GraphvizLibTests */; }; - OBJ_4743 /* PBXTargetDependency */ = { + OBJ_4809 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + target = swiftrewriter::GrammarModelBaseTests /* GrammarModelBaseTests */; }; - OBJ_4744 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; - }; - OBJ_4745 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; - }; - OBJ_4746 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; - }; - OBJ_4747 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; - }; - OBJ_4748 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; - }; - OBJ_4749 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; - }; - OBJ_4750 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; - }; - OBJ_4751 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; - }; - OBJ_4752 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = antlr4-swift::Antlr4 /* Antlr4 */; - }; - OBJ_4753 /* PBXTargetDependency */ = { + OBJ_4810 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = antlr4-swift::CAntlrShims /* CAntlrShims */; + target = swiftrewriter::GlobalsProvidersTests /* GlobalsProvidersTests */; }; - OBJ_4754 /* PBXTargetDependency */ = { + OBJ_4811 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swiftrewriter::ExpressionPassesTests /* ExpressionPassesTests */; }; - OBJ_4755 /* PBXTargetDependency */ = { + OBJ_4812 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftAST /* SwiftAST */; + target = swiftrewriter::CommonsTests /* CommonsTests */; }; - OBJ_4756 /* PBXTargetDependency */ = { + OBJ_4813 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; + target = swiftrewriter::AnalysisTests /* AnalysisTests */; }; - OBJ_4757 /* PBXTargetDependency */ = { + OBJ_4864 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + target = swiftrewriter::SwiftRewriter /* SwiftRewriter */; }; - OBJ_4758 /* PBXTargetDependency */ = { + OBJ_4865 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + target = swiftrewriter::JavaScriptFrontend /* JavaScriptFrontend */; }; - OBJ_4759 /* PBXTargetDependency */ = { + OBJ_4866 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_4760 /* PBXTargetDependency */ = { + OBJ_4867 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swiftrewriter::SwiftRewriterCLI /* SwiftRewriterCLI */; }; - OBJ_4806 /* PBXTargetDependency */ = { + OBJ_4868 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TestCommons /* TestCommons */; + target = swift-argument-parser::ArgumentParser /* ArgumentParser */; }; - OBJ_4807 /* PBXTargetDependency */ = { + OBJ_4869 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + target = swift-argument-parser::ArgumentParserToolInfo /* ArgumentParserToolInfo */; }; - OBJ_4808 /* PBXTargetDependency */ = { + OBJ_4870 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_4809 /* PBXTargetDependency */ = { + OBJ_4871 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_4810 /* PBXTargetDependency */ = { + OBJ_4872 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_4811 /* PBXTargetDependency */ = { + OBJ_4873 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_4812 /* PBXTargetDependency */ = { + OBJ_4874 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_4813 /* PBXTargetDependency */ = { + OBJ_4875 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_4814 /* PBXTargetDependency */ = { + OBJ_4876 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_4815 /* PBXTargetDependency */ = { + OBJ_4877 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_4816 /* PBXTargetDependency */ = { + OBJ_4878 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_4817 /* PBXTargetDependency */ = { + OBJ_4879 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_4880 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_4881 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_4882 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_4818 /* PBXTargetDependency */ = { + OBJ_4883 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_4819 /* PBXTargetDependency */ = { + OBJ_4884 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_4820 /* PBXTargetDependency */ = { + OBJ_4885 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_4821 /* PBXTargetDependency */ = { + OBJ_4886 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + }; + OBJ_4887 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_4822 /* PBXTargetDependency */ = { + OBJ_4888 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_4823 /* PBXTargetDependency */ = { + OBJ_4889 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_4824 /* PBXTargetDependency */ = { + OBJ_4890 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_4825 /* PBXTargetDependency */ = { + OBJ_4891 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_4826 /* PBXTargetDependency */ = { + OBJ_4892 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Intentions /* Intentions */; + }; + OBJ_4893 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_4827 /* PBXTargetDependency */ = { + OBJ_4894 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_4828 /* PBXTargetDependency */ = { + OBJ_4895 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_4829 /* PBXTargetDependency */ = { + OBJ_4896 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_4830 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; - }; - OBJ_4831 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; - }; - OBJ_4832 /* PBXTargetDependency */ = { + OBJ_4897 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_4833 /* PBXTargetDependency */ = { + OBJ_4898 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_4834 /* PBXTargetDependency */ = { + OBJ_4899 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_4835 /* PBXTargetDependency */ = { + OBJ_4900 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_4836 /* PBXTargetDependency */ = { + OBJ_4901 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_4837 /* PBXTargetDependency */ = { + OBJ_4902 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_4838 /* PBXTargetDependency */ = { + OBJ_4903 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_4839 /* PBXTargetDependency */ = { + OBJ_4904 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_4840 /* PBXTargetDependency */ = { + OBJ_4905 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_4841 /* PBXTargetDependency */ = { + OBJ_4906 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4842 /* PBXTargetDependency */ = { + OBJ_4907 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4843 /* PBXTargetDependency */ = { + OBJ_4908 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_4857 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = minilexer::MiniLexer /* MiniLexer */; - }; - OBJ_4918 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; - }; - OBJ_4919 /* PBXTargetDependency */ = { + OBJ_4951 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4920 /* PBXTargetDependency */ = { + OBJ_4969 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4921 /* PBXTargetDependency */ = { + OBJ_4970 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4922 /* PBXTargetDependency */ = { + OBJ_4990 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_4923 /* PBXTargetDependency */ = { + OBJ_4991 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_4924 /* PBXTargetDependency */ = { + OBJ_4992 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_4925 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; - }; - OBJ_4926 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; - }; - OBJ_4927 /* PBXTargetDependency */ = { + OBJ_4993 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_4928 /* PBXTargetDependency */ = { + OBJ_4994 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_4929 /* PBXTargetDependency */ = { + OBJ_4995 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::KnownType /* KnownType */; + }; + OBJ_4996 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_4930 /* PBXTargetDependency */ = { + OBJ_4997 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_4931 /* PBXTargetDependency */ = { + OBJ_4998 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_4932 /* PBXTargetDependency */ = { + OBJ_4999 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_4933 /* PBXTargetDependency */ = { + OBJ_5000 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_4934 /* PBXTargetDependency */ = { + OBJ_5001 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_4993 /* PBXTargetDependency */ = { + OBJ_5051 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_4994 /* PBXTargetDependency */ = { + OBJ_5052 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_4995 /* PBXTargetDependency */ = { + OBJ_5053 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_4996 /* PBXTargetDependency */ = { + OBJ_5054 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_4997 /* PBXTargetDependency */ = { + OBJ_5055 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_4998 /* PBXTargetDependency */ = { + OBJ_5056 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_4999 /* PBXTargetDependency */ = { + OBJ_5057 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_5000 /* PBXTargetDependency */ = { + OBJ_5058 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_5001 /* PBXTargetDependency */ = { + OBJ_5059 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_5002 /* PBXTargetDependency */ = { + OBJ_5060 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_5003 /* PBXTargetDependency */ = { + OBJ_5061 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_5004 /* PBXTargetDependency */ = { + OBJ_5062 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_5063 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_5064 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; }; - OBJ_5005 /* PBXTargetDependency */ = { + OBJ_5065 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_5006 /* PBXTargetDependency */ = { + OBJ_5066 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_5007 /* PBXTargetDependency */ = { + OBJ_5067 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_5008 /* PBXTargetDependency */ = { + OBJ_5068 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_5009 /* PBXTargetDependency */ = { + OBJ_5069 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_5010 /* PBXTargetDependency */ = { + OBJ_5070 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_5011 /* PBXTargetDependency */ = { + OBJ_5071 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_5012 /* PBXTargetDependency */ = { + OBJ_5072 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_5013 /* PBXTargetDependency */ = { + OBJ_5073 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeSystem /* TypeSystem */; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_5014 /* PBXTargetDependency */ = { + OBJ_5074 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Intentions /* Intentions */; + target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_5015 /* PBXTargetDependency */ = { + OBJ_5075 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::KnownType /* KnownType */; + target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_5016 /* PBXTargetDependency */ = { + OBJ_5076 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_5017 /* PBXTargetDependency */ = { + OBJ_5077 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParser /* ObjcParser */; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_5018 /* PBXTargetDependency */ = { + OBJ_5078 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = minilexer::TypeLexing /* TypeLexing */; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_5019 /* PBXTargetDependency */ = { + OBJ_5079 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_5020 /* PBXTargetDependency */ = { + OBJ_5080 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_5021 /* PBXTargetDependency */ = { + OBJ_5081 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_5022 /* PBXTargetDependency */ = { + OBJ_5082 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::AntlrCommons /* AntlrCommons */; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_5023 /* PBXTargetDependency */ = { + OBJ_5083 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_5024 /* PBXTargetDependency */ = { + OBJ_5084 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_5025 /* PBXTargetDependency */ = { + OBJ_5085 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::KnownType /* KnownType */; + }; + OBJ_5086 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_5026 /* PBXTargetDependency */ = { + OBJ_5087 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_5027 /* PBXTargetDependency */ = { + OBJ_5088 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_5028 /* PBXTargetDependency */ = { + OBJ_5089 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_5029 /* PBXTargetDependency */ = { + OBJ_5090 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_5030 /* PBXTargetDependency */ = { + OBJ_5091 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_5063 /* PBXTargetDependency */ = { + OBJ_5122 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = swiftrewriter::Utils /* Utils */; + target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_5075 /* PBXTargetDependency */ = { + OBJ_5123 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + }; + OBJ_5124 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::Antlr4 /* Antlr4 */; + }; + OBJ_5125 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; + }; + OBJ_5126 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::KnownType /* KnownType */; + }; + OBJ_5127 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftAST /* SwiftAST */; + }; + OBJ_5128 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_5129 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + }; + OBJ_5130 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_5076 /* PBXTargetDependency */ = { + OBJ_5131 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_5077 /* PBXTargetDependency */ = { + OBJ_5132 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; - OBJ_5123 /* PBXTargetDependency */ = { + OBJ_5185 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TestCommons /* TestCommons */; }; - OBJ_5124 /* PBXTargetDependency */ = { + OBJ_5186 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; }; - OBJ_5125 /* PBXTargetDependency */ = { + OBJ_5187 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; }; - OBJ_5126 /* PBXTargetDependency */ = { + OBJ_5188 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormat /* SwiftFormat */; }; - OBJ_5127 /* PBXTargetDependency */ = { + OBJ_5189 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; }; - OBJ_5128 /* PBXTargetDependency */ = { + OBJ_5190 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; }; - OBJ_5129 /* PBXTargetDependency */ = { + OBJ_5191 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatRules /* SwiftFormatRules */; }; - OBJ_5130 /* PBXTargetDependency */ = { + OBJ_5192 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; }; - OBJ_5131 /* PBXTargetDependency */ = { + OBJ_5193 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatCore /* SwiftFormatCore */; }; - OBJ_5132 /* PBXTargetDependency */ = { + OBJ_5194 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; }; - OBJ_5133 /* PBXTargetDependency */ = { + OBJ_5195 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = console::Console /* Console */; }; - OBJ_5134 /* PBXTargetDependency */ = { + OBJ_5196 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_5197 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_5198 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_5199 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; }; - OBJ_5135 /* PBXTargetDependency */ = { + OBJ_5200 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; }; - OBJ_5136 /* PBXTargetDependency */ = { + OBJ_5201 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; }; - OBJ_5137 /* PBXTargetDependency */ = { + OBJ_5202 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; }; - OBJ_5138 /* PBXTargetDependency */ = { + OBJ_5203 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::IntentionPasses /* IntentionPasses */; }; - OBJ_5139 /* PBXTargetDependency */ = { + OBJ_5204 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Analysis /* Analysis */; }; - OBJ_5140 /* PBXTargetDependency */ = { + OBJ_5205 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GraphvizLib /* GraphvizLib */; }; - OBJ_5141 /* PBXTargetDependency */ = { + OBJ_5206 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Commons /* Commons */; }; - OBJ_5142 /* PBXTargetDependency */ = { + OBJ_5207 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeSystem /* TypeSystem */; }; - OBJ_5143 /* PBXTargetDependency */ = { + OBJ_5208 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; }; - OBJ_5144 /* PBXTargetDependency */ = { + OBJ_5209 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParser /* ObjcParser */; }; - OBJ_5145 /* PBXTargetDependency */ = { + OBJ_5210 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::TypeLexing /* TypeLexing */; }; - OBJ_5146 /* PBXTargetDependency */ = { + OBJ_5211 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; }; - OBJ_5147 /* PBXTargetDependency */ = { + OBJ_5212 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; }; - OBJ_5148 /* PBXTargetDependency */ = { + OBJ_5213 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::AntlrCommons /* AntlrCommons */; }; - OBJ_5149 /* PBXTargetDependency */ = { + OBJ_5214 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; }; - OBJ_5150 /* PBXTargetDependency */ = { + OBJ_5215 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Intentions /* Intentions */; }; - OBJ_5151 /* PBXTargetDependency */ = { + OBJ_5216 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; }; - OBJ_5152 /* PBXTargetDependency */ = { + OBJ_5217 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::Antlr4 /* Antlr4 */; }; - OBJ_5153 /* PBXTargetDependency */ = { + OBJ_5218 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = antlr4-swift::CAntlrShims /* CAntlrShims */; }; - OBJ_5154 /* PBXTargetDependency */ = { + OBJ_5219 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::KnownType /* KnownType */; }; - OBJ_5155 /* PBXTargetDependency */ = { + OBJ_5220 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::SwiftAST /* SwiftAST */; }; - OBJ_5156 /* PBXTargetDependency */ = { + OBJ_5221 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = minilexer::MiniLexer /* MiniLexer */; }; - OBJ_5157 /* PBXTargetDependency */ = { + OBJ_5222 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; }; - OBJ_5158 /* PBXTargetDependency */ = { + OBJ_5223 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::SwiftSyntax /* SwiftSyntax */; }; - OBJ_5159 /* PBXTargetDependency */ = { + OBJ_5224 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; }; - OBJ_5160 /* PBXTargetDependency */ = { + OBJ_5225 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = swiftrewriter::Utils /* Utils */; }; -/* End PBXTargetDependency section */ - -/* Begin XCBuildConfiguration section */ - OBJ_1358 /* Debug */ = { + OBJ_5340 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + }; + OBJ_5341 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + }; + OBJ_5342 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormat /* SwiftFormat */; + }; + OBJ_5343 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; + }; + OBJ_5344 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; + }; + OBJ_5345 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatRules /* SwiftFormatRules */; + }; + OBJ_5346 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; + }; + OBJ_5347 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + }; + OBJ_5348 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + }; + OBJ_5349 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = console::Console /* Console */; + }; + OBJ_5350 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_5351 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_5352 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_5353 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + }; + OBJ_5354 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + }; + OBJ_5355 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + }; + OBJ_5356 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + }; + OBJ_5357 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; + }; + OBJ_5358 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Analysis /* Analysis */; + }; + OBJ_5359 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; + }; + OBJ_5360 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Commons /* Commons */; + }; + OBJ_5361 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TypeSystem /* TypeSystem */; + }; + OBJ_5362 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + }; + OBJ_5363 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcParser /* ObjcParser */; + }; + OBJ_5364 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::TypeLexing /* TypeLexing */; + }; + OBJ_5365 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + }; + OBJ_5366 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + }; + OBJ_5367 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; + }; + OBJ_5368 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + }; + OBJ_5369 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Intentions /* Intentions */; + }; + OBJ_5370 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + }; + OBJ_5371 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::Antlr4 /* Antlr4 */; + }; + OBJ_5372 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; + }; + OBJ_5373 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::KnownType /* KnownType */; + }; + OBJ_5374 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftAST /* SwiftAST */; + }; + OBJ_5375 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_5376 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + }; + OBJ_5377 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + }; + OBJ_5378 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_5379 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; + OBJ_5428 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TestCommons /* TestCommons */; + }; + OBJ_5429 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + }; + OBJ_5430 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + }; + OBJ_5431 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormat /* SwiftFormat */; + }; + OBJ_5432 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; + }; + OBJ_5433 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; + }; + OBJ_5434 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatRules /* SwiftFormatRules */; + }; + OBJ_5435 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; + }; + OBJ_5436 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + }; + OBJ_5437 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + }; + OBJ_5438 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = console::Console /* Console */; + }; + OBJ_5439 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_5440 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_5441 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_5442 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + }; + OBJ_5443 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + }; + OBJ_5444 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + }; + OBJ_5445 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + }; + OBJ_5446 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; + }; + OBJ_5447 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Analysis /* Analysis */; + }; + OBJ_5448 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; + }; + OBJ_5449 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Commons /* Commons */; + }; + OBJ_5450 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TypeSystem /* TypeSystem */; + }; + OBJ_5451 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + }; + OBJ_5452 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcParser /* ObjcParser */; + }; + OBJ_5453 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::TypeLexing /* TypeLexing */; + }; + OBJ_5454 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + }; + OBJ_5455 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + }; + OBJ_5456 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; + }; + OBJ_5457 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + }; + OBJ_5458 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Intentions /* Intentions */; + }; + OBJ_5459 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + }; + OBJ_5460 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::Antlr4 /* Antlr4 */; + }; + OBJ_5461 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; + }; + OBJ_5462 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::KnownType /* KnownType */; + }; + OBJ_5463 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftAST /* SwiftAST */; + }; + OBJ_5464 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_5465 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + }; + OBJ_5466 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + }; + OBJ_5467 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_5468 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; + OBJ_5482 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_5543 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Intentions /* Intentions */; + }; + OBJ_5544 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::KnownType /* KnownType */; + }; + OBJ_5545 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + }; + OBJ_5546 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcParser /* ObjcParser */; + }; + OBJ_5547 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::TypeLexing /* TypeLexing */; + }; + OBJ_5548 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + }; + OBJ_5549 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + }; + OBJ_5550 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + }; + OBJ_5551 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; + }; + OBJ_5552 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::Antlr4 /* Antlr4 */; + }; + OBJ_5553 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; + }; + OBJ_5554 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftAST /* SwiftAST */; + }; + OBJ_5555 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_5556 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + }; + OBJ_5557 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + }; + OBJ_5558 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_5559 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; + OBJ_5621 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TestCommons /* TestCommons */; + }; + OBJ_5622 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + }; + OBJ_5623 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + }; + OBJ_5624 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormat /* SwiftFormat */; + }; + OBJ_5625 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; + }; + OBJ_5626 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; + }; + OBJ_5627 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatRules /* SwiftFormatRules */; + }; + OBJ_5628 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; + }; + OBJ_5629 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + }; + OBJ_5630 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + }; + OBJ_5631 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = console::Console /* Console */; + }; + OBJ_5632 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_5633 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_5634 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_5635 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + }; + OBJ_5636 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + }; + OBJ_5637 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + }; + OBJ_5638 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + }; + OBJ_5639 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; + }; + OBJ_5640 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Analysis /* Analysis */; + }; + OBJ_5641 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; + }; + OBJ_5642 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Commons /* Commons */; + }; + OBJ_5643 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + }; + OBJ_5644 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TypeSystem /* TypeSystem */; + }; + OBJ_5645 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Intentions /* Intentions */; + }; + OBJ_5646 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::KnownType /* KnownType */; + }; + OBJ_5647 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + }; + OBJ_5648 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcParser /* ObjcParser */; + }; + OBJ_5649 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::TypeLexing /* TypeLexing */; + }; + OBJ_5650 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + }; + OBJ_5651 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + }; + OBJ_5652 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + }; + OBJ_5653 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; + }; + OBJ_5654 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::Antlr4 /* Antlr4 */; + }; + OBJ_5655 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; + }; + OBJ_5656 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftAST /* SwiftAST */; + }; + OBJ_5657 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_5658 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + }; + OBJ_5659 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + }; + OBJ_5660 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_5661 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; + OBJ_5694 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; + OBJ_5706 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + }; + OBJ_5707 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_5708 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; + OBJ_5757 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TestCommons /* TestCommons */; + }; + OBJ_5758 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjectiveCFrontend /* ObjectiveCFrontend */; + }; + OBJ_5759 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftRewriterLib /* SwiftRewriterLib */; + }; + OBJ_5760 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormat /* SwiftFormat */; + }; + OBJ_5761 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntaxParser /* SwiftSyntaxParser */; + }; + OBJ_5762 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatWhitespaceLinter /* SwiftFormatWhitespaceLinter */; + }; + OBJ_5763 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatRules /* SwiftFormatRules */; + }; + OBJ_5764 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatPrettyPrint /* SwiftFormatPrettyPrint */; + }; + OBJ_5765 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatCore /* SwiftFormatCore */; + }; + OBJ_5766 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-format::SwiftFormatConfiguration /* SwiftFormatConfiguration */; + }; + OBJ_5767 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = console::Console /* Console */; + }; + OBJ_5768 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParser /* JsParser */; + }; + OBJ_5769 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsGrammarModels /* JsGrammarModels */; + }; + OBJ_5770 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::JsParserAntlr /* JsParserAntlr */; + }; + OBJ_5771 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxRewriterPasses /* SwiftSyntaxRewriterPasses */; + }; + OBJ_5772 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SourcePreprocessors /* SourcePreprocessors */; + }; + OBJ_5773 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ExpressionPasses /* ExpressionPasses */; + }; + OBJ_5774 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GlobalsProviders /* GlobalsProviders */; + }; + OBJ_5775 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::IntentionPasses /* IntentionPasses */; + }; + OBJ_5776 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Analysis /* Analysis */; + }; + OBJ_5777 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GraphvizLib /* GraphvizLib */; + }; + OBJ_5778 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Commons /* Commons */; + }; + OBJ_5779 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TypeSystem /* TypeSystem */; + }; + OBJ_5780 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::TypeDefinitions /* TypeDefinitions */; + }; + OBJ_5781 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcParser /* ObjcParser */; + }; + OBJ_5782 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::TypeLexing /* TypeLexing */; + }; + OBJ_5783 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcGrammarModels /* ObjcGrammarModels */; + }; + OBJ_5784 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::ObjcParserAntlr /* ObjcParserAntlr */; + }; + OBJ_5785 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::AntlrCommons /* AntlrCommons */; + }; + OBJ_5786 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftSyntaxSupport /* SwiftSyntaxSupport */; + }; + OBJ_5787 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Intentions /* Intentions */; + }; + OBJ_5788 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::GrammarModelBase /* GrammarModelBase */; + }; + OBJ_5789 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::Antlr4 /* Antlr4 */; + }; + OBJ_5790 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = antlr4-swift::CAntlrShims /* CAntlrShims */; + }; + OBJ_5791 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::KnownType /* KnownType */; + }; + OBJ_5792 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::SwiftAST /* SwiftAST */; + }; + OBJ_5793 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = minilexer::MiniLexer /* MiniLexer */; + }; + OBJ_5794 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::WriterTargetOutput /* WriterTargetOutput */; + }; + OBJ_5795 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::SwiftSyntax /* SwiftSyntax */; + }; + OBJ_5796 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swift-syntax::_CSwiftSyntax /* _CSwiftSyntax */; + }; + OBJ_5797 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = swiftrewriter::Utils /* Utils */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + OBJ_1451 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + ENABLE_TESTABILITY = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/Analysis_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + MACOSX_DEPLOYMENT_TARGET = 10.15; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = Analysis; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; + SWIFT_VERSION = 5.0; + TARGET_NAME = Analysis; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Debug; + }; + OBJ_1452 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + ENABLE_TESTABILITY = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/Analysis_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + MACOSX_DEPLOYMENT_TARGET = 10.15; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = Analysis; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; + SWIFT_VERSION = 5.0; + TARGET_NAME = Analysis; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Release; + }; + OBJ_1537 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/AnalysisTests_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.15; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; + SWIFT_VERSION = 5.0; + TARGET_NAME = AnalysisTests; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Debug; + }; + OBJ_1538 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/AnalysisTests_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.15; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; + SWIFT_VERSION = 5.0; + TARGET_NAME = AnalysisTests; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Release; + }; + OBJ_1659 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + ENABLE_TESTABILITY = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/Antlr4_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + MACOSX_DEPLOYMENT_TARGET = 10.13; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = Antlr4; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; + TARGET_NAME = Antlr4; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Debug; + }; + OBJ_1660 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + ENABLE_TESTABILITY = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/Antlr4_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + MACOSX_DEPLOYMENT_TARGET = 10.13; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = Antlr4; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; + TARGET_NAME = Antlr4; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Release; + }; + OBJ_1822 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD = /usr/bin/true; + OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/ManifestAPI -package-description-version 5.4.0"; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + OBJ_1823 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD = /usr/bin/true; + OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/ManifestAPI -package-description-version 5.4.0"; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; + OBJ_1827 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + ENABLE_TESTABILITY = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/AntlrCommons_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + MACOSX_DEPLOYMENT_TARGET = 10.15; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = AntlrCommons; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; + SWIFT_VERSION = 5.0; + TARGET_NAME = AntlrCommons; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Debug; + }; + OBJ_1828 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + ENABLE_TESTABILITY = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/AntlrCommons_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + MACOSX_DEPLOYMENT_TARGET = 10.15; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = AntlrCommons; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; + SWIFT_VERSION = 5.0; + TARGET_NAME = AntlrCommons; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Release; + }; + OBJ_1843 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + ENABLE_TESTABILITY = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = "$(inherited)"; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/ArgumentParser_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + MACOSX_DEPLOYMENT_TARGET = 10.13; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited)"; + PRODUCT_BUNDLE_IDENTIFIER = ArgumentParser; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; + SWIFT_VERSION = 5.0; + TARGET_NAME = ArgumentParser; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Debug; + }; + OBJ_1844 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + ENABLE_TESTABILITY = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = "$(inherited)"; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/ArgumentParser_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + MACOSX_DEPLOYMENT_TARGET = 10.13; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited)"; + PRODUCT_BUNDLE_IDENTIFIER = ArgumentParser; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; + SWIFT_VERSION = 5.0; + TARGET_NAME = ArgumentParser; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = Release; + }; + OBJ_1890 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16063,32 +18508,27 @@ "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", - ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/Analysis_Info.plist; + HEADER_SEARCH_PATHS = "$(inherited)"; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/ArgumentParserToolInfo_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 10.13; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = Analysis; + OTHER_SWIFT_FLAGS = "$(inherited)"; + PRODUCT_BUNDLE_IDENTIFIER = ArgumentParserToolInfo; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = Analysis; + TARGET_NAME = ArgumentParserToolInfo; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1359 /* Release */ = { + OBJ_1891 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16098,38 +18538,33 @@ "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", - ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/Analysis_Info.plist; + HEADER_SEARCH_PATHS = "$(inherited)"; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/ArgumentParserToolInfo_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 10.13; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = Analysis; + OTHER_SWIFT_FLAGS = "$(inherited)"; + PRODUCT_BUNDLE_IDENTIFIER = ArgumentParserToolInfo; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = Analysis; + TARGET_NAME = ArgumentParserToolInfo; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1444 /* Debug */ = { + OBJ_1896 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = NO; DRIVERKIT_DEPLOYMENT_TARGET = 19.0; - EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; + ENABLE_TESTABILITY = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", @@ -16137,31 +18572,32 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/AnalysisTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/CAntlrShims_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.15; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + MACOSX_DEPLOYMENT_TARGET = 10.13; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited)"; + PRODUCT_BUNDLE_IDENTIFIER = CAntlrShims; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; - SWIFT_VERSION = 5.0; - TARGET_NAME = AnalysisTests; + TARGET_NAME = CAntlrShims; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1445 /* Release */ = { + OBJ_1897 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = NO; DRIVERKIT_DEPLOYMENT_TARGET = 19.0; - EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; + ENABLE_TESTABILITY = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", @@ -16169,25 +18605,26 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/AnalysisTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/CAntlrShims_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.15; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + MACOSX_DEPLOYMENT_TARGET = 10.13; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited)"; + PRODUCT_BUNDLE_IDENTIFIER = CAntlrShims; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; - SWIFT_VERSION = 5.0; - TARGET_NAME = AnalysisTests; + TARGET_NAME = CAntlrShims; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1557 /* Debug */ = { + OBJ_1902 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16200,28 +18637,29 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/Antlr4_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/Commons_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.13; + MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = Antlr4; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = Commons; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; - SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_VERSION = 5.0; - TARGET_NAME = Antlr4; + TARGET_NAME = Commons; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1558 /* Release */ = { + OBJ_1903 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16234,51 +18672,35 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/Antlr4_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/Commons_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.13; + MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = Antlr4; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = Commons; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; - SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_VERSION = 5.0; - TARGET_NAME = Antlr4; + TARGET_NAME = Commons; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1720 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD = /usr/bin/true; - OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/ManifestAPI -package-description-version 5.4.0"; - SWIFT_VERSION = 5.0; - }; - name = Debug; - }; - OBJ_1721 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD = /usr/bin/true; - OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/ManifestAPI -package-description-version 5.4.0"; - SWIFT_VERSION = 5.0; - }; - name = Release; - }; - OBJ_1725 /* Debug */ = { + OBJ_1965 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; DRIVERKIT_DEPLOYMENT_TARGET = 19.0; - ENABLE_TESTABILITY = YES; + EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", @@ -16286,32 +18708,31 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/AntlrCommons_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/CommonsTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = AntlrCommons; - PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SKIP_INSTALL = YES; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = AntlrCommons; + TARGET_NAME = CommonsTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1726 /* Release */ = { + OBJ_1966 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; DRIVERKIT_DEPLOYMENT_TARGET = 19.0; - ENABLE_TESTABILITY = YES; + EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", @@ -16319,27 +18740,25 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/AntlrCommons_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/CommonsTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = AntlrCommons; - PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SKIP_INSTALL = YES; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = AntlrCommons; + TARGET_NAME = CommonsTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1741 /* Debug */ = { + OBJ_2059 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16350,26 +18769,26 @@ "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = SwiftRewriter.xcodeproj/ArgumentParser_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/Console_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.13; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; OTHER_SWIFT_FLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = ArgumentParser; + PRODUCT_BUNDLE_IDENTIFIER = Console; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = ArgumentParser; + TARGET_NAME = Console; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1742 /* Release */ = { + OBJ_2060 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16380,26 +18799,44 @@ "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = SwiftRewriter.xcodeproj/ArgumentParser_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/Console_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.13; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; OTHER_SWIFT_FLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = ArgumentParser; + PRODUCT_BUNDLE_IDENTIFIER = Console; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = ArgumentParser; + TARGET_NAME = Console; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1788 /* Debug */ = { + OBJ_2072 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD = /usr/bin/true; + OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/ManifestAPI -package-description-version 5.0.0"; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + OBJ_2073 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD = /usr/bin/true; + OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/ManifestAPI -package-description-version 5.0.0"; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; + OBJ_2077 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16409,27 +18846,32 @@ "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = SwiftRewriter.xcodeproj/ArgumentParserToolInfo_Info.plist; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/ExpressionPasses_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.13; + MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = ArgumentParserToolInfo; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = ExpressionPasses; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = ArgumentParserToolInfo; + TARGET_NAME = ExpressionPasses; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1789 /* Release */ = { + OBJ_2078 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16439,33 +18881,38 @@ "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = SwiftRewriter.xcodeproj/ArgumentParserToolInfo_Info.plist; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/ExpressionPasses_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.13; + MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = ArgumentParserToolInfo; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = ExpressionPasses; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = ArgumentParserToolInfo; + TARGET_NAME = ExpressionPasses; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1794 /* Debug */ = { + OBJ_2148 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = NO; DRIVERKIT_DEPLOYMENT_TARGET = 19.0; - ENABLE_TESTABILITY = YES; + EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", @@ -16473,32 +18920,31 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/CAntlrShims_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/ExpressionPassesTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.13; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = CAntlrShims; - PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SKIP_INSTALL = YES; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; - TARGET_NAME = CAntlrShims; + SWIFT_VERSION = 5.0; + TARGET_NAME = ExpressionPassesTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1795 /* Release */ = { + OBJ_2149 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = NO; DRIVERKIT_DEPLOYMENT_TARGET = 19.0; - ENABLE_TESTABILITY = YES; + EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", @@ -16506,26 +18952,25 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/CAntlrShims_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/ExpressionPassesTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.13; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = CAntlrShims; - PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SKIP_INSTALL = YES; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; - TARGET_NAME = CAntlrShims; + SWIFT_VERSION = 5.0; + TARGET_NAME = ExpressionPassesTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1800 /* Debug */ = { + OBJ_2252 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16541,26 +18986,26 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/Commons_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GlobalsProviders_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = Commons; + PRODUCT_BUNDLE_IDENTIFIER = GlobalsProviders; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = Commons; + TARGET_NAME = GlobalsProviders; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1801 /* Release */ = { + OBJ_2253 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16576,26 +19021,26 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/Commons_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GlobalsProviders_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = Commons; + PRODUCT_BUNDLE_IDENTIFIER = GlobalsProviders; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = Commons; + TARGET_NAME = GlobalsProviders; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1863 /* Debug */ = { + OBJ_2302 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -16612,7 +19057,7 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/CommonsTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GlobalsProvidersTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; @@ -16621,13 +19066,13 @@ OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = CommonsTests; + TARGET_NAME = GlobalsProvidersTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1864 /* Release */ = { + OBJ_2303 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -16644,7 +19089,7 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/CommonsTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GlobalsProvidersTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; @@ -16653,13 +19098,13 @@ OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = CommonsTests; + TARGET_NAME = GlobalsProvidersTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1951 /* Debug */ = { + OBJ_2394 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16669,27 +19114,30 @@ "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = SwiftRewriter.xcodeproj/Console_Info.plist; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GrammarModelBase_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.13; + MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = Console; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = GrammarModelBase; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = Console; + TARGET_NAME = GrammarModelBase; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1952 /* Release */ = { + OBJ_2395 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16699,45 +19147,90 @@ "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = SwiftRewriter.xcodeproj/Console_Info.plist; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GrammarModelBase_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.13; + MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = Console; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = GrammarModelBase; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = Console; + TARGET_NAME = GrammarModelBase; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1964 /* Debug */ = { + OBJ_2410 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - LD = /usr/bin/true; - OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/ManifestAPI -package-description-version 5.0.0"; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GrammarModelBaseTests_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.15; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; + TARGET_NAME = GrammarModelBaseTests; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1965 /* Release */ = { + OBJ_2411 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - LD = /usr/bin/true; - OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/ManifestAPI -package-description-version 5.0.0"; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = 1; + DRIVERKIT_DEPLOYMENT_TARGET = 19.0; + EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PLATFORM_DIR)/Developer/Library/Frameworks", + ); + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GrammarModelBaseTests_Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.15; + OTHER_CFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; + TARGET_NAME = GrammarModelBaseTests; + TVOS_DEPLOYMENT_TARGET = 11.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_1969 /* Debug */ = { + OBJ_2424 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16747,32 +19240,27 @@ "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", - ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/ExpressionPasses_Info.plist; + HEADER_SEARCH_PATHS = "$(inherited)"; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GraphvizLib_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = ExpressionPasses; + OTHER_SWIFT_FLAGS = "$(inherited)"; + PRODUCT_BUNDLE_IDENTIFIER = GraphvizLib; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = ExpressionPasses; + TARGET_NAME = GraphvizLib; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_1970 /* Release */ = { + OBJ_2425 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16782,32 +19270,27 @@ "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", - ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/ExpressionPasses_Info.plist; + HEADER_SEARCH_PATHS = "$(inherited)"; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GraphvizLib_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = ExpressionPasses; + OTHER_SWIFT_FLAGS = "$(inherited)"; + PRODUCT_BUNDLE_IDENTIFIER = GraphvizLib; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = ExpressionPasses; + TARGET_NAME = GraphvizLib; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2040 /* Debug */ = { + OBJ_2433 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -16824,7 +19307,7 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/ExpressionPassesTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GraphvizLibTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; @@ -16833,13 +19316,13 @@ OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = ExpressionPassesTests; + TARGET_NAME = GraphvizLibTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2041 /* Release */ = { + OBJ_2434 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -16856,7 +19339,7 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/ExpressionPassesTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/GraphvizLibTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; @@ -16865,13 +19348,13 @@ OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = ExpressionPassesTests; + TARGET_NAME = GraphvizLibTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2138 /* Debug */ = { + OBJ_2522 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16887,26 +19370,26 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GlobalsProviders_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionPasses_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = GlobalsProviders; + PRODUCT_BUNDLE_IDENTIFIER = IntentionPasses; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GlobalsProviders; + TARGET_NAME = IntentionPasses; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2139 /* Release */ = { + OBJ_2523 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -16922,26 +19405,26 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GlobalsProviders_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionPasses_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = GlobalsProviders; + PRODUCT_BUNDLE_IDENTIFIER = IntentionPasses; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GlobalsProviders; + TARGET_NAME = IntentionPasses; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2188 /* Debug */ = { + OBJ_2591 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -16958,7 +19441,7 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GlobalsProvidersTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionPassesTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; @@ -16967,13 +19450,13 @@ OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GlobalsProvidersTests; + TARGET_NAME = IntentionPassesTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2189 /* Release */ = { + OBJ_2592 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -16990,7 +19473,7 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GlobalsProvidersTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionPassesTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; @@ -16999,13 +19482,13 @@ OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GlobalsProvidersTests; + TARGET_NAME = IntentionPassesTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2274 /* Debug */ = { + OBJ_2692 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17018,27 +19501,29 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GrammarModelBase_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/Intentions_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = GrammarModelBase; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = Intentions; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GrammarModelBase; + TARGET_NAME = Intentions; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2275 /* Release */ = { + OBJ_2693 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17051,27 +19536,29 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GrammarModelBase_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/Intentions_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = GrammarModelBase; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = Intentions; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GrammarModelBase; + TARGET_NAME = Intentions; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2290 /* Debug */ = { + OBJ_2773 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -17085,23 +19572,25 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GrammarModelBaseTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionsTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GrammarModelBaseTests; + TARGET_NAME = IntentionsTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2291 /* Release */ = { + OBJ_2774 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -17115,23 +19604,25 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GrammarModelBaseTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionsTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GrammarModelBaseTests; + TARGET_NAME = IntentionsTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2304 /* Debug */ = { + OBJ_2889 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17141,27 +19632,32 @@ "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GraphvizLib_Info.plist; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JavaScriptFrontend_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = GraphvizLib; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = JavaScriptFrontend; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GraphvizLib; + TARGET_NAME = JavaScriptFrontend; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2305 /* Release */ = { + OBJ_2890 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17171,27 +19667,32 @@ "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", ); - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GraphvizLib_Info.plist; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", + ); + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JavaScriptFrontend_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = GraphvizLib; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = JavaScriptFrontend; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GraphvizLib; + TARGET_NAME = JavaScriptFrontend; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2313 /* Debug */ = { + OBJ_2993 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -17208,7 +19709,7 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GraphvizLibTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JavaScriptFrontendTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; @@ -17217,13 +19718,13 @@ OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GraphvizLibTests; + TARGET_NAME = JavaScriptFrontendTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2314 /* Release */ = { + OBJ_2994 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -17240,7 +19741,7 @@ "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/GraphvizLibTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JavaScriptFrontendTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; @@ -17249,13 +19750,41 @@ OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = GraphvizLibTests; + TARGET_NAME = JavaScriptFrontendTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2396 /* Debug */ = { + OBJ_3 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_OBJC_ARC = YES; + COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_NS_ASSERTIONS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(inherited)", + "SWIFT_PACKAGE=1", + "DEBUG=1", + ); + MACOSX_DEPLOYMENT_TARGET = 10.10; + ONLY_ACTIVE_ARCH = YES; + OTHER_SWIFT_FLAGS = "$(inherited) -DXcode"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SUPPORTED_PLATFORMS = "$(AVAILABLE_PLATFORMS)"; + SUPPORTS_MACCATALYST = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) SWIFT_PACKAGE DEBUG"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + USE_HEADERMAP = NO; + }; + name = Debug; + }; + OBJ_3097 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17268,29 +19797,27 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionPasses_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JsGrammarModels_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; - OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = IntentionPasses; + OTHER_LDFLAGS = "$(inherited)"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = JsGrammarModels; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = IntentionPasses; + TARGET_NAME = JsGrammarModels; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2397 /* Release */ = { + OBJ_3098 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17303,35 +19830,32 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionPasses_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JsGrammarModels_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = IntentionPasses; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = JsGrammarModels; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = IntentionPasses; + TARGET_NAME = JsGrammarModels; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2465 /* Debug */ = { + OBJ_3130 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; DRIVERKIT_DEPLOYMENT_TARGET = 19.0; - EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; + ENABLE_TESTABILITY = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", @@ -17339,31 +19863,32 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionPassesTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JsParser_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = JsParser; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = IntentionPassesTests; + TARGET_NAME = JsParser; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2466 /* Release */ = { + OBJ_3131 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - CLANG_ENABLE_MODULES = YES; CURRENT_PROJECT_VERSION = 1; DRIVERKIT_DEPLOYMENT_TARGET = 19.0; - EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; + ENABLE_TESTABILITY = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PLATFORM_DIR)/Developer/Library/Frameworks", @@ -17371,25 +19896,27 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionPassesTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JsParser_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = JsParser; + PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = IntentionPassesTests; + TARGET_NAME = JsParser; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2560 /* Debug */ = { + OBJ_3160 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17402,29 +19929,27 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/Intentions_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JsParserAntlr_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = Intentions; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = JsParserAntlr; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = Intentions; + TARGET_NAME = JsParserAntlr; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2561 /* Release */ = { + OBJ_3161 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17437,29 +19962,27 @@ HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", - "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/Intentions_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JsParserAntlr_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; - PRODUCT_BUNDLE_IDENTIFIER = Intentions; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = JsParserAntlr; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = Intentions; + TARGET_NAME = JsParserAntlr; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2641 /* Debug */ = { + OBJ_3183 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -17472,26 +19995,26 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionsTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JsParserTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = IntentionsTests; + TARGET_NAME = JsParserTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; - OBJ_2642 /* Release */ = { + OBJ_3184 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -17504,26 +20027,26 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", + "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); - INFOPLIST_FILE = SwiftRewriter.xcodeproj/IntentionsTests_Info.plist; + INFOPLIST_FILE = SwiftRewriter.xcodeproj/JsParserTests_Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; - TARGET_NAME = IntentionsTests; + TARGET_NAME = JsParserTests; TVOS_DEPLOYMENT_TARGET = 11.0; WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; - OBJ_2750 /* Debug */ = { + OBJ_3273 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17557,7 +20080,7 @@ }; name = Debug; }; - OBJ_2751 /* Release */ = { + OBJ_3274 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17591,7 +20114,7 @@ }; name = Release; }; - OBJ_2782 /* Debug */ = { + OBJ_3305 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -17623,7 +20146,7 @@ }; name = Debug; }; - OBJ_2783 /* Release */ = { + OBJ_3306 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -17655,7 +20178,7 @@ }; name = Release; }; - OBJ_2866 /* Debug */ = { + OBJ_3395 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17685,7 +20208,7 @@ }; name = Debug; }; - OBJ_2867 /* Release */ = { + OBJ_3396 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17715,7 +20238,7 @@ }; name = Release; }; - OBJ_2880 /* Debug */ = { + OBJ_3409 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { LD = /usr/bin/true; @@ -17724,7 +20247,7 @@ }; name = Debug; }; - OBJ_2881 /* Release */ = { + OBJ_3410 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { LD = /usr/bin/true; @@ -17733,7 +20256,7 @@ }; name = Release; }; - OBJ_2885 /* Debug */ = { + OBJ_3414 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17766,7 +20289,7 @@ }; name = Debug; }; - OBJ_2886 /* Release */ = { + OBJ_3415 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17799,7 +20322,7 @@ }; name = Release; }; - OBJ_2930 /* Debug */ = { + OBJ_3459 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -17829,7 +20352,7 @@ }; name = Debug; }; - OBJ_2931 /* Release */ = { + OBJ_3460 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -17859,7 +20382,7 @@ }; name = Release; }; - OBJ_2950 /* Debug */ = { + OBJ_3479 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17892,7 +20415,7 @@ }; name = Debug; }; - OBJ_2951 /* Release */ = { + OBJ_3480 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17925,35 +20448,7 @@ }; name = Release; }; - OBJ_3 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_OBJC_ARC = YES; - COMBINE_HIDPI_IMAGES = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_NS_ASSERTIONS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "$(inherited)", - "SWIFT_PACKAGE=1", - "DEBUG=1", - ); - MACOSX_DEPLOYMENT_TARGET = 10.10; - ONLY_ACTIVE_ARCH = YES; - OTHER_SWIFT_FLAGS = "$(inherited) -DXcode"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = macosx; - SUPPORTED_PLATFORMS = "$(AVAILABLE_PLATFORMS)"; - SUPPORTS_MACCATALYST = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) SWIFT_PACKAGE DEBUG"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - USE_HEADERMAP = NO; - }; - name = Debug; - }; - OBJ_3043 /* Debug */ = { + OBJ_3572 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -17987,7 +20482,7 @@ }; name = Debug; }; - OBJ_3044 /* Release */ = { + OBJ_3573 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18021,7 +20516,7 @@ }; name = Release; }; - OBJ_3070 /* Debug */ = { + OBJ_3599 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -18053,7 +20548,7 @@ }; name = Debug; }; - OBJ_3071 /* Release */ = { + OBJ_3600 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -18085,7 +20580,7 @@ }; name = Release; }; - OBJ_3162 /* Debug */ = { + OBJ_3697 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18097,8 +20592,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/ObjectiveCFrontend_Info.plist; @@ -18107,7 +20602,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; PRODUCT_BUNDLE_IDENTIFIER = ObjectiveCFrontend; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; @@ -18120,7 +20615,7 @@ }; name = Debug; }; - OBJ_3163 /* Release */ = { + OBJ_3698 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18132,8 +20627,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/ObjectiveCFrontend_Info.plist; @@ -18142,7 +20637,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; PRODUCT_BUNDLE_IDENTIFIER = ObjectiveCFrontend; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; @@ -18155,7 +20650,7 @@ }; name = Release; }; - OBJ_3263 /* Debug */ = { + OBJ_3804 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -18168,8 +20663,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/ObjectiveCFrontendTests_Info.plist; @@ -18178,7 +20673,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; TARGET_NAME = ObjectiveCFrontendTests; @@ -18187,7 +20682,7 @@ }; name = Debug; }; - OBJ_3264 /* Release */ = { + OBJ_3805 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -18200,8 +20695,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/ObjectiveCFrontendTests_Info.plist; @@ -18210,7 +20705,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; TARGET_NAME = ObjectiveCFrontendTests; @@ -18219,7 +20714,7 @@ }; name = Release; }; - OBJ_3372 /* Debug */ = { + OBJ_3919 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18249,7 +20744,7 @@ }; name = Debug; }; - OBJ_3373 /* Release */ = { + OBJ_3920 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18279,7 +20774,7 @@ }; name = Release; }; - OBJ_3384 /* Debug */ = { + OBJ_3931 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -18292,8 +20787,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SourcePreprocessorsTests_Info.plist; @@ -18302,7 +20797,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; TARGET_NAME = SourcePreprocessorsTests; @@ -18311,7 +20806,7 @@ }; name = Debug; }; - OBJ_3385 /* Release */ = { + OBJ_3932 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -18324,8 +20819,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SourcePreprocessorsTests_Info.plist; @@ -18334,7 +20829,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; TARGET_NAME = SourcePreprocessorsTests; @@ -18343,7 +20838,32 @@ }; name = Release; }; - OBJ_3462 /* Debug */ = { + OBJ_4 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_OBJC_ARC = YES; + COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_OPTIMIZATION_LEVEL = s; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(inherited)", + "SWIFT_PACKAGE=1", + ); + MACOSX_DEPLOYMENT_TARGET = 10.10; + OTHER_SWIFT_FLAGS = "$(inherited) -DXcode"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SUPPORTED_PLATFORMS = "$(AVAILABLE_PLATFORMS)"; + SUPPORTS_MACCATALYST = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) SWIFT_PACKAGE"; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + USE_HEADERMAP = NO; + }; + name = Release; + }; + OBJ_4015 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18377,7 +20897,7 @@ }; name = Debug; }; - OBJ_3463 /* Release */ = { + OBJ_4016 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18411,7 +20931,7 @@ }; name = Release; }; - OBJ_3571 /* Debug */ = { + OBJ_4124 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -18443,7 +20963,7 @@ }; name = Debug; }; - OBJ_3572 /* Release */ = { + OBJ_4125 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -18475,7 +20995,7 @@ }; name = Release; }; - OBJ_3673 /* Debug */ = { + OBJ_4232 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18509,7 +21029,7 @@ }; name = Debug; }; - OBJ_3674 /* Release */ = { + OBJ_4233 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18543,7 +21063,7 @@ }; name = Release; }; - OBJ_3703 /* Debug */ = { + OBJ_4262 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18573,7 +21093,7 @@ }; name = Debug; }; - OBJ_3704 /* Release */ = { + OBJ_4263 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18603,7 +21123,7 @@ }; name = Release; }; - OBJ_3711 /* Debug */ = { + OBJ_4270 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18637,7 +21157,7 @@ }; name = Debug; }; - OBJ_3712 /* Release */ = { + OBJ_4271 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18671,7 +21191,7 @@ }; name = Release; }; - OBJ_3735 /* Debug */ = { + OBJ_4294 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18705,7 +21225,7 @@ }; name = Debug; }; - OBJ_3736 /* Release */ = { + OBJ_4295 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18739,7 +21259,7 @@ }; name = Release; }; - OBJ_3757 /* Debug */ = { + OBJ_4316 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18773,7 +21293,7 @@ }; name = Debug; }; - OBJ_3758 /* Release */ = { + OBJ_4317 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18807,7 +21327,7 @@ }; name = Release; }; - OBJ_3815 /* Debug */ = { + OBJ_4374 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18841,7 +21361,7 @@ }; name = Debug; }; - OBJ_3816 /* Release */ = { + OBJ_4375 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18875,7 +21395,7 @@ }; name = Release; }; - OBJ_3833 /* Debug */ = { + OBJ_4392 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18886,8 +21406,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SwiftRewriter_Info.plist; @@ -18896,7 +21416,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_FORCE_DYNAMIC_LINK_STDLIB = YES; SWIFT_FORCE_STATIC_LINK_STDLIB = NO; @@ -18907,7 +21427,7 @@ }; name = Debug; }; - OBJ_3834 /* Release */ = { + OBJ_4393 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18918,8 +21438,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SwiftRewriter_Info.plist; @@ -18928,7 +21448,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_FORCE_DYNAMIC_LINK_STDLIB = YES; SWIFT_FORCE_STATIC_LINK_STDLIB = NO; @@ -18939,7 +21459,7 @@ }; name = Release; }; - OBJ_3927 /* Debug */ = { + OBJ_4497 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18951,8 +21471,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SwiftRewriterCLI_Info.plist; @@ -18961,7 +21481,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; PRODUCT_BUNDLE_IDENTIFIER = SwiftRewriterCLI; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; @@ -18974,7 +21494,7 @@ }; name = Debug; }; - OBJ_3928 /* Release */ = { + OBJ_4498 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -18986,8 +21506,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SwiftRewriterCLI_Info.plist; @@ -18996,7 +21516,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; PRODUCT_BUNDLE_IDENTIFIER = SwiftRewriterCLI; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; @@ -19009,32 +21529,7 @@ }; name = Release; }; - OBJ_4 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_OBJC_ARC = YES; - COMBINE_HIDPI_IMAGES = YES; - COPY_PHASE_STRIP = YES; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_OPTIMIZATION_LEVEL = s; - GCC_PREPROCESSOR_DEFINITIONS = ( - "$(inherited)", - "SWIFT_PACKAGE=1", - ); - MACOSX_DEPLOYMENT_TARGET = 10.10; - OTHER_SWIFT_FLAGS = "$(inherited) -DXcode"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = macosx; - SUPPORTED_PLATFORMS = "$(AVAILABLE_PLATFORMS)"; - SUPPORTS_MACCATALYST = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) SWIFT_PACKAGE"; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - USE_HEADERMAP = NO; - }; - name = Release; - }; - OBJ_4012 /* Debug */ = { + OBJ_4588 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19046,8 +21541,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SwiftRewriterLib_Info.plist; @@ -19056,7 +21551,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; PRODUCT_BUNDLE_IDENTIFIER = SwiftRewriterLib; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; @@ -19069,7 +21564,7 @@ }; name = Debug; }; - OBJ_4013 /* Release */ = { + OBJ_4589 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19081,8 +21576,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SwiftRewriterLib_Info.plist; @@ -19091,7 +21586,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; PRODUCT_BUNDLE_IDENTIFIER = SwiftRewriterLib; PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; @@ -19104,7 +21599,7 @@ }; name = Release; }; - OBJ_4103 /* Debug */ = { + OBJ_4685 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -19117,8 +21612,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SwiftRewriterLibTests_Info.plist; @@ -19127,7 +21622,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; TARGET_NAME = SwiftRewriterLibTests; @@ -19136,7 +21631,7 @@ }; name = Debug; }; - OBJ_4104 /* Release */ = { + OBJ_4686 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -19149,8 +21644,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SwiftRewriterLibTests_Info.plist; @@ -19159,7 +21654,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; TARGET_NAME = SwiftRewriterLibTests; @@ -19168,7 +21663,7 @@ }; name = Release; }; - OBJ_4187 /* Debug */ = { + OBJ_4775 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { LD = /usr/bin/true; @@ -19177,7 +21672,7 @@ }; name = Debug; }; - OBJ_4188 /* Release */ = { + OBJ_4776 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { LD = /usr/bin/true; @@ -19186,19 +21681,19 @@ }; name = Release; }; - OBJ_4193 /* Debug */ = { + OBJ_4781 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { }; name = Debug; }; - OBJ_4194 /* Release */ = { + OBJ_4782 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { }; name = Release; }; - OBJ_4225 /* Debug */ = { + OBJ_4815 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -19211,8 +21706,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SwiftRewriterTests_Info.plist; @@ -19221,7 +21716,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; TARGET_NAME = SwiftRewriterTests; @@ -19230,7 +21725,7 @@ }; name = Debug; }; - OBJ_4226 /* Release */ = { + OBJ_4816 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -19243,8 +21738,8 @@ ); HEADER_SEARCH_PATHS = ( "$(inherited)", - "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include", + "$(SRCROOT)/.build/checkouts/swift-syntax/Sources/_CSwiftSyntax/include", "$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax", ); INFOPLIST_FILE = SwiftRewriter.xcodeproj/SwiftRewriterTests_Info.plist; @@ -19253,7 +21748,7 @@ MACOSX_DEPLOYMENT_TARGET = 10.15; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; - OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap"; + OTHER_SWIFT_FLAGS = "$(inherited) -Xcc -fmodule-map-file=$(SRCROOT)/.build/checkouts/antlr4-swift/Sources/CAntlrShims/include/module.modulemap -Xcc -fmodule-map-file=$(SRCROOT)/SwiftRewriter.xcodeproj/GeneratedModuleMap/_CSwiftSyntax/module.modulemap"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)"; SWIFT_VERSION = 5.0; TARGET_NAME = SwiftRewriterTests; @@ -19262,7 +21757,7 @@ }; name = Release; }; - OBJ_4312 /* Debug */ = { + OBJ_4910 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19297,7 +21792,7 @@ }; name = Debug; }; - OBJ_4313 /* Release */ = { + OBJ_4911 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19332,7 +21827,7 @@ }; name = Release; }; - OBJ_4356 /* Debug */ = { + OBJ_4954 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { LD = /usr/bin/true; @@ -19341,7 +21836,7 @@ }; name = Debug; }; - OBJ_4357 /* Release */ = { + OBJ_4955 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { LD = /usr/bin/true; @@ -19350,7 +21845,7 @@ }; name = Release; }; - OBJ_4361 /* Debug */ = { + OBJ_4959 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19384,7 +21879,7 @@ }; name = Debug; }; - OBJ_4362 /* Release */ = { + OBJ_4960 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19418,7 +21913,7 @@ }; name = Release; }; - OBJ_4374 /* Debug */ = { + OBJ_4972 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19453,7 +21948,7 @@ }; name = Debug; }; - OBJ_4375 /* Release */ = { + OBJ_4973 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19488,7 +21983,7 @@ }; name = Release; }; - OBJ_4405 /* Debug */ = { + OBJ_5003 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -19520,7 +22015,7 @@ }; name = Debug; }; - OBJ_4406 /* Release */ = { + OBJ_5004 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -19552,7 +22047,7 @@ }; name = Release; }; - OBJ_4489 /* Debug */ = { + OBJ_5093 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19587,7 +22082,7 @@ }; name = Debug; }; - OBJ_4490 /* Release */ = { + OBJ_5094 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19622,7 +22117,7 @@ }; name = Release; }; - OBJ_4530 /* Debug */ = { + OBJ_5134 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -19654,7 +22149,7 @@ }; name = Debug; }; - OBJ_4531 /* Release */ = { + OBJ_5135 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -19686,7 +22181,7 @@ }; name = Release; }; - OBJ_4617 /* Debug */ = { + OBJ_5227 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19721,7 +22216,7 @@ }; name = Debug; }; - OBJ_4618 /* Release */ = { + OBJ_5228 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19756,7 +22251,7 @@ }; name = Release; }; - OBJ_4762 /* Debug */ = { + OBJ_5381 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -19788,7 +22283,7 @@ }; name = Debug; }; - OBJ_4763 /* Release */ = { + OBJ_5382 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -19820,7 +22315,7 @@ }; name = Release; }; - OBJ_4845 /* Debug */ = { + OBJ_5470 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19850,7 +22345,7 @@ }; name = Debug; }; - OBJ_4846 /* Release */ = { + OBJ_5471 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19880,7 +22375,7 @@ }; name = Release; }; - OBJ_4851 /* Debug */ = { + OBJ_5476 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19910,7 +22405,7 @@ }; name = Debug; }; - OBJ_4852 /* Release */ = { + OBJ_5477 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19940,7 +22435,7 @@ }; name = Release; }; - OBJ_4859 /* Debug */ = { + OBJ_5484 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -19975,7 +22470,7 @@ }; name = Debug; }; - OBJ_4860 /* Release */ = { + OBJ_5485 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -20010,7 +22505,7 @@ }; name = Release; }; - OBJ_4936 /* Debug */ = { + OBJ_5561 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -20042,7 +22537,7 @@ }; name = Debug; }; - OBJ_4937 /* Release */ = { + OBJ_5562 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -20074,7 +22569,7 @@ }; name = Release; }; - OBJ_5032 /* Debug */ = { + OBJ_5663 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -20104,7 +22599,7 @@ }; name = Debug; }; - OBJ_5033 /* Release */ = { + OBJ_5664 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -20134,7 +22629,7 @@ }; name = Release; }; - OBJ_5051 /* Debug */ = { + OBJ_5682 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -20161,7 +22656,7 @@ }; name = Debug; }; - OBJ_5052 /* Release */ = { + OBJ_5683 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -20188,7 +22683,7 @@ }; name = Release; }; - OBJ_5065 /* Debug */ = { + OBJ_5696 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -20222,7 +22717,7 @@ }; name = Debug; }; - OBJ_5066 /* Release */ = { + OBJ_5697 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -20256,7 +22751,7 @@ }; name = Release; }; - OBJ_5079 /* Debug */ = { + OBJ_5710 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -20288,7 +22783,7 @@ }; name = Debug; }; - OBJ_5080 /* Release */ = { + OBJ_5711 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_MODULES = YES; @@ -20320,7 +22815,7 @@ }; name = Release; }; - OBJ_5162 /* Debug */ = { + OBJ_5799 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -20353,7 +22848,7 @@ }; name = Debug; }; - OBJ_5163 /* Release */ = { + OBJ_5800 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { CURRENT_PROJECT_VERSION = 1; @@ -20386,7 +22881,7 @@ }; name = Release; }; - OBJ_5169 /* Debug */ = { + OBJ_5806 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { LD = /usr/bin/true; @@ -20395,7 +22890,7 @@ }; name = Debug; }; - OBJ_5170 /* Release */ = { + OBJ_5807 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { LD = /usr/bin/true; @@ -20404,7 +22899,7 @@ }; name = Release; }; - OBJ_5175 /* Debug */ = { + OBJ_5812 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { LD = /usr/bin/true; @@ -20413,7 +22908,7 @@ }; name = Debug; }; - OBJ_5176 /* Release */ = { + OBJ_5813 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { LD = /usr/bin/true; @@ -20425,659 +22920,713 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - OBJ_1357 /* Build configuration list for PBXNativeTarget "Analysis" */ = { + OBJ_1450 /* Build configuration list for PBXNativeTarget "Analysis" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1358 /* Debug */, - OBJ_1359 /* Release */, + OBJ_1451 /* Debug */, + OBJ_1452 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1443 /* Build configuration list for PBXNativeTarget "AnalysisTests" */ = { + OBJ_1536 /* Build configuration list for PBXNativeTarget "AnalysisTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1444 /* Debug */, - OBJ_1445 /* Release */, + OBJ_1537 /* Debug */, + OBJ_1538 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1556 /* Build configuration list for PBXNativeTarget "Antlr4" */ = { + OBJ_1658 /* Build configuration list for PBXNativeTarget "Antlr4" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1557 /* Debug */, - OBJ_1558 /* Release */, + OBJ_1659 /* Debug */, + OBJ_1660 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1719 /* Build configuration list for PBXNativeTarget "Antlr4PackageDescription" */ = { + OBJ_1821 /* Build configuration list for PBXNativeTarget "Antlr4PackageDescription" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1720 /* Debug */, - OBJ_1721 /* Release */, + OBJ_1822 /* Debug */, + OBJ_1823 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1724 /* Build configuration list for PBXNativeTarget "AntlrCommons" */ = { + OBJ_1826 /* Build configuration list for PBXNativeTarget "AntlrCommons" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1725 /* Debug */, - OBJ_1726 /* Release */, + OBJ_1827 /* Debug */, + OBJ_1828 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1740 /* Build configuration list for PBXNativeTarget "ArgumentParser" */ = { + OBJ_1842 /* Build configuration list for PBXNativeTarget "ArgumentParser" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1741 /* Debug */, - OBJ_1742 /* Release */, + OBJ_1843 /* Debug */, + OBJ_1844 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1787 /* Build configuration list for PBXNativeTarget "ArgumentParserToolInfo" */ = { + OBJ_1889 /* Build configuration list for PBXNativeTarget "ArgumentParserToolInfo" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1788 /* Debug */, - OBJ_1789 /* Release */, + OBJ_1890 /* Debug */, + OBJ_1891 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1793 /* Build configuration list for PBXNativeTarget "CAntlrShims" */ = { + OBJ_1895 /* Build configuration list for PBXNativeTarget "CAntlrShims" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1794 /* Debug */, - OBJ_1795 /* Release */, + OBJ_1896 /* Debug */, + OBJ_1897 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1799 /* Build configuration list for PBXNativeTarget "Commons" */ = { + OBJ_1901 /* Build configuration list for PBXNativeTarget "Commons" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1800 /* Debug */, - OBJ_1801 /* Release */, + OBJ_1902 /* Debug */, + OBJ_1903 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1862 /* Build configuration list for PBXNativeTarget "CommonsTests" */ = { + OBJ_1964 /* Build configuration list for PBXNativeTarget "CommonsTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1863 /* Debug */, - OBJ_1864 /* Release */, + OBJ_1965 /* Debug */, + OBJ_1966 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1950 /* Build configuration list for PBXNativeTarget "Console" */ = { + OBJ_2 /* Build configuration list for PBXProject "SwiftRewriter" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1951 /* Debug */, - OBJ_1952 /* Release */, + OBJ_3 /* Debug */, + OBJ_4 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1963 /* Build configuration list for PBXNativeTarget "ConsolePackageDescription" */ = { + OBJ_2058 /* Build configuration list for PBXNativeTarget "Console" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1964 /* Debug */, - OBJ_1965 /* Release */, + OBJ_2059 /* Debug */, + OBJ_2060 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_1968 /* Build configuration list for PBXNativeTarget "ExpressionPasses" */ = { + OBJ_2071 /* Build configuration list for PBXNativeTarget "ConsolePackageDescription" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_1969 /* Debug */, - OBJ_1970 /* Release */, + OBJ_2072 /* Debug */, + OBJ_2073 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2 /* Build configuration list for PBXProject "SwiftRewriter" */ = { + OBJ_2076 /* Build configuration list for PBXNativeTarget "ExpressionPasses" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3 /* Debug */, - OBJ_4 /* Release */, + OBJ_2077 /* Debug */, + OBJ_2078 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2039 /* Build configuration list for PBXNativeTarget "ExpressionPassesTests" */ = { + OBJ_2147 /* Build configuration list for PBXNativeTarget "ExpressionPassesTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2040 /* Debug */, - OBJ_2041 /* Release */, + OBJ_2148 /* Debug */, + OBJ_2149 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2137 /* Build configuration list for PBXNativeTarget "GlobalsProviders" */ = { + OBJ_2251 /* Build configuration list for PBXNativeTarget "GlobalsProviders" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2138 /* Debug */, - OBJ_2139 /* Release */, + OBJ_2252 /* Debug */, + OBJ_2253 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2187 /* Build configuration list for PBXNativeTarget "GlobalsProvidersTests" */ = { + OBJ_2301 /* Build configuration list for PBXNativeTarget "GlobalsProvidersTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2188 /* Debug */, - OBJ_2189 /* Release */, + OBJ_2302 /* Debug */, + OBJ_2303 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2273 /* Build configuration list for PBXNativeTarget "GrammarModelBase" */ = { + OBJ_2393 /* Build configuration list for PBXNativeTarget "GrammarModelBase" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2274 /* Debug */, - OBJ_2275 /* Release */, + OBJ_2394 /* Debug */, + OBJ_2395 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2289 /* Build configuration list for PBXNativeTarget "GrammarModelBaseTests" */ = { + OBJ_2409 /* Build configuration list for PBXNativeTarget "GrammarModelBaseTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2290 /* Debug */, - OBJ_2291 /* Release */, + OBJ_2410 /* Debug */, + OBJ_2411 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2303 /* Build configuration list for PBXNativeTarget "GraphvizLib" */ = { + OBJ_2423 /* Build configuration list for PBXNativeTarget "GraphvizLib" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2304 /* Debug */, - OBJ_2305 /* Release */, + OBJ_2424 /* Debug */, + OBJ_2425 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2312 /* Build configuration list for PBXNativeTarget "GraphvizLibTests" */ = { + OBJ_2432 /* Build configuration list for PBXNativeTarget "GraphvizLibTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2313 /* Debug */, - OBJ_2314 /* Release */, + OBJ_2433 /* Debug */, + OBJ_2434 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2395 /* Build configuration list for PBXNativeTarget "IntentionPasses" */ = { + OBJ_2521 /* Build configuration list for PBXNativeTarget "IntentionPasses" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2396 /* Debug */, - OBJ_2397 /* Release */, + OBJ_2522 /* Debug */, + OBJ_2523 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2464 /* Build configuration list for PBXNativeTarget "IntentionPassesTests" */ = { + OBJ_2590 /* Build configuration list for PBXNativeTarget "IntentionPassesTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2465 /* Debug */, - OBJ_2466 /* Release */, + OBJ_2591 /* Debug */, + OBJ_2592 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2559 /* Build configuration list for PBXNativeTarget "Intentions" */ = { + OBJ_2691 /* Build configuration list for PBXNativeTarget "Intentions" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2560 /* Debug */, - OBJ_2561 /* Release */, + OBJ_2692 /* Debug */, + OBJ_2693 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2640 /* Build configuration list for PBXNativeTarget "IntentionsTests" */ = { + OBJ_2772 /* Build configuration list for PBXNativeTarget "IntentionsTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2641 /* Debug */, - OBJ_2642 /* Release */, + OBJ_2773 /* Debug */, + OBJ_2774 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2749 /* Build configuration list for PBXNativeTarget "KnownType" */ = { + OBJ_2888 /* Build configuration list for PBXNativeTarget "JavaScriptFrontend" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2750 /* Debug */, - OBJ_2751 /* Release */, + OBJ_2889 /* Debug */, + OBJ_2890 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2781 /* Build configuration list for PBXNativeTarget "KnownTypeTests" */ = { + OBJ_2992 /* Build configuration list for PBXNativeTarget "JavaScriptFrontendTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2782 /* Debug */, - OBJ_2783 /* Release */, + OBJ_2993 /* Debug */, + OBJ_2994 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2865 /* Build configuration list for PBXNativeTarget "MiniLexer" */ = { + OBJ_3096 /* Build configuration list for PBXNativeTarget "JsGrammarModels" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2866 /* Debug */, - OBJ_2867 /* Release */, + OBJ_3097 /* Debug */, + OBJ_3098 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2879 /* Build configuration list for PBXNativeTarget "MiniLexerPackageDescription" */ = { + OBJ_3129 /* Build configuration list for PBXNativeTarget "JsParser" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2880 /* Debug */, - OBJ_2881 /* Release */, + OBJ_3130 /* Debug */, + OBJ_3131 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2884 /* Build configuration list for PBXNativeTarget "ObjcGrammarModels" */ = { + OBJ_3159 /* Build configuration list for PBXNativeTarget "JsParserAntlr" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2885 /* Debug */, - OBJ_2886 /* Release */, + OBJ_3160 /* Debug */, + OBJ_3161 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2929 /* Build configuration list for PBXNativeTarget "ObjcGrammarModelsTests" */ = { + OBJ_3182 /* Build configuration list for PBXNativeTarget "JsParserTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2930 /* Debug */, - OBJ_2931 /* Release */, + OBJ_3183 /* Debug */, + OBJ_3184 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_2949 /* Build configuration list for PBXNativeTarget "ObjcParser" */ = { + OBJ_3272 /* Build configuration list for PBXNativeTarget "KnownType" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_2950 /* Debug */, - OBJ_2951 /* Release */, + OBJ_3273 /* Debug */, + OBJ_3274 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3042 /* Build configuration list for PBXNativeTarget "ObjcParserAntlr" */ = { + OBJ_3304 /* Build configuration list for PBXNativeTarget "KnownTypeTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3043 /* Debug */, - OBJ_3044 /* Release */, + OBJ_3305 /* Debug */, + OBJ_3306 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3069 /* Build configuration list for PBXNativeTarget "ObjcParserTests" */ = { + OBJ_3394 /* Build configuration list for PBXNativeTarget "MiniLexer" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3070 /* Debug */, - OBJ_3071 /* Release */, + OBJ_3395 /* Debug */, + OBJ_3396 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3161 /* Build configuration list for PBXNativeTarget "ObjectiveCFrontend" */ = { + OBJ_3408 /* Build configuration list for PBXNativeTarget "MiniLexerPackageDescription" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3162 /* Debug */, - OBJ_3163 /* Release */, + OBJ_3409 /* Debug */, + OBJ_3410 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3262 /* Build configuration list for PBXNativeTarget "ObjectiveCFrontendTests" */ = { + OBJ_3413 /* Build configuration list for PBXNativeTarget "ObjcGrammarModels" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3263 /* Debug */, - OBJ_3264 /* Release */, + OBJ_3414 /* Debug */, + OBJ_3415 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3371 /* Build configuration list for PBXNativeTarget "SourcePreprocessors" */ = { + OBJ_3458 /* Build configuration list for PBXNativeTarget "ObjcGrammarModelsTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3372 /* Debug */, - OBJ_3373 /* Release */, + OBJ_3459 /* Debug */, + OBJ_3460 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3383 /* Build configuration list for PBXNativeTarget "SourcePreprocessorsTests" */ = { + OBJ_3478 /* Build configuration list for PBXNativeTarget "ObjcParser" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3384 /* Debug */, - OBJ_3385 /* Release */, + OBJ_3479 /* Debug */, + OBJ_3480 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3461 /* Build configuration list for PBXNativeTarget "SwiftAST" */ = { + OBJ_3571 /* Build configuration list for PBXNativeTarget "ObjcParserAntlr" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3462 /* Debug */, - OBJ_3463 /* Release */, + OBJ_3572 /* Debug */, + OBJ_3573 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3570 /* Build configuration list for PBXNativeTarget "SwiftASTTests" */ = { + OBJ_3598 /* Build configuration list for PBXNativeTarget "ObjcParserTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3571 /* Debug */, - OBJ_3572 /* Release */, + OBJ_3599 /* Debug */, + OBJ_3600 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3672 /* Build configuration list for PBXNativeTarget "SwiftFormat" */ = { + OBJ_3696 /* Build configuration list for PBXNativeTarget "ObjectiveCFrontend" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3673 /* Debug */, - OBJ_3674 /* Release */, + OBJ_3697 /* Debug */, + OBJ_3698 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3702 /* Build configuration list for PBXNativeTarget "SwiftFormatConfiguration" */ = { + OBJ_3803 /* Build configuration list for PBXNativeTarget "ObjectiveCFrontendTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3703 /* Debug */, - OBJ_3704 /* Release */, + OBJ_3804 /* Debug */, + OBJ_3805 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3710 /* Build configuration list for PBXNativeTarget "SwiftFormatCore" */ = { + OBJ_3918 /* Build configuration list for PBXNativeTarget "SourcePreprocessors" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3711 /* Debug */, - OBJ_3712 /* Release */, + OBJ_3919 /* Debug */, + OBJ_3920 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3734 /* Build configuration list for PBXNativeTarget "SwiftFormatPrettyPrint" */ = { + OBJ_3930 /* Build configuration list for PBXNativeTarget "SourcePreprocessorsTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3735 /* Debug */, - OBJ_3736 /* Release */, + OBJ_3931 /* Debug */, + OBJ_3932 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3756 /* Build configuration list for PBXNativeTarget "SwiftFormatRules" */ = { + OBJ_4014 /* Build configuration list for PBXNativeTarget "SwiftAST" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3757 /* Debug */, - OBJ_3758 /* Release */, + OBJ_4015 /* Debug */, + OBJ_4016 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3814 /* Build configuration list for PBXNativeTarget "SwiftFormatWhitespaceLinter" */ = { + OBJ_4123 /* Build configuration list for PBXNativeTarget "SwiftASTTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3815 /* Debug */, - OBJ_3816 /* Release */, + OBJ_4124 /* Debug */, + OBJ_4125 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3832 /* Build configuration list for PBXNativeTarget "SwiftRewriter" */ = { + OBJ_4231 /* Build configuration list for PBXNativeTarget "SwiftFormat" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3833 /* Debug */, - OBJ_3834 /* Release */, + OBJ_4232 /* Debug */, + OBJ_4233 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_3926 /* Build configuration list for PBXNativeTarget "SwiftRewriterCLI" */ = { + OBJ_4261 /* Build configuration list for PBXNativeTarget "SwiftFormatConfiguration" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_3927 /* Debug */, - OBJ_3928 /* Release */, + OBJ_4262 /* Debug */, + OBJ_4263 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4011 /* Build configuration list for PBXNativeTarget "SwiftRewriterLib" */ = { + OBJ_4269 /* Build configuration list for PBXNativeTarget "SwiftFormatCore" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4012 /* Debug */, - OBJ_4013 /* Release */, + OBJ_4270 /* Debug */, + OBJ_4271 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4102 /* Build configuration list for PBXNativeTarget "SwiftRewriterLibTests" */ = { + OBJ_4293 /* Build configuration list for PBXNativeTarget "SwiftFormatPrettyPrint" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4103 /* Debug */, - OBJ_4104 /* Release */, + OBJ_4294 /* Debug */, + OBJ_4295 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4186 /* Build configuration list for PBXNativeTarget "SwiftRewriterPackageDescription" */ = { + OBJ_4315 /* Build configuration list for PBXNativeTarget "SwiftFormatRules" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4187 /* Debug */, - OBJ_4188 /* Release */, + OBJ_4316 /* Debug */, + OBJ_4317 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4192 /* Build configuration list for PBXAggregateTarget "SwiftRewriterPackageTests" */ = { + OBJ_4373 /* Build configuration list for PBXNativeTarget "SwiftFormatWhitespaceLinter" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4193 /* Debug */, - OBJ_4194 /* Release */, + OBJ_4374 /* Debug */, + OBJ_4375 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4224 /* Build configuration list for PBXNativeTarget "SwiftRewriterTests" */ = { + OBJ_4391 /* Build configuration list for PBXNativeTarget "SwiftRewriter" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4225 /* Debug */, - OBJ_4226 /* Release */, + OBJ_4392 /* Debug */, + OBJ_4393 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4311 /* Build configuration list for PBXNativeTarget "SwiftSyntax" */ = { + OBJ_4496 /* Build configuration list for PBXNativeTarget "SwiftRewriterCLI" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4312 /* Debug */, - OBJ_4313 /* Release */, + OBJ_4497 /* Debug */, + OBJ_4498 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4355 /* Build configuration list for PBXNativeTarget "SwiftSyntaxPackageDescription" */ = { + OBJ_4587 /* Build configuration list for PBXNativeTarget "SwiftRewriterLib" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4356 /* Debug */, - OBJ_4357 /* Release */, + OBJ_4588 /* Debug */, + OBJ_4589 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4360 /* Build configuration list for PBXNativeTarget "SwiftSyntaxParser" */ = { + OBJ_4684 /* Build configuration list for PBXNativeTarget "SwiftRewriterLibTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4361 /* Debug */, - OBJ_4362 /* Release */, + OBJ_4685 /* Debug */, + OBJ_4686 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4373 /* Build configuration list for PBXNativeTarget "SwiftSyntaxRewriterPasses" */ = { + OBJ_4774 /* Build configuration list for PBXNativeTarget "SwiftRewriterPackageDescription" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4374 /* Debug */, - OBJ_4375 /* Release */, + OBJ_4775 /* Debug */, + OBJ_4776 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + OBJ_4780 /* Build configuration list for PBXAggregateTarget "SwiftRewriterPackageTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + OBJ_4781 /* Debug */, + OBJ_4782 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + OBJ_4814 /* Build configuration list for PBXNativeTarget "SwiftRewriterTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + OBJ_4815 /* Debug */, + OBJ_4816 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + OBJ_4909 /* Build configuration list for PBXNativeTarget "SwiftSyntax" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + OBJ_4910 /* Debug */, + OBJ_4911 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + OBJ_4953 /* Build configuration list for PBXNativeTarget "SwiftSyntaxPackageDescription" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + OBJ_4954 /* Debug */, + OBJ_4955 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + OBJ_4958 /* Build configuration list for PBXNativeTarget "SwiftSyntaxParser" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + OBJ_4959 /* Debug */, + OBJ_4960 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + OBJ_4971 /* Build configuration list for PBXNativeTarget "SwiftSyntaxRewriterPasses" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + OBJ_4972 /* Debug */, + OBJ_4973 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4404 /* Build configuration list for PBXNativeTarget "SwiftSyntaxRewriterPassesTests" */ = { + OBJ_5002 /* Build configuration list for PBXNativeTarget "SwiftSyntaxRewriterPassesTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4405 /* Debug */, - OBJ_4406 /* Release */, + OBJ_5003 /* Debug */, + OBJ_5004 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4488 /* Build configuration list for PBXNativeTarget "SwiftSyntaxSupport" */ = { + OBJ_5092 /* Build configuration list for PBXNativeTarget "SwiftSyntaxSupport" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4489 /* Debug */, - OBJ_4490 /* Release */, + OBJ_5093 /* Debug */, + OBJ_5094 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4529 /* Build configuration list for PBXNativeTarget "SwiftSyntaxSupportTests" */ = { + OBJ_5133 /* Build configuration list for PBXNativeTarget "SwiftSyntaxSupportTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4530 /* Debug */, - OBJ_4531 /* Release */, + OBJ_5134 /* Debug */, + OBJ_5135 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4616 /* Build configuration list for PBXNativeTarget "TestCommons" */ = { + OBJ_5226 /* Build configuration list for PBXNativeTarget "TestCommons" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4617 /* Debug */, - OBJ_4618 /* Release */, + OBJ_5227 /* Debug */, + OBJ_5228 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4761 /* Build configuration list for PBXNativeTarget "TestCommonsTests" */ = { + OBJ_5380 /* Build configuration list for PBXNativeTarget "TestCommonsTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4762 /* Debug */, - OBJ_4763 /* Release */, + OBJ_5381 /* Debug */, + OBJ_5382 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4844 /* Build configuration list for PBXNativeTarget "TypeDefinitions" */ = { + OBJ_5469 /* Build configuration list for PBXNativeTarget "TypeDefinitions" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4845 /* Debug */, - OBJ_4846 /* Release */, + OBJ_5470 /* Debug */, + OBJ_5471 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4850 /* Build configuration list for PBXNativeTarget "TypeLexing" */ = { + OBJ_5475 /* Build configuration list for PBXNativeTarget "TypeLexing" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4851 /* Debug */, - OBJ_4852 /* Release */, + OBJ_5476 /* Debug */, + OBJ_5477 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4858 /* Build configuration list for PBXNativeTarget "TypeSystem" */ = { + OBJ_5483 /* Build configuration list for PBXNativeTarget "TypeSystem" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4859 /* Debug */, - OBJ_4860 /* Release */, + OBJ_5484 /* Debug */, + OBJ_5485 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_4935 /* Build configuration list for PBXNativeTarget "TypeSystemTests" */ = { + OBJ_5560 /* Build configuration list for PBXNativeTarget "TypeSystemTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_4936 /* Debug */, - OBJ_4937 /* Release */, + OBJ_5561 /* Debug */, + OBJ_5562 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_5031 /* Build configuration list for PBXNativeTarget "Utils" */ = { + OBJ_5662 /* Build configuration list for PBXNativeTarget "Utils" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_5032 /* Debug */, - OBJ_5033 /* Release */, + OBJ_5663 /* Debug */, + OBJ_5664 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_5050 /* Build configuration list for PBXNativeTarget "UtilsTests" */ = { + OBJ_5681 /* Build configuration list for PBXNativeTarget "UtilsTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_5051 /* Debug */, - OBJ_5052 /* Release */, + OBJ_5682 /* Debug */, + OBJ_5683 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_5064 /* Build configuration list for PBXNativeTarget "WriterTargetOutput" */ = { + OBJ_5695 /* Build configuration list for PBXNativeTarget "WriterTargetOutput" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_5065 /* Debug */, - OBJ_5066 /* Release */, + OBJ_5696 /* Debug */, + OBJ_5697 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_5078 /* Build configuration list for PBXNativeTarget "WriterTargetOutputTests" */ = { + OBJ_5709 /* Build configuration list for PBXNativeTarget "WriterTargetOutputTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_5079 /* Debug */, - OBJ_5080 /* Release */, + OBJ_5710 /* Debug */, + OBJ_5711 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_5161 /* Build configuration list for PBXNativeTarget "_CSwiftSyntax" */ = { + OBJ_5798 /* Build configuration list for PBXNativeTarget "_CSwiftSyntax" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_5162 /* Debug */, - OBJ_5163 /* Release */, + OBJ_5799 /* Debug */, + OBJ_5800 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_5168 /* Build configuration list for PBXNativeTarget "swift-argument-parserPackageDescription" */ = { + OBJ_5805 /* Build configuration list for PBXNativeTarget "swift-argument-parserPackageDescription" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_5169 /* Debug */, - OBJ_5170 /* Release */, + OBJ_5806 /* Debug */, + OBJ_5807 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - OBJ_5174 /* Build configuration list for PBXNativeTarget "swift-formatPackageDescription" */ = { + OBJ_5811 /* Build configuration list for PBXNativeTarget "swift-formatPackageDescription" */ = { isa = XCConfigurationList; buildConfigurations = ( - OBJ_5175 /* Debug */, - OBJ_5176 /* Release */, + OBJ_5812 /* Debug */, + OBJ_5813 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/SwiftRewriter.xcodeproj/xcshareddata/xcschemes/SwiftRewriter-Package.xcscheme b/SwiftRewriter.xcodeproj/xcshareddata/xcschemes/SwiftRewriter-Package.xcscheme index de1ebcddd..c3e2e7bd8 100644 --- a/SwiftRewriter.xcodeproj/xcshareddata/xcschemes/SwiftRewriter-Package.xcscheme +++ b/SwiftRewriter.xcodeproj/xcshareddata/xcschemes/SwiftRewriter-Package.xcscheme @@ -74,6 +74,38 @@ ReferencedContainer = "container:SwiftRewriter.xcodeproj"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + AntlrParser { + return try! Self._state.makeMainParser(input: source) + } + + func parseExpression( + _ parser: Parser, + source: Source, + typeSystem: TypeSystem, + intentionContext: FunctionBodyCarryingIntention?, + container: StatementContainer? + ) throws -> Expression? { + let expression = try parser.singleExpression() + + let context = JavaScriptASTReaderContext( + source: StringCodeSource(source: "", fileName: ".js"), + typeSystem: typeSystem, + typeContext: nil, + comments: [], + options: .default + ) + + let reader = JavaScriptExprASTReader( + context: context, + delegate: nil + ) + + return expression.accept(reader) + } + + func parseStatement( + _ parser: Parser, + source: Source, + typeSystem: TypeSystem, + intentionContext: FunctionBodyCarryingIntention?, + container: StatementContainer? + ) throws -> Statement? { + let stmt = try parser.statement() + + let expReader = + JavaScriptExprASTReader( + context: JavaScriptASTReaderContext( + source: StringCodeSource(source: "", fileName: ".js"), + typeSystem: typeSystem, + typeContext: nil, + comments: [], + options: .default + ), + delegate: nil + ) + + let reader = JavaScriptStatementASTReader( + expressionReader: expReader, + context: expReader.context, + delegate: nil + ) + + return stmt.accept(reader) + } +} + +class JavaScriptASTCorrectorExpressionPassTests: ExpressionPassTestCase { + override func setUp() { + super.setUp() + + sutType = JavaScriptASTCorrectorExpressionPass.self + } + + func testNullCoalesceOnLogicalOrExpression() { + let expMaker = { Expression.identifier("a") } + + let exp = expMaker().binary(op: .or, rhs: .constant(0)) + exp.lhs.resolvedType = .optional(.int) + exp.rhs.resolvedType = .int + + assertTransform( + // a || 100 + expression: exp, + // a ?? 100 + into: expMaker().binary(op: .nullCoalesce, rhs: .constant(0)) + ) + } + + func testNullCoalesceOnLogicalOrExpression_dontConvertOnBooleanOperands() { + let expMaker = { Expression.identifier("a") } + + let exp = expMaker().binary(op: .or, rhs: .identifier("b")) + exp.lhs.resolvedType = .bool + exp.rhs.resolvedType = .bool + + assertNoTransform( + // a || b + expression: exp + ) + } + + /// Tests inserting null-coalesces on optional numeric types on the left + /// and right side of arithmetic operators + func testNullCoalesceOnArithmeticOperators() { + let expMaker = { Expression.identifier("a") } + + let exp = expMaker().binary(op: .add, rhs: .identifier("b")) + exp.lhs.resolvedType = .optional(.int) + + assertTransform( + // a + b + expression: exp, + // (a ?? 0) + b + into: + .parens(expMaker().binary(op: .nullCoalesce, rhs: .constant(0))) + .binary(op: .add, rhs: .identifier("b")) + ) + } + + /// Tests null-coalescing on deep nested binary expressions + func testNullCoalesceOnNestedArithmeticOperators() { + let lhsLhsMaker = { Expression.identifier("a") } + let lhsMaker = { Expression.identifier("b") } + + let exp = (lhsLhsMaker().binary(op: .add, rhs: lhsMaker())).binary( + op: .add, + rhs: .identifier("c") + ) + exp.lhs.asBinary?.lhs.resolvedType = .optional(.int) + exp.lhs.asBinary?.rhs.resolvedType = .optional(.int) + + assertTransform( + // a + b + c + expression: exp, + // (a ?? 0) + (b ?? 0) + c + into: + .parens( + lhsLhsMaker() + .binary(op: .nullCoalesce, rhs: .constant(0)) + ) + .binary( + op: .add, + rhs: .parens(lhsMaker().binary(op: .nullCoalesce, rhs: .constant(0))) + ) + .binary(op: .add, rhs: .identifier("c")) + ) + } + + /// Tests that arithmetic comparisons (<=, <, >=, >) where lhs and rhs are + /// optional numeric values are coerced into default values using zeroes. + func testNullCoalesceOnArithmeticComparison() { + let expMaker = { Expression.identifier("a") } + + let exp = expMaker().binary(op: .lessThan, rhs: .identifier("b")) + exp.lhs.resolvedType = .optional(.int) + exp.rhs.resolvedType = .int + + assertTransform( + // a < b + expression: exp, + // (a ?? 0) < b + into: + .parens(expMaker().binary(op: .nullCoalesce, rhs: .constant(0))) + .binary(op: .lessThan, rhs: .identifier("b")) + ) + } + + /// Tests the corrector applies an integer correction to automatically null-coalesce + /// into zero's (to match original Objective-C behavior) + func testCorrectNullableInteger() { + let expMaker = { Expression.identifier("a").dot("b") } + + let exp = expMaker() + exp.resolvedType = .optional(.int) + exp.expectedType = .int + + assertTransform( + // a.b + expression: exp, + // (a.b ?? 0) + into: .parens(expMaker().binary(op: .nullCoalesce, rhs: .constant(0))) + ) + } + + /// Tests the corrector applies a floating-point correction to automatically + /// null-coalesce into zero's (to match original Objective-C behavior) + func testCorrectNullableFloatingPoint() { + let expMaker = { Expression.identifier("a").dot("b") } + + let exp = expMaker() + exp.resolvedType = .optional(.float) + exp.expectedType = .float + + assertTransform( + // a.b + expression: exp, + // (a.b ?? 0.0) + into: .parens(expMaker().binary(op: .nullCoalesce, rhs: .constant(0.0))) + ) + } + + /// Tests the corrector uses information exposed on `Expression.expectedType` + /// to fix expressions expected to resolve as booleans + func testCorrectsExpectedBooleanBinaryExpressions() { + let expMaker = { Expression.identifier("a").dot("b") } + + let exp = expMaker() + exp.resolvedType = .optional(.bool) + exp.expectedType = .bool + + assertTransform( + // a.b + expression: exp, + // a.b == true + into: expMaker().binary(op: .equals, rhs: .constant(true)) + ) + } + + /// On general arbitrary boolean expressions (mostly binary expressions over + /// logical operators, i.e. ||, &&, and unary !) + func testCorrectsArbitraryBooleanExpressions() { + let lhsMaker = { Expression.identifier("a") } + let rhsMaker = { Expression.identifier("b") } + + let lhs = lhsMaker() + let rhs = rhsMaker() + lhs.resolvedType = .optional(.bool) + lhs.expectedType = .bool + rhs.resolvedType = .bool + lhs.expectedType = .bool + + let exp = lhs.binary(op: .and, rhs: rhs) + + assertTransform( + // a && b + expression: exp, + // (a == true) && b + into: + .binary( + lhs: .parens(lhsMaker().binary(op: .equals, rhs: .constant(true))), + op: .and, + rhs: rhsMaker() + ) + ) + } + + /// Also correct nil-style boolean expressions + func testCorrectsArbitraryBooleanExpressionsWithNilChecks() { + let lhsMaker = { Expression.identifier("a") } + let rhsMaker = { Expression.identifier("b") } + + let lhs = lhsMaker() + let rhs = rhsMaker() + lhs.resolvedType = .optional(.typeName("a")) + rhs.resolvedType = .optional(.typeName("b")) + lhs.expectedType = .bool + rhs.expectedType = .bool + + let exp = lhs.binary(op: .and, rhs: rhs) + + assertTransform( + // a && b + expression: exp, + // (a != nil) && (b != nil) + into: + .binary( + lhs: .parens(lhsMaker().binary(op: .unequals, rhs: .constant(.nil))), + op: .and, + rhs: .parens(rhsMaker().binary(op: .unequals, rhs: .constant(.nil))) + ) + ) + } + + /// Also correct unary boolean checks + func testCorrectsUnaryNegateExpressions() { + let expMaker = { Expression.identifier("a") } + + let innerExp = expMaker() + innerExp.resolvedType = .optional(.typeName("a")) + innerExp.expectedType = .bool + + let exp = Expression.unary(op: .negate, innerExp) + + assertTransform( + // !a + expression: exp, + // (a == nil) + into: .parens(expMaker().binary(op: .equals, rhs: .constant(.nil))) + ) + } + + /// Tests inserting null-coalesces on optional types contained in unary + /// expressions + func testCorrectUnaryArithmeticExpression() { + let expMaker = { Expression.identifier("a") } + + let innerExp = expMaker() + innerExp.resolvedType = .optional(.int) + innerExp.expectedType = .int + + let exp = Expression.unary(op: .subtract, innerExp) + + assertTransform( + // -a + expression: exp, + // -(a ?? 0) + into: + .unary( + op: .subtract, + .parens(expMaker().binary(op: .nullCoalesce, rhs: .constant(0))) + ) + ) + } + + /// Tests correcting receiving nullable struct on a non-null struct context, + /// where the struct does feature a default empty constructor. + func testCorrectNonnullStructWithNullableStructValue() { + let str = + KnownTypeBuilder(typeName: "A", kind: .struct) + .constructor() + .build() + typeSystem.addType(str) + let expMaker = { Expression.identifier("a") } + let exp = expMaker() + exp.resolvedType = .optional(.typeName("A")) + exp.expectedType = .typeName("A") + + assertTransform( + // a + expression: exp, + // (a ?? A()) + into: .parens(expMaker().binary(op: .nullCoalesce, rhs: .identifier("A").call())) + ) + } + + func testDontCorrectNonnullStructWithNullabilityUnspecifiedStructValue() { + let str = + KnownTypeBuilder(typeName: "A", kind: .struct) + .constructor() + .build() + typeSystem.addType(str) + let expMaker = { Expression.identifier("a") } + let exp = expMaker() + exp.resolvedType = .nullabilityUnspecified(.typeName("A")) + exp.expectedType = .typeName("A") + + assertNoTransform( + // a + expression: exp + ) + } + + /// Tests that base expressions (i.e. those that form a complete statement, + /// that form a function argument, or a subscript operand) have their nullability + /// corrected by default. + func testAlwaysCorrectBaseExpressionsScalarTypesThatResolveAsNull() { + let funcMaker = { (arg: Expression) in Expression.identifier("f").call([arg]) } + let expMaker = { Expression.identifier("a") } + + let exp = expMaker() + exp.resolvedType = .optional(.int) + + assertTransform( + // { f(a) } + statement: .expression(funcMaker(exp)), + // { f(a ?? 0) } + into: .expression( + funcMaker(.parens(expMaker().binary(op: .nullCoalesce, rhs: .constant(0)))) + ) + ) + } + + /// Tests that base expressions (i.e. those that form a complete statement, + /// that form a function argument, or a subscript operand) have their nullability + /// corrected by default. + func testAlwaysCorrectBaseExpressionsScalarTypesThatResolveAsNullInFunctionArguments() { + let expMaker: () -> Expression = { + .identifier("a") + .call([ + .identifier("b") + .typed(.optional(.int)) + .typed(expected: .int) + ]) + } + + let exp = expMaker() + + assertTransform( + // { a(b) } + statement: .expression(exp), + // { a((b ?? 0)) } + into: + .expression( + .identifier("a") + .call([ + .parens(.identifier("b").binary(op: .nullCoalesce, rhs: .constant(0))) + ]) + ) + ) + } + + /// Tests we don't correct base expressions for assignment expressions that + /// are top-level (i.e. are a complete statement) + func testDontCorrectBaseAssignmentExpressions() { + let expMaker = { + Expression + .identifier("a") + .typed(.optional(.typeName("A"))) + .optional() + .dot("b", type: .optional(.int)) + .typed(.optional(.int)) + .assignment(op: .assign, rhs: .constant(0)) + .typed(.optional(.int)) + } + + let exp = expMaker() + exp.expectedType = .int + + assertNoTransform( + // { a?.b = 0 } + statement: .expression(exp) + ) + } + + /// Tests that base expressions (i.e. those that form a complete statement, + /// that form a function argument, or a subscript operand) do not have their + /// nullability corrected by default. + func testDontCorrectBaseExpressionsScalarTypesForConstantExpressions() { + let expMaker = { Expression.constant(0) } + + let exp = expMaker() + exp.expectedType = .optional(.int) + + assertNoTransform( + // { 0 } + statement: .expression(exp) + ) + } + + /// Tests that making an access such as `self.superview?.bounds.midX` actually + /// resolves into a null-coalesce before the `midX` access. + /// This mimics the original Objective-C behavior where such an expression + /// would be written as `CGRectGetMidX(self.superview.bounds)`, with the method + /// always being invoked. + /// + /// It is generally safe to do this since in Objective-C, apart from conversions + /// like above where struct-based functions are top-level and always execute, + /// nullability is propagated such that invoking members in nil pointers result + /// in zero'd returns, but accessing zero'd structs has no semantic impact in + /// the resulting value than if it was a non-zero struct from a return value + /// of a non-nil pointer. + func testCorrectPostfixAccessToNullableValueType() { + let str = + KnownTypeBuilder(typeName: "B", kind: .struct) + .constructor() + .build() + typeSystem.addType(str) + let expMaker = { Expression.identifier("a").optional().dot("b") } + let exp = expMaker() + exp.exp.resolvedType = .optional(.typeName("A")) + exp.op.returnType = .typeName("B") + exp.resolvedType = .optional(.typeName("B")) + exp.expectedType = .typeName("B") + + let res = assertTransform( + // a?.b.c() + expression: + exp + .dot("c", type: .swiftBlock(returnType: .int, parameters: [])).typed( + .optional(.swiftBlock(returnType: .int, parameters: [])) + ) + .call([], callableSignature: .swiftBlock(returnType: .int, parameters: [])).typed( + .optional(.int) + ), + // (a?.b ?? B()).c() + into: + .parens(expMaker().binary(op: .nullCoalesce, rhs: .identifier("B").call())) + .dot("c").call() + ) + + XCTAssertEqual(res.resolvedType, .int) + XCTAssertEqual( + res.asPostfix?.exp.resolvedType, + .swiftBlock(returnType: .int, parameters: []) + ) + } + + /// No need to correct accesses when the access is a plain member access over + /// the struct's value. This can be corrected later on. + func testDontCorrectPostfixAccessToNullableValueTypeWhenAccessIsMemberOnly() { + let str = + KnownTypeBuilder(typeName: "B", kind: .struct) + .constructor() + .build() + typeSystem.addType(str) + let expMaker = { Expression.identifier("a").dot("b") } + let exp = expMaker() + exp.exp.resolvedType = .optional(.typeName("A")) + exp.op.returnType = .typeName("B") + exp.resolvedType = .optional(.typeName("B")) + + assertNoTransform( + // a.b.c + expression: exp.dot("c") + ) + } + + /// Don't correct implicitly-unwrapped optional chains + func testDontCorrectPostfixAccessToNullableValueTypeWhenAccessIsImplicitlyUnwrapped() { + let str = + KnownTypeBuilder(typeName: "B", kind: .struct) + .constructor() + .build() + typeSystem.addType(str) + let expMaker = { Expression.identifier("a").dot("b") } + let exp = expMaker() + exp.exp.resolvedType = .nullabilityUnspecified(.typeName("A")) + exp.op.returnType = .typeName("B") + exp.resolvedType = .implicitUnwrappedOptional(.typeName("B")) + exp.expectedType = .typeName("B") + + assertNoTransform( + // a.b.c() + expression: + exp + .dot("c", type: .swiftBlock(returnType: .int, parameters: [])) + .typed(.nullabilityUnspecified(.swiftBlock(returnType: .int, parameters: []))) + .call([], callableSignature: .swiftBlock(returnType: .int, parameters: [])) + .typed(.nullabilityUnspecified(.int)) + ) + } + + // MARK: - If statement + + /// On if statements, AST Corrector must try to correct the expression so that + /// it results in a proper boolean statement. + func testCorrectsIfStatementBooleanExpressions() { + let expMaker = { Expression.identifier("a").dot("b") } + + let exp = expMaker() + exp.resolvedType = .optional(.bool) + exp.expectedType = .bool + + let stmt = Statement.if(exp, body: []) + + assertTransform( + // if (a.b) { } + statement: stmt, + // if (a.b == true) { } + into: .if( + expMaker().binary(op: .equals, rhs: .constant(true)), + body: [] + ) + ) + } + + /// On boolean expressions that are unary-reversed ("!"), we simply drop + /// the unary operator and plug in an inequality to true + func testCorrectsIfStatementNegatedBooleanExpressions() { + let expMaker = { Expression.identifier("a").dot("b") } + + let exp = Expression.unary(op: .negate, expMaker()) + exp.exp.resolvedType = .optional(.bool) + exp.expectedType = .bool + + let stmt = Statement.if(exp, body: []) + + assertTransform( + // if !a.b { } + statement: stmt, + // if (a.b != true) { } + into: .if( + .parens(expMaker().binary(op: .unequals, rhs: .constant(true))), + body: [] + ) + ) + } + + /// In Objective-C, numbers can be used in place of an if expression statement, + /// and the expression evaluates to true if the number is different from 0 + func testCorrectsIfStatementWithNumericExpression() { + let expMaker = { Expression.identifier("num") } + + let exp = expMaker() + exp.resolvedType = .int + exp.expectedType = .bool + + let stmt = Statement.if(exp, body: []) + + assertTransform( + // if (num) { } + statement: stmt, + // if (num != 0) { } + into: .if( + expMaker().binary(op: .unequals, rhs: .constant(0)), + body: [] + ) + ) + } + + /// Negated numeric expressions simply compare as equals to zero. + func testCorrectsIfStatementWithNegatedNumericExpression() { + let expMaker = { Expression.unary(op: .negate, .identifier("num")) } + + let exp = expMaker() + exp.exp.resolvedType = .int + exp.expectedType = .bool + + let stmt = Statement.if(exp, body: []) + + assertTransform( + // if !num { } + statement: stmt, + // if (num == 0) { } + into: .if( + .parens(.identifier("num").binary(op: .equals, rhs: .constant(0))), + body: [] + ) + ) + } + + /// Same as above, but testing an optional value instead. + func testCorrectsIfStatementWithNullableNumericExpressions() { + let expMaker = { Expression.identifier("num") } + + let exp = expMaker() + exp.resolvedType = .optional(.implicitUnwrappedOptional(.int)) + exp.expectedType = .bool + + let stmt = Statement.if(exp, body: []) + + assertTransform( + // if (num) { } + statement: stmt, + // if (num != 0) { } + into: .if( + expMaker().binary(op: .unequals, rhs: .constant(0)), + body: [] + ) + ) + } + + /// For otherwise unknown optional expressions, replace check + /// with an 'if-not-nil'-style check + func testCorrectsIfStatementWithNullableValue() { + let expMaker = { Expression.identifier("obj") } + + let exp = expMaker() + exp.resolvedType = .optional(.typeName("NSObject")) + exp.expectedType = .bool + + let stmt = Statement.if(exp, body: []) + + assertTransform( + // if (obj) { } + statement: stmt, + // if (obj != nil) { } + into: .if( + expMaker().binary(op: .unequals, rhs: .constant(.nil)), + body: [] + ) + ) + } + + /// For otherwise unknown optional expressions, replace check + /// with an 'if-nil'-style check + func testCorrectsIfStatementWithNegatedNullableValue() { + let expMaker = { Expression.identifier("obj") } + + let exp = Expression.unary(op: .negate, expMaker()) + exp.exp.resolvedType = .optional(.typeName("NSObject")) + exp.expectedType = .bool + exp.exp.expectedType = .bool + + let stmt = Statement.if(exp, body: []) + + assertTransform( + // if !obj { } + statement: stmt, + // if (obj == nil) { } + into: .if( + .parens(expMaker().binary(op: .equals, rhs: .constant(.nil))), + body: [] + ) + ) + } + + /// For unknown typed expressions, perform no attempts to correct. + func testDontCorrectUnknownExpressions() { + let expMaker = { Expression.identifier("a").dot("b") } + + let exp = expMaker() + exp.expectedType = .bool + + let stmt = Statement.if(exp, body: []) + + assertNoTransform( + // if (a.b) { } + statement: stmt + ) + } + + // MARK: - While statements + + /// Just like if statements, on while statements the AST Corrector must try + /// to correct the expression so that it results in a proper boolean statement. + func testCorrectsWhileStatementBooleanExpressions() { + let expMaker = { Expression.identifier("a").dot("b") } + + let exp = expMaker() + exp.resolvedType = .optional(.bool) + exp.expectedType = .bool + + let stmt = Statement.while(exp, body: []) + + assertTransform( + // while (a.b) { } + statement: stmt, + // while (a.b == true) { } + into: .while( + expMaker().binary(op: .equals, rhs: .constant(true)), + body: [] + ) + ) + } + + /// In Objective-C, numbers can be used in place of a while expression statement, + /// and the expression evaluates to true if the number is different from 0 + func testCorrectsWhileStatementWithNumericExpression() { + let expMaker = { Expression.identifier("num") } + + let exp = expMaker() + exp.resolvedType = .int + exp.expectedType = .bool + + let stmt = Statement.while(exp, body: []) + + assertTransform( + // while (num) { } + statement: stmt, + // while (num != 0) { } + into: .while( + expMaker().binary(op: .unequals, rhs: .constant(0)), + body: [] + ) + ) + } + + /// Same as above, but testing an optional value instead. + func testCorrectsWhileStatementWithNullableNumericExpressions() { + let expMaker = { Expression.identifier("num") } + + let exp = expMaker() + exp.resolvedType = .optional(.implicitUnwrappedOptional(.int)) + exp.expectedType = .bool + + let stmt = Statement.while(exp, body: []) + + assertTransform( + // while (num) { } + statement: stmt, + // while (num != 0) { } + into: .while( + expMaker().binary(op: .unequals, rhs: .constant(0)), + body: [] + ) + ) + } + + /// For otherwise unknown optional expressions, replace check + /// with an 'while-not-nil'-style check + func testCorrectsWhileStatementWithNullableValue() { + let expMaker = { Expression.identifier("obj") } + + let exp = expMaker() + exp.resolvedType = .optional(.typeName("NSObject")) + exp.expectedType = .bool + + let stmt = Statement.while(exp, body: []) + + assertTransform( + // while (obj) { } + statement: stmt, + // while (obj != nil) { } + into: .while( + expMaker().binary(op: .unequals, rhs: .constant(.nil)), + body: [] + ) + ) + } + + /// For unknown typed expressions, perform no attempts to correct. + func testDontCorrectUnknownExpressionsOnWhile() { + let expMaker = { Expression.identifier("a").dot("b") } + + let exp = expMaker() + exp.expectedType = .bool + + let stmt = Statement.while(exp, body: []) + + assertNoTransform( + // while (a.b) { } + statement: stmt + ) + } + + /// Tests that the corrector is capable of doing simple if-let generations + /// when a nullable value is passed to a non-null parameter of a function + /// call expression. + func testCorrectSimpleNullableValueInNonnullParameterToIfLet() { + let blockType = BlockSwiftType.swiftBlock(returnType: .void, parameters: [.typeName("A")]) + let funcType = SwiftType.block(blockType) + + let exp = + Expression + .identifier("a").typed(funcType) + .call( + [.identifier("b").typed(.optional(.typeName("A")))], + callableSignature: blockType + ) + + assertTransform( + // a(b) + statement: Statement.expression(exp), + // if let b = b { a(b) } + into: .ifLet( + .identifier("b"), + .identifier("b"), + body: [ + .expression(.identifier("a").call([.identifier("b")])) + ] + ) + ) + } + + /// Same as above, but as a member access. + func testCorrectMemberAccessNullableValueInNonnullParameterToIfLet() { + let blockType = BlockSwiftType.swiftBlock(returnType: .void, parameters: [.typeName("A")]) + let funcType = SwiftType.block(blockType) + + let exp = + Expression + .identifier("a").typed(funcType) + .call( + [.identifier("b").dot("c").typed(.optional(.typeName("A")))], + callableSignature: blockType + ) + + assertTransform( + // a(b.c) + statement: Statement.expression(exp), + // if let c = b.c { a(c) } + into: .ifLet( + .identifier("c"), + .identifier("b").dot("c"), + body: [ + .expression(.identifier("a").call([.identifier("c")])) + ] + ) + ) + } + + /// Use the member name of a nullable-method invocation as the name of the + /// pattern local variable. + func testCorrectMethodInvocationNullableValueInNonnullParameterToIfLet() { + let blockType = BlockSwiftType.swiftBlock(returnType: .void, parameters: [.typeName("A")]) + let funcType = SwiftType.block(blockType) + + let exp = + Expression + .identifier("a").typed(funcType) + .call( + [.identifier("b").dot("c").call().typed(.optional(.typeName("A")))], + callableSignature: blockType + ) + + assertTransform( + // a(b.c()) + statement: .expression(exp), + // if let c = b.c() { a(c) } + into: .ifLet( + .identifier("c"), + .identifier("b").dot("c").call(), + body: [ + .expression(.identifier("a").call([.identifier("c")])) + ] + ) + ) + } + + /// Correct method invocation returns as well by assigning the return value + /// to a `value` local variable using an if-let. + func testCorrectMethodReturnNullableValueInNonnullParameterToIfLet() { + let blockTypeA = BlockSwiftType.swiftBlock(returnType: .void, parameters: ["A"]) + let funcTypeA = SwiftType.block(blockTypeA) + let funcTypeB = SwiftType.swiftBlock(returnType: .optional("A"), parameters: []) + + let exp = + Expression + .identifier("a").typed(funcTypeA) + .call( + [Expression.identifier("b").typed(funcTypeB).call().typed(.optional("A"))], + callableSignature: blockTypeA + ) + + assertTransform( + // a(b()) + statement: .expression(exp), + // if let value = b() { a(value) } + into: .ifLet( + .identifier("value"), + .identifier("b").call(), + body: [ + .expression(.identifier("a").call([.identifier("value")])) + ] + ) + ) + } + + /// Tests non-null arguments with nullable scalar types are not corrected to + /// an if-let, since this is dealt at another point in the AST corrector. + func testDontCorrectSimpleNullableValueInNonnullParameterToIfLetIfArgumentIsNullableScalarType() { + let blockType = BlockSwiftType.swiftBlock(returnType: .void, parameters: [.int]) + let funcType = SwiftType.block(blockType) + + let exp = + Expression + .identifier("a").typed(funcType) + .call( + [.identifier("b").dot("c").typed(.optional(.int))], + callableSignature: blockType + ) + + assertTransform( + // a(b.c) + statement: .expression(exp), + // a((b.c ?? 0)) + into: .expression( + .identifier("a").typed(funcType) + .call( + [ + .parens( + .identifier("b").dot("c").binary( + op: .nullCoalesce, + rhs: .constant(0) + ) + ) + ], + callableSignature: blockType + ) + ) + ) + } + + /// Make sure we don't correct passing a nullable value to a nullable parameter + func testDontCorrectNullableValuesPassedToNullableParameters() { + let blockType = BlockSwiftType.swiftBlock( + returnType: .void, + parameters: [.optional(.typeName("A"))] + ) + let funcType = SwiftType.block(blockType) + let expMaker: () -> Expression = { + .identifier("a").typed(funcType) + .call( + [.identifier("b").typed(.optional(.typeName("A")))], + callableSignature: blockType + ) + } + + let exp = expMaker() + + assertNoTransform( + // a(b) + statement: .expression(exp) + ) + } + + /// Test we don't require correcting implicitly unwrapped optionals on the + /// rhs of an assignment + func testDontCorrectImplicitlyUnwrappedOptionalRightHandSideOnAssignment() { + let type = + KnownTypeBuilder(typeName: "Value", kind: .struct) + .constructor() + .build() + typeSystem.addType(type) + let rhsMaker: () -> Expression = { + return + .identifier("self") + .dot("value", type: .nullabilityUnspecified("Value")) + .typed(expected: .nullabilityUnspecified("Value")) + } + let exp = + Expression + .identifier("a").typed("Value").assignment(op: .assign, rhs: rhsMaker()) + + assertNoTransform( + // a = self.value + statement: .expression(exp) + ) + } + + func testCorrectExpressionsWithExpectedTypeDifferentThanTheirResolvedType() { + let valueType = + KnownTypeBuilder(typeName: "Value", kind: .struct) + .constructor() + .build() + typeSystem.addType(valueType) + let expMaker = { + Expression + .identifier("a") + .typed(.optional("Value")) + .typed(expected: .int) + } + + let exp = expMaker() + + assertTransform( + // a + expression: exp, + // (a ?? Value()) + into: .parens(expMaker().binary(op: .nullCoalesce, rhs: .identifier("Value").call())) + ) + } + + func testDontRemoveNullableAccessFromCastExpressions() { + assertNoTransform( + expression: .identifier("exp").casted(to: .string).optional().dot("count") + ) + } + + func testCastDifferentNumericTypesInArithmeticOperations() { + // CGFloat, Int -> CGFloat, CGFloat(Int) + assertTransform( + expression: + .binary( + lhs: .identifier("a").typed(.cgFloat), + op: .add, + rhs: .identifier("b").typed(.int) + ), + into: + .binary( + lhs: .identifier("a"), + op: .add, + rhs: .identifier("CGFloat").call([.identifier("b")]) + ) + ) + + // Int, CGFloat -> CGFloat(Int), CGFloat + assertTransform( + expression: + .binary( + lhs: .identifier("a").typed(.int), + op: .add, + rhs: .identifier("b").typed(.cgFloat) + ), + into: + .binary( + lhs: .identifier("CGFloat").call([.identifier("a")]), + op: .add, + rhs: .identifier("b") + ) + ) + + // Int64, Int32 -> Int64, Int64(Int32) + assertTransform( + expression: + .binary( + lhs: .identifier("a").typed("Int64"), + op: .add, + rhs: .identifier("b").typed("Int32") + ), + into: + .binary( + lhs: .identifier("a"), + op: .add, + rhs: .identifier("Int64").call([.identifier("b")]) + ) + ) + + // Int32, Int64 -> Int64(Int32), Int64 + assertTransform( + expression: + .binary( + lhs: .identifier("a").typed("Int32"), + op: .add, + rhs: .identifier("b").typed("Int64") + ), + into: + .binary( + lhs: .identifier("Int64").call([.identifier("a")]), + op: .add, + rhs: .identifier("b") + ) + ) + } + + func testNoCastForSameBitWidthNumerics() { + // CGFloat, Double -> CGFloat, Double + assertNoTransform( + expression: + .binary( + lhs: .identifier("a").typed(.cgFloat), + op: .add, + rhs: .identifier("b").typed(.double) + ) + ) + + // CGFloat, Double -> Double, CGFloat + assertNoTransform( + expression: + .binary( + lhs: .identifier("a").typed(.double), + op: .add, + rhs: .identifier("b").typed(.cgFloat) + ) + ) + + // Int64, UInt64 -> Int64, UInt64 + assertNoTransform( + expression: + .binary( + lhs: .identifier("a").typed("Int64"), + op: .add, + rhs: .identifier("b").typed("UInt64") + ) + ) + + // UInt64, Int64 -> UInt64, Int64 + assertNoTransform( + expression: + .binary( + lhs: .identifier("a").typed("UInt64"), + op: .add, + rhs: .identifier("b").typed("Int64") + ) + ) + } + + func testBreakSequentialAssignments() { + assertTransform( + statement: + // a = b = c[0] + .expressions([ + .identifier("a") + .assignment( + op: .assign, + rhs: .identifier("b") + .assignment( + op: .assign, + rhs: .identifier("c") + .sub(.constant(0)) + ) + ) + ]), + into: + // b = c[0] + // a = b + .expressions([ + .identifier("b") + .assignment( + op: .assign, + rhs: .identifier("c") + .sub(.constant(0)) + ), + .identifier("a") + .assignment( + op: .assign, + rhs: .identifier("b") + ), + ]) + ) + } + + func testBreakSequentialAssignments_chainedMemberAccess() { + assertTransform( + statement: + // a = b.c.d = e + .expressions([ + .identifier("a") + .assignment( + op: .assign, + rhs: .identifier("b") + .dot("c") + .dot("d") + .assignment( + op: .assign, + rhs: .identifier("e") + .sub(.constant(0)) + ) + ) + ]), + into: + // b.c.d = e[0] + // a = b.c.d + .expressions([ + .identifier("b") + .dot("c") + .dot("d") + .assignment( + op: .assign, + rhs: .identifier("e") + .sub(.constant(0)) + ), + .identifier("a") + .assignment( + op: .assign, + rhs: .identifier("b") + .dot("c") + .dot("d") + ), + ]) + ) + } + + func testBreakSequentialAssignmentsInVariableDeclaration() { + assertTransform( + statement: + // { + // var a = b = c[0] + // } + .compound([ + .variableDeclaration( + identifier: "a", + type: .any, + initialization: + .identifier("b") + .assignment( + op: .assign, + rhs: .identifier("c").sub(.constant(0)) + ) + ) + ]), + into: + // { + // b = c[0] + // var a = b + // } + .compound([ + .expressions([ + .identifier("b") + .assignment( + op: .assign, + rhs: .identifier("c") + .sub(.constant(0)) + ), + ]), + .variableDeclaration( + identifier: "a", + type: .any, + initialization: .identifier("b") + ) + ]) + ) + } + + func testBreakSequentialAssignmentsInVariableDeclaration_chainedMemberAccess() { + assertTransform( + statement: + // { + // var a = b.c.d = e[0] + // } + .compound([ + .variableDeclaration( + identifier: "a", + type: .any, + initialization: + .identifier("b") + .dot("c") + .dot("d") + .assignment( + op: .assign, + rhs: .identifier("e").sub(.constant(0)) + ) + ) + ]), + into: + // { + // b.c.d = e[0] + // var a = b.c.d + // } + .compound([ + .expressions([ + .identifier("b") + .dot("c") + .dot("d") + .assignment( + op: .assign, + rhs: .identifier("e") + .sub(.constant(0)) + ), + ]), + .variableDeclaration( + identifier: "a", + type: .any, + initialization: + .identifier("b") + .dot("c") + .dot("d") + ) + ]) + ) + } + + func testDontBreakSequentialAssignmentsWithNonIdentifierLhs() { + assertNoTransform( + statement: + // a = b[0] = c + .expressions([ + .identifier("a") + .assignment( + op: .assign, + rhs: .identifier("b") + .sub(.constant(0)) + .assignment( + op: .assign, + rhs: .identifier("c") + ) + ) + ]) + ) + + assertNoTransform( + statement: + // a = b().c = d + .expressions([ + .identifier("a") + .assignment( + op: .assign, + rhs: .identifier("b") + .call() + .dot("c") + .assignment( + op: .assign, + rhs: .identifier("d") + ) + ) + ]) + ) + } + + func testDontBreakSequentialAssignmentsInVariableDeclarationWithNonIdentifiers() { + assertNoTransform( + statement: + // { + // var a = b().c = d[0] + // } + .compound([ + .variableDeclaration( + identifier: "a", + type: .any, + initialization: + .identifier("b") + .call() + .dot("c") + .assignment( + op: .assign, + rhs: .identifier("d").sub(.constant(0)) + ) + ) + ]) + ) + } + + func testCrashInSuggestAssignmentStatementSplit() { + // Tests against a crash that happens due to un-copied adjacent statements + // when splitting assignment statements. + assertTransform( + statement: + // { + // var args: Any = coords && coords.forEach ? coords : Array.from(arguments).slice() + // var coordlen: Any = false + // var assign1: Any = (assign2 = 0) + // } + .compound([ + .variableDeclaration( + identifier: "args", + type: .any, + initialization: + .ternary( + .identifier("coords") + .binary( + op: .and, + rhs: .identifier("coords").dot("forEach") + ), + true: + .identifier("coords"), + false: + .identifier("Array") + .dot("from") + .call([.identifier("arguments")]) + .dot("slice") + .call() + ) + ), + .variableDeclaration( + identifier: "coordlen", + type: .any, + initialization: .identifier("false") + ), + .variableDeclaration( + identifier: "assign1", + type: .any, + initialization: + .identifier("assign2") + .assignment(op: .assign, rhs: .constant(0)) + ), + ]), + into: + // { + // var args: Any = coords && coords.forEach ? coords : Array.from(arguments).slice() + // var coordlen: Any = false + // var assign1: Any = (assign2 = 0) + // } + .compound([ + .variableDeclaration( + identifier: "args", + type: .any, + initialization: + .ternary( + .identifier("coords") + .binary( + op: .and, + rhs: .identifier("coords").dot("forEach") + ), + true: + .identifier("coords"), + false: + .identifier("Array") + .dot("from") + .call([.identifier("arguments")]) + .dot("slice") + .call() + ) + ), + .variableDeclaration( + identifier: "coordlen", + type: .any, + initialization: .identifier("false") + ), + .expression( + .identifier("assign2") + .assignment(op: .assign, rhs: .constant(0)) + ), + .variableDeclaration( + identifier: "assign1", + type: .any, + initialization: .identifier("assign2") + ), + ]) + ) + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/FixtureBuilders/MultiFileTestBuilder.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/FixtureBuilders/MultiFileTestBuilder.swift new file mode 100644 index 000000000..84c8b546e --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/FixtureBuilders/MultiFileTestBuilder.swift @@ -0,0 +1,301 @@ +import ExpressionPasses +import GlobalsProviders +import IntentionPasses +import JsParser +import SwiftSyntaxRewriterPasses +import TestCommons +import Utils +import WriterTargetOutput +import XCTest + +@testable import JavaScriptFrontend + +class MultiFileTestBuilder { + typealias File = (path: String, source: String) + + private var builder = JavaScript2SwiftRewriterJobBuilder() + var expectedFiles: [ExpectedFile] = [] + var files: [File] = [] + let test: XCTestCase + var errors: String = "" + + init(test: XCTestCase) { + self.test = test + } + + func file(name: String, _ contents: String, isPrimary: Bool = true) -> MultiFileTestBuilder { + builder.inputs.add(filePath: name, source: contents, isPrimary: isPrimary) + files.append((name, contents)) + return self + } + + func expectSwiftFile( + name: String, + _ contents: String, + file: StaticString = #filePath, + line: UInt = #line + ) -> MultiFileTestBuilder { + + expectedFiles.append( + ExpectedFile(path: name, source: contents, _file: file, _line: line) + ) + return self + } + + func transpile( + expectsErrors: Bool = false, + options: SwiftSyntaxOptions = .default, + file: StaticString = #filePath, + line: UInt = #line + ) -> CompiledMultiFileTestResults { + + builder.swiftSyntaxOptions = options + + let job = builder.createJob() + let output = TestWriterOutput() + + let results = job.execute(output: output) + let errors = results.diagnostics.errors.map(\.description).joined(separator: "\n") + + if !expectsErrors && !results.diagnostics.errors.isEmpty { + XCTFail( + """ + Unexpected error(s) converting code: + \(errors) + """, + file: file, + line: line + ) + } + + return CompiledMultiFileTestResults( + test: test, + results: output.outputs, + files: files, + expectedFiles: expectedFiles, + errors: errors + ) + } + + /// Assertion execution point + @discardableResult + func translatesToSwift( + _ expectedSwift: String, + expectsErrors: Bool = false, + options: SwiftSyntaxOptions = JavaScript2SwiftRewriter.defaultWriterOptions, + settings: JavaScript2SwiftRewriter.Settings = .default, + file: StaticString = #filePath, + line: UInt = #line + ) -> MultiFileTestBuilder { + + builder.swiftSyntaxOptions = options + builder.settings = settings + + let job = builder.createJob() + let output = TestWriterOutput() + + let results = job.execute(output: output) + + if !expectsErrors && !results.diagnostics.errors.isEmpty { + let errors = results.diagnostics.errors.map(\.description).joined(separator: "\n") + + XCTFail( + """ + Unexpected error(s) converting code: + \(errors) + """, + file: file, + line: line + ) + } + else { + // Compute output + let buffer = output.outputs + .sorted { $0.path < $1.path } + .map { $0.getBuffer(withFooter: true) } + .joined(separator: "\n") + + if buffer != expectedSwift { + XCTFail( + """ + Failed: Expected to translate JavaScript inputs as: + + \(expectedSwift) + but translated as: + + \(buffer) + + Diff: + + \(buffer.makeDifferenceMarkString(against: expectedSwift)) + """, + file: file, + line: line + ) + } + + var errorsOutput = "" + results.diagnostics.printDiagnostics(to: &errorsOutput) + errors = errorsOutput.trimmingCharacters(in: .whitespacesAndNewlines) + } + + return self + } + + func assertErrorStreamIs(_ expected: String, file: StaticString = #filePath, line: UInt = #line) { + if errors != expected { + XCTFail( + """ + Mismatched errors stream. Expected \(expected) but found \(errors) + """, + file: file, + line: line + ) + } + } +} + +class CompiledMultiFileTestResults { + typealias File = (path: String, source: String) + + var test: XCTestCase + var results: [TestFileOutput] + var files: [File] + var expectedFiles: [ExpectedFile] + var errors: String + + init( + test: XCTestCase, + results: [TestFileOutput], + files: [File], + expectedFiles: [ExpectedFile], + errors: String + ) { + + self.test = test + self.results = results + self.files = files + self.expectedFiles = expectedFiles + self.errors = errors + + } + + func assertGeneratedFileCount( + _ count: Int, + file: StaticString = #filePath, + line: UInt = #line + ) { + + if results.count != count { + XCTFail( + """ + Expected to generate \(count) file(s), but generated \(results.count) + """, + file: file, + line: line + ) + } + } + + /// Asserts expected Swift files recorded with `expectSwiftFile(name:contents:)` + /// where produced correctly. + /// + /// Does not assert if unexpected files where produced during compilation. + func assertExpectedSwiftFiles( + file: StaticString = #filePath, + line: UInt = #line + ) { + + assertMatchesWithExpectedFiles(results, file: file, line: line) + } + + private func assertMatchesWithExpectedFiles( + _ files: [TestFileOutput], + file: StaticString, + line: UInt + ) { + + let expectedNotMatched = expectedFiles.filter { expected in + !files.contains { $0.path == expected.path } + } + + let matches = files.sorted { $0.path < $1.path }.compactMap { file -> ResultMatch? in + guard + let expected = expectedFiles.first(where: { expected in file.path == expected.path } + ) + else { + return nil + } + + return ResultMatch(result: file, expectedFile: expected) + } + + for match in matches { + let expectedSwift = match.expectedFile.source + let actualSwift = match.result.getBuffer(withFooter: true) + + guard expectedSwift != actualSwift else { + continue + } + + XCTFail( + """ + Failed: Expected to produce Swift file \(match.result) inputs as: + + -- + \(expectedSwift) + -- + + but translated as: + + -- + \(actualSwift) + -- + + Diff: + + \(actualSwift.makeDifferenceMarkString(against: expectedSwift)) + """, + file: match.expectedFile._file, + line: match.expectedFile._line + ) + + break + } + + for nonMatched in expectedNotMatched { + XCTFail( + """ + Failed: Expected to produce Swift file \(nonMatched.path), \ + but no such file was created. + """, + file: file, + line: line + ) + } + } + + func assertErrorStreamIs(_ expected: String, file: StaticString = #filePath, line: UInt = #line) { + if errors != expected { + XCTFail( + """ + Mismatched errors stream. Expected \(expected) but found \(errors) + """, + file: file, + line: line + ) + } + } + + private struct ResultMatch { + var result: TestFileOutput + var expectedFile: ExpectedFile + } +} + +struct ExpectedFile { + var path: String + var source: String + var _file: StaticString + var _line: UInt +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/FixtureBuilders/SingleFileTestUtils.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/FixtureBuilders/SingleFileTestUtils.swift new file mode 100644 index 000000000..fc282b9b2 --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/FixtureBuilders/SingleFileTestUtils.swift @@ -0,0 +1,203 @@ +import ExpressionPasses +import GlobalsProviders +import GrammarModelBase +import IntentionPasses +import JsParser +import SwiftSyntaxRewriterPasses +import TestCommons +import Utils +import WriterTargetOutput +import XCTest + +@testable import JavaScriptFrontend + +class SingleFileTestBuilder { + var test: XCTestCase + var js: String + var options: SwiftSyntaxOptions + var settings: JavaScript2SwiftRewriter.Settings + var diagnosticsStream: String = "" + + init( + test: XCTestCase, + js: String, + options: SwiftSyntaxOptions, + settings: JavaScript2SwiftRewriter.Settings + ) { + + self.test = test + self.js = js + self.options = options + self.settings = settings + } + + func assertJsParse( + swift expectedSwift: String, + fileName: String = "test.m", + expectsErrors: Bool = false, + file: StaticString = #filePath, + line: UInt = #line + ) { + + let output = TestWriterOutput() + let input = TestSingleInputProvider( + fileName: fileName, + code: js, + isPrimary: true + ) + + var jobBuilder = JavaScript2SwiftRewriterJobBuilder() + jobBuilder.swiftSyntaxOptions = options + jobBuilder.settings = settings + jobBuilder.inputs.addInputs(from: input) + + let job = jobBuilder.createJob() + + let sut = job.makeSwiftRewriter(output: output) + + do { + try sut.rewrite() + + let outputBuffer: String + + // Compute output + if output.outputs.count == 1 { + outputBuffer = output.outputs[0].getBuffer(withFooter: false) + } else { + outputBuffer = output.outputs + .sorted { $0.path < $1.path } + .map { $0.getBuffer(withFooter: true) } + .joined(separator: "\n") + } + + if outputBuffer != expectedSwift { + let formattedOutput = formatCodeForDisplay(outputBuffer) + let formattedExpected = formatCodeForDisplay(expectedSwift) + + let diff = formattedOutput.makeDifferenceMarkString( + against: formattedExpected + ) + + XCTFail( + """ + Failed: Expected to translate JavaScript + \(formatCodeForDisplay(js)) + + as + -- + \(formattedExpected) + -- + + but translated as + + -- + \(formattedOutput) + -- + + Diff: + + -- + \(diff) + -- + """, + file: file, + line: line + ) + } + + if !expectsErrors && sut.diagnostics.errors.count != 0 { + XCTFail( + "Unexpected error(s) converting JavaScript: \(sut.diagnostics.errors.description)", + file: file, + line: line + ) + } + + diagnosticsStream = "" + sut.diagnostics.printDiagnostics(to: &diagnosticsStream) + diagnosticsStream = diagnosticsStream.trimmingCharacters(in: .whitespacesAndNewlines) + } + catch { + XCTFail( + "Unexpected error(s) parsing JavaScript: \(error)", + file: file, + line: line + ) + } + } + + func assertDiagnostics(_ expected: String, file: StaticString = #filePath, line: UInt = #line) { + if diagnosticsStream != expected { + XCTFail( + "Mismatched output stream. Expected \(expected) but found \(diagnosticsStream)", + file: file, + line: line + ) + } + } + + private func formatCodeForDisplay(_ str: String) -> String { + return str + } +} + +class TestSingleInputProvider: InputSourcesProvider, InputSource { + var fileName: String + var code: String + var isPrimary: Bool + + convenience init(code: String, isPrimary: Bool) { + self.init(fileName: "\(type(of: self)).m", code: code, isPrimary: isPrimary) + } + + init(fileName: String, code: String, isPrimary: Bool) { + self.fileName = fileName + self.code = code + self.isPrimary = isPrimary + } + + func sources() -> [InputSource] { + return [self] + } + + func sourcePath() -> String { + return fileName + } + + func loadSource() throws -> CodeSource { + return StringCodeSource(source: code, fileName: sourcePath()) + } +} + +extension XCTestCase { + + @discardableResult + func assertRewrite( + js: String, + swift expectedSwift: String, + inputFileName: String = "test.m", + options: SwiftSyntaxOptions = JavaScript2SwiftRewriter.defaultWriterOptions, + rewriterSettings: JavaScript2SwiftRewriter.Settings = .default, + expectsErrors: Bool = false, + file: StaticString = #filePath, + line: UInt = #line + ) -> SingleFileTestBuilder { + + let test = SingleFileTestBuilder( + test: self, + js: js, + options: options, + settings: rewriterSettings + ) + + test.assertJsParse( + swift: expectedSwift, + fileName: inputFileName, + expectsErrors: expectsErrors, + file: file, + line: line + ) + + return test + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/IntentionPasses/JavaScriptPropertyMergeIntentionPassTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/IntentionPasses/JavaScriptPropertyMergeIntentionPassTests.swift new file mode 100644 index 000000000..22d9cc602 --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/IntentionPasses/JavaScriptPropertyMergeIntentionPassTests.swift @@ -0,0 +1,173 @@ +import SwiftAST +import SwiftRewriterLib +import TestCommons +import XCTest +import IntentionPasses +import JsGrammarModels + +@testable import JavaScriptFrontend + +class JavaScriptPropertyMergeIntentionPassTests: XCTestCase { + func testMergeGetterAndSetter_underscoredMethodNames() { + let propType = SwiftType.any + let getterBody: CompoundStatement = [ + .return(.identifier("self").dot("_id")) + ] + let setterBody: CompoundStatement = [ + .expression(.identifier("self").dot("_id").assignment(op: .assign, rhs: .identifier("v"))) + ] + + let intentions = + IntentionCollectionBuilder() + .createFileWithClass(named: "A") { builder in + builder + .createMethod(named: "get_id", returnType: propType) { builder in + let getterNode = JsMethodDefinitionNode() + getterNode.context = .isGetter + + builder.setBody(getterBody).setSource(getterNode) + } + .createMethod( + named: "set_id", + parameters: [ParameterSignature(label: nil, name: "v", type: propType)] + ) { builder in + let setterNode = JsMethodDefinitionNode() + setterNode.context = .isSetter + + builder.setBody(setterBody).setSource(setterNode) + } + }.build() + let cls = intentions.classIntentions()[0] + let sut = JavaScriptPropertyMergeIntentionPass() + + sut.apply(on: intentions, context: makeContext(intentions: intentions)) + + XCTAssertEqual(cls.methods.count, 0) + XCTAssertEqual(cls.properties.count, 1) + XCTAssertEqual(cls.properties[0].name, "id") + switch cls.properties[0].mode { + case .property(let getter, let setter): + XCTAssertEqual(getter.body, getterBody) + XCTAssertEqual(setter.valueIdentifier, "v") + XCTAssertEqual(setter.body.body, setterBody) + + default: + XCTFail("Unexpected property mode \(cls.properties[0].mode)") + } + } + func testMergeGetter_underscoredMethodNames() { + let propType = SwiftType.any + let getterBody: CompoundStatement = [ + .return(.identifier("self").dot("_id")) + ] + + let intentions = + IntentionCollectionBuilder() + .createFileWithClass(named: "A") { builder in + builder + .createMethod(named: "get_id", returnType: propType) { builder in + let getterNode = JsMethodDefinitionNode() + getterNode.context = .isGetter + + builder.setBody(getterBody).setSource(getterNode) + } + }.build() + let cls = intentions.classIntentions()[0] + let sut = JavaScriptPropertyMergeIntentionPass() + + sut.apply(on: intentions, context: makeContext(intentions: intentions)) + + XCTAssertEqual(cls.methods.count, 0) + XCTAssertEqual(cls.properties.count, 1) + XCTAssertEqual(cls.properties[0].name, "id") + switch cls.properties[0].mode { + case .computed(let getter): + XCTAssertEqual(getter.body, getterBody) + + default: + XCTFail("Unexpected property mode \(cls.properties[0].mode)") + } + } + + func testMergeKeepsCommentsGetter() { + let propType = SwiftType.any + let getterBody: CompoundStatement = [ + .return(.identifier("self").dot("_id")) + ] + + let intentions = + IntentionCollectionBuilder() + .createFileWithClass(named: "A") { builder in + builder + .createMethod(named: "get_id", returnType: propType) { builder in + let getterNode = JsMethodDefinitionNode() + getterNode.context = .isGetter + + builder + .setBody(getterBody) + .setSource(getterNode) + .addComment("// Getter comment") + } + }.build() + let cls = intentions.classIntentions()[0] + let sut = JavaScriptPropertyMergeIntentionPass() + + sut.apply(on: intentions, context: makeContext(intentions: intentions)) + + XCTAssertEqual( + cls.properties[0].precedingComments, + [ + "// Getter comment", + ] + ) + } + + func testMergeKeepsCommentsGetterAndSetter() { + let propType = SwiftType.any + let getterBody: CompoundStatement = [ + .return(.identifier("self").dot("_id")) + ] + let setterBody: CompoundStatement = [ + .expression(.identifier("self").dot("_id").assignment(op: .assign, rhs: .identifier("v"))) + ] + + let intentions = + IntentionCollectionBuilder() + .createFileWithClass(named: "A") { builder in + builder + .createMethod(named: "get_id", returnType: propType) { builder in + let getterNode = JsMethodDefinitionNode() + getterNode.context = .isGetter + + builder + .setBody(getterBody) + .setSource(getterNode) + .addComment("// Getter comment") + } + .createMethod( + named: "set_id", + parameters: [ParameterSignature(label: nil, name: "v", type: propType)] + ) { builder in + let setterNode = JsMethodDefinitionNode() + setterNode.context = .isSetter + + builder + .setBody(setterBody) + .setSource(setterNode) + .addComment("// Setter comment") + } + }.build() + let cls = intentions.classIntentions()[0] + let sut = JavaScriptPropertyMergeIntentionPass() + + sut.apply(on: intentions, context: makeContext(intentions: intentions)) + + XCTAssertEqual( + cls.properties[0].precedingComments, + [ + "// Getter comment", + "// Setter comment", + ] + ) + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriter+MultiFilesTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriter+MultiFilesTests.swift new file mode 100644 index 000000000..a794fcb47 --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriter+MultiFilesTests.swift @@ -0,0 +1,61 @@ +import JsGrammarModels +import JsParser +import XCTest + +@testable import JavaScriptFrontend + +class JavaScript2SwiftRewriter_MultiFilesTests: XCTestCase { + + func testReadmeSampleMerge() { + assertThat() + .file( + name: "A.js", + """ + import { symbols } from "B.js"; + + function f() { + const a = symbols.aVar[0]; + + console.log(aFunction(a)); + } + """ + ) + .file( + name: "B.js", + """ + const symbols = { + aVar: [ + 0, 1, 2, 3 + ], + + aFunction: function(a) { + return a; + } + }; + + export { symbols }; + """ + ) + .translatesToSwift( + """ + func f() { + let a: Any = symbols.aVar[0] + + console.log(aFunction(a)) + } + // End of file A.swift + var symbols: Any = [aVar: [0, 1, 2, 3], aFunction: { (a: Any) -> Any in + return a + }] + // End of file B.swift + """, + settings: .default.with(\.deduceTypes, true) + ) + } +} + +extension JavaScript2SwiftRewriter_MultiFilesTests { + private func assertThat() -> MultiFileTestBuilder { + return MultiFileTestBuilder(test: self) + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriterJobBuilderTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriterJobBuilderTests.swift new file mode 100644 index 000000000..48f630c18 --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriterJobBuilderTests.swift @@ -0,0 +1,89 @@ +import XCTest + +@testable import JavaScriptFrontend + +class JavaScript2SwiftRewriterJobBuilderTests: XCTestCase { + func testEphemeral() { + let sut = JavaScript2SwiftRewriterJobBuilder() + + XCTAssertTrue(sut.inputs.inputs.isEmpty) + } + + func testDefaultIntentionPasses() { + let sut = JavaScript2SwiftRewriterJobBuilder() + + let intents = sut.intentionPassesSource.intentionPasses + + // Using iterator so we can test ordering without indexing into array + // (could crash and abort tests halfway through) + var intentsIterator = intents.makeIterator() + + XCTAssert(intentsIterator.next() is DetectNoReturnsIntentionPass) + XCTAssert(intentsIterator.next() is DetectTypePropertiesBySelfAssignmentIntentionPass) + XCTAssert(intentsIterator.next() is FileTypeMergingIntentionPass) + XCTAssert(intentsIterator.next() is SubscriptDeclarationIntentionPass) + XCTAssert(intentsIterator.next() is PromoteProtocolPropertyConformanceIntentionPass) + XCTAssert(intentsIterator.next() is ProtocolNullabilityPropagationToConformersIntentionPass) + XCTAssert(intentsIterator.next() is JavaScriptPropertyMergeIntentionPass) + XCTAssert(intentsIterator.next() is StoredPropertyToNominalTypesIntentionPass) + XCTAssert(intentsIterator.next() is SwiftifyMethodSignaturesIntentionPass) + XCTAssert(intentsIterator.next() is InitAnalysisIntentionPass) + XCTAssert(intentsIterator.next() is ImportDirectiveIntentionPass) + XCTAssert(intentsIterator.next() is UIKitCorrectorIntentionPass) + XCTAssert(intentsIterator.next() is ProtocolNullabilityPropagationToConformersIntentionPass) + XCTAssert(intentsIterator.next() is DetectNonnullReturnsIntentionPass) + XCTAssert(intentsIterator.next() is RemoveEmptyExtensionsIntentionPass) + XCTAssertNil(intentsIterator.next()) + } + + func testDefaultExpressionPasses() { + let sut = JavaScript2SwiftRewriterJobBuilder() + + let source = sut.astRewriterPassSources + var passes = source.syntaxNodePasses.makeIterator() + + XCTAssert(passes.next() == CanonicalNameExpressionPass.self) + XCTAssert(passes.next() == AllocInitExpressionPass.self) + XCTAssert(passes.next() == InitRewriterExpressionPass.self) + XCTAssert(passes.next() == ASTSimplifier.self) + XCTAssert(passes.next() == PropertyAsMethodAccessCorrectingExpressionPass.self) + XCTAssert(passes.next() == CompoundTypeApplierExpressionPass.self) + XCTAssert(passes.next() == CoreGraphicsExpressionPass.self) + XCTAssert(passes.next() == FoundationExpressionPass.self) + XCTAssert(passes.next() == UIKitExpressionPass.self) + XCTAssert(passes.next() == NilValueTransformationsPass.self) + XCTAssert(passes.next() == NumberCommonsExpressionPass.self) + XCTAssert(passes.next() == JavaScriptASTCorrectorExpressionPass.self) + XCTAssert(passes.next() == NumberCommonsExpressionPass.self) + XCTAssert(passes.next() == EnumRewriterExpressionPass.self) + XCTAssert(passes.next() == LocalConstantPromotionExpressionPass.self) + XCTAssert(passes.next() == VariableNullabilityPromotionExpressionPass.self) + XCTAssert(passes.next() == ASTSimplifier.self) + XCTAssertNil(passes.next()) + } + + func testDefaultSyntaxPasses() { + let sut = JavaScript2SwiftRewriterJobBuilder() + + let passes = sut.syntaxRewriterPassSource.passes + + // Using iterator so we can test ordering without indexing into array + // (could crash and abort tests halfway through) + var passesIterator = passes.makeIterator() + + XCTAssert(passesIterator.next() is StatementSpacingSyntaxPass) + XCTAssertNil(passesIterator.next()) + } + + func testDefaultSourcePreprocessors() { + let sut = JavaScript2SwiftRewriterJobBuilder() + + let preprocessors = sut.preprocessors + + // Using iterator so we can test ordering without indexing into array + // (could crash and abort tests halfway through) + var iterator = preprocessors.makeIterator() + + XCTAssertNil(iterator.next()) + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriterJobTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriterJobTests.swift new file mode 100644 index 000000000..2b9f649ad --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriterJobTests.swift @@ -0,0 +1,236 @@ +import ExpressionPasses +import GlobalsProviders +import GrammarModelBase +import IntentionPasses +import Intentions +import JsParser +import SourcePreprocessors +import SwiftAST +import SwiftSyntax +import SwiftSyntaxRewriterPasses +import SwiftSyntaxSupport +import TestCommons +import TypeSystem +import Utils +import WriterTargetOutput +import XCTest + +@testable import JavaScriptFrontend + +class JavaScript2SwiftRewriterJobTests: XCTestCase { + func testTranspile() { + let expectedSwift = """ + var globalVar: Any = 0 + + func aFunction() -> Any { + Hello.world() + } + // End of file Input.swift + class Class { + func method() { + Hello.world() + } + } + // End of file Source.swift + """ + let job = + JavaScript2SwiftRewriterJob( + input: MockInputSourcesProvider(), + intentionPassesSource: MockIntentionPassSource(), + astRewriterPassSources: MockExpressionPassesSource(), + globalsProvidersSource: MockGlobalsProvidersSource(), + syntaxRewriterPassSource: MockSwiftSyntaxRewriterPassProvider(), + preprocessors: [MockSourcePreprocessor()], + settings: .default, + swiftSyntaxOptions: .default, + parserCache: nil + ) + let output = MockWriterOutput() + + let result = job.execute(output: output) + + let buffer = output.resultString() + + XCTAssert(result.succeeded) + diffTest(expected: expectedSwift, highlightLineInEditor: false) + .diff(buffer) + } +} + +private class MockWriterOutput: WriterOutput { + var files: [MockOutput] = [] + let mutex = Mutex() + + func createFile(path: String) throws -> FileOutput { + let output = MockOutput(filepath: path) + mutex.locking { + files.append(output) + } + + return output + } + + func resultString() -> String { + return + files + .sorted { $0.filepath < $1.filepath } + .map(\.buffer) + .joined(separator: "\n") + .trimmingCharacters(in: .whitespacesAndNewlines) + } +} + +private class MockOutput: FileOutput { + var isClosed = false + var filepath: String + var buffer: String = "" + + init(filepath: String) { + self.filepath = filepath + } + + func close() { + buffer += "\n// End of file \(filepath)" + isClosed = true + } + + func outputTarget() -> RewriterOutputTarget { + let target = StringRewriterOutput() + + target.onChangeBuffer = { value in + assert(!self.isClosed, "Tried to output to a closed file") + + self.buffer = value + } + + return target + } +} + +private class MockInputSourcesProvider: InputSourcesProvider { + var inputs: [MockInputSource] = [ + MockInputSource( + source: """ + var globalVar = 0; + """, + path: "Input.js", + isPrimary: true + ) + ] + + func sources() -> [InputSource] { + return inputs + } +} + +private struct MockInputSource: InputSource { + var source: String + var path: String + var isPrimary: Bool + + func loadSource() throws -> CodeSource { + return StringCodeSource(source: source, fileName: path) + } + + func sourcePath() -> String { + return path + } +} + +private class MockIntentionPassSource: IntentionPassSource { + var intentionPasses: [IntentionPass] = [ + MockIntentionPass() + ] +} + +private class MockIntentionPass: IntentionPass { + func apply(on intentionCollection: IntentionCollection, context: IntentionPassContext) { + let file = FileGenerationIntention(sourcePath: "Source.js", targetPath: "Source.swift") + let cls = ClassGenerationIntention(typeName: "Class") + cls.isInterfaceSource = false + let method = MethodGenerationIntention(signature: FunctionSignature(name: "method")) + method.functionBody = FunctionBodyIntention(body: []) + cls.addMethod(method) + file.addType(cls) + + intentionCollection.addIntention(file) + } +} + +private class MockExpressionPassesSource: ASTRewriterPassSource { + var syntaxNodePasses: [ASTRewriterPass.Type] = [ + MockExpressionPasses.self + ] +} + +private final class MockExpressionPasses: ASTRewriterPass { + override func apply(on statement: Statement, context: ASTRewriterPassContext) -> Statement { + return + CompoundStatement(statements: [ + Statement.expression(Expression.identifier("hello").dot("world").call()) + ]) + } +} + +private class MockSourcePreprocessor: SourcePreprocessor { + func preprocess(source: String, context: PreprocessingContext) -> String { + if context.filePath == "Input.js" { + return source + """ + + function aFunction() { + + } + """ + } + + return source + } +} + +private class MockGlobalsProvidersSource: GlobalsProvidersSource { + var globalsProviders: [GlobalsProvider] = [ + MockGlobalsProviders() + ] +} + +private class MockGlobalsProviders: GlobalsProvider { + + func definitionsSource() -> DefinitionsSource { + return ArrayDefinitionsSource(definitions: []) + } + + func knownTypeProvider() -> KnownTypeProvider { + return CollectionKnownTypeProvider(knownTypes: []) + } + + func typealiasProvider() -> TypealiasProvider { + return CollectionTypealiasProvider(aliases: [:]) + } + +} + +private class MockSwiftSyntaxRewriterPassProvider: SwiftSyntaxRewriterPassProvider { + var passes: [SwiftSyntaxRewriterPass] = [ + RewriterPass() + ] + + private class RewriterPass: SyntaxRewriter, SwiftSyntaxRewriterPass { + func rewrite(_ file: SourceFileSyntax) -> SourceFileSyntax { + return SourceFileSyntax(self.visit(file))! + } + + override func visit(_ node: DeclReferenceExprSyntax) -> ExprSyntax { + if node.baseName.text == "hello" { + let token = TokenSyntax + .identifier("Hello") + .with(\.leadingTrivia, node.baseName.leadingTrivia) + .with(\.trailingTrivia, node.baseName.trailingTrivia) + return ExprSyntax( + node.with(\.baseName, token) + ) + } + + return ExprSyntax(node) + } + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriterTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriterTests.swift new file mode 100644 index 000000000..01f5cd19a --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScript2SwiftRewriterTests.swift @@ -0,0 +1,945 @@ +import XCTest + +@testable import JavaScriptFrontend + +class JavaScript2SwiftRewriterTests: XCTestCase { + func testRewrite_function() { + assertRewrite( + js: """ + function test() { + return 0; + } + """, + swift: """ + func test() -> Any { + return 0 + } + """ + ) + } + + func testRewrite_functionBody() { + assertRewrite( + js: """ + function test() { + var a = 0; + return a + 10; + } + """, + swift: """ + func test() -> Any { + let a: Any = 0 + + return a + 10 + } + """ + ) + } + + func testRewrite_alwaysEmitTypeSignaturesByDefault() { + assertRewrite( + js: """ + function test() { + var a = 0; + var b = a; + } + """, + swift: """ + func test() { + let a: Any = 0 + let b: Any = a + } + """ + ) + } + + func testRewrite_classProperty() { + assertRewrite( + js: """ + class A { + a = 0 + } + """, + swift: """ + class A { + var a: Any = 0 + } + """ + ) + } + + func testRewrite_classStaticMethod() { + assertRewrite( + js: """ + class A { + static method() { + + } + } + """, + swift: """ + class A { + static func method() { + } + } + """ + ) + } + + func testRewrite_multilineComments() { + assertRewrite( + js: """ + /** + * Bezier curve constructor. + * + * ...docs pending... + */ + var a = 0; + """, + swift: """ + /** + * Bezier curve constructor. + * + * ...docs pending... + */ + var a: Any = 0 + """ + ) + } + + func testRewrite_collectBodyComments() { + assertRewrite( + js: """ + /** + * Bezier curve constructor. + * + * ...docs pending... + */ + function a() { + // Body comment + } + function b() { + let local; + } + """, + swift: """ + /** + * Bezier curve constructor. + * + * ...docs pending... + */ + func a() { + // Body comment + } + func b() { + let local: Any + } + """ + ) + } + + func testRewrite_nestedFunctions() { + assertRewrite( + js: """ + function foo() { + function bar() { + return 0 + } + + var baz = bar() + } + """, + swift: """ + func foo() { + func bar() -> Any { + return 0 + } + + let baz: Any = bar() + } + """ + ) + } + + func testRewrite_sequentialAssignmentExpressions() { + assertRewrite( + js: """ + function foo() { + var a, b, c = 1; + + a = b = c; + } + """, + swift: """ + func foo() { + var a: Any, b: Any, c: Any = 1 + + b = c + a = b + } + """ + ) + } + + func testRewrite_emitJavaScriptObject() { + assertRewrite( + js: """ + var object = { + x: 1, + y: 2, + z + } + """, + swift: """ + @dynamicMemberLookup + final class JavaScriptObject: ExpressibleByDictionaryLiteral { + private var values: [String: Any] + + subscript(dynamicMember member: String) -> Any? { + return values[member] + } + + init() { + self.values = [:] + } + init(dictionaryLiteral elements: (String, Any)...) { + for (key, value) in elements { + self.values[key] = value + } + } + init(_ values: [String: Any]) { + self.values = values + } + } + // End of file JavaScriptObject.swift + var object: Any = JavaScriptObject(["x": 1, "y": 2, "z": z]) + // End of file test.swift + """, + rewriterSettings: + .default + .with(\.emitJavaScriptObject, true) + ) + } + + func testRewrite_emitJavaScriptObject_detectsDynamicMemberLookups() { + assertRewrite( + js: """ + function f() { + var object = { + x: 1, + y: 2, + z + } + + var x = object.x; + } + """, + swift: """ + @dynamicMemberLookup + final class JavaScriptObject: ExpressibleByDictionaryLiteral { + private var values: [String: Any] + + subscript(dynamicMember member: String) -> Any? { + return values[member] + } + + init() { + // type: [String: Any] + self.values = [:] + } + init(dictionaryLiteral elements: (String, Any)...) { + for (key, value) in elements { + // type: Any? + self.values[key] = value + } + } + init(_ values: [String: Any]) { + // type: [String: Any] + self.values = values + } + } + // End of file JavaScriptObject.swift + func f() { + // decl type: JavaScriptObject + // init type: JavaScriptObject + let object = JavaScriptObject(["x": 1, "y": 2, "z": z]) + // decl type: Any? + // init type: Any? + let x = object.x + } + // End of file test.swift + """, + options: + .default + .with(\.outputExpressionTypes, true), + rewriterSettings: + .default + .with(\.deduceTypes, true) + .with(\.emitJavaScriptObject, true) + ) + } + + func testRewrite_skipReturnOnNonReturningFunctions() { + assertRewrite( + js: """ + function f1() { + if (true) { + + } + } + function f2() { + if (true) { + return 0; + } + } + """, + swift: """ + func f1() { + if true { + } + } + func f2() -> Any { + if true { + return 0 + } + } + """ + ) + } + + func testRewrite_propagateDelayedAssignmentType() { + assertRewrite( + js: """ + function f1() { + var a; + a = 0; + } + """, + swift: """ + func f1() { + var a: Any + + a = 0 + } + """ + ) + } + + func testRewrite_parameterNullCoalesce() { + assertRewrite( + js: """ + function f1(a) { + a = a || 100 + } + """, + swift: """ + func f1(_ a: Any) { + a = a ?? 100 + } + """ + ) + } + + func testRewrite_constructor() { + assertRewrite( + js: """ + class AClass { + constructor(a, b) { + this.a = a + this.b = b + } + } + """, + swift: """ + class AClass { + var a: Any + var b: Any + + init(_ a: Any, _ b: Any) { + self.a = a + self.b = b + } + } + """ + ) + } + + func testRewrite_createClassFields() { + assertRewrite( + js: """ + class AClass { + constructor() { + this.field1 = 0 + } + + method() { + this.field2 = "value" + } + } + """, + swift: """ + class AClass { + var field1: Int = 0 + var field2: String + + init() { + self.field1 = 0 + } + + func method() { + self.field2 = "value" + } + } + """ + ) + } + + func testRewrite_detectJavaScriptObjectType() { + assertRewrite( + js: """ + function f() { + var object = { + x: 1, + y: 2 + } + } + """, + swift: """ + @dynamicMemberLookup + final class JavaScriptObject: ExpressibleByDictionaryLiteral { + private var values: [String: Any] + + subscript(dynamicMember member: String) -> Any? { + return values[member] + } + + init() { + // type: [String: Any] + self.values = [:] + } + init(dictionaryLiteral elements: (String, Any)...) { + for (key, value) in elements { + // type: Any? + self.values[key] = value + } + } + init(_ values: [String: Any]) { + // type: [String: Any] + self.values = values + } + } + // End of file JavaScriptObject.swift + func f() { + // decl type: Any + // init type: JavaScriptObject + let object = JavaScriptObject(["x": 1, "y": 2]) + } + // End of file test.swift + """, + options: + .default + .with(\.outputExpressionTypes, true), + rewriterSettings: + .default + .with(\.emitJavaScriptObject, true) + ) + } + + func testRewrite_propertyShorthandObjectLiterals() { + assertRewrite( + js: """ + function f() { + var a = 0; + var b = { + a, + c: 10 + }; + } + """, + swift: """ + func f() { + let a: Any = 0 + let b: Any = [a: a, c: 10] + } + """ + ) + } + + func testRewrite_detectPropertyBySelfAssignment() { + assertRewrite( + js: """ + class A { + computedirection() { + let clockwise = false; + clockwise = this.clockwise; + } + } + """, + swift: """ + class A { + var clockwise: Any + + func computedirection() { + var clockwise: Any = false + + clockwise = self.clockwise + } + } + """ + ) + } + + func testRewrite_detectPropertyBySelfAssignment_preferWriteUsages() { + assertRewrite( + js: """ + class A { + computedirection() { + const clockwise = this.clockwise; + const angle = utils.angle; + + this.clockwise = angle > 0; + } + } + """, + swift: """ + class A { + var clockwise: Bool = false + + func computedirection() { + let clockwise: Any = self.clockwise + let angle: Any = utils.angle + + self.clockwise = angle > 0 + } + } + """ + ) + } + + func testRewrite_detectPropertyBySelfAssignment_ignoreMethodReferences() { + assertRewrite( + js: """ + class A { + constructor() { + const local = this.aMethod; + } + aMethod() { + + } + } + """, + swift: """ + class A { + init() { + let local: Any = self.aMethod + } + + func aMethod() { + } + } + """ + ) + } + + func testRewrite_deduceTypes_deducesLocalVariableType() { + assertRewrite( + js: """ + function foo() { + var a = 0; + var b = a; + var c; + c = a > b; + } + """, + swift: """ + func foo() { + let a: Double = 0 + let b: Double = a + var c: Bool + + c = a > b + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_deduceTypes_visitGlobalVariableExpression() { + assertRewrite( + js: """ + const utils = { + foo: function () { + for (let p = 0, d = 0, c = d - 1; d > 1; d--, c--) { + const list = []; + for (let j = 0, dpt; j < c; j++) { + dpt = { + x: c * (p[j + 1].x - p[j].x), + y: c * (p[j + 1].y - p[j].y), + }; + if (_3d) { + dpt.z = c * (p[j + 1].z - p[j].z); + } + list.push(dpt); + } + dpoints.push(list); + p = list; + } + } + } + """, + swift: """ + var utils: Any = [foo: { () -> Any in + var p: Double = 0, d: Double = 0, c: Double = d - 1 + + while d > 1 { + defer { + d -= 1 + c -= 1 + } + + let list: NSArray = [] + var j: Double = 0, dpt: Any + + while j < c { + defer { + j += 1 + } + + dpt = [x: c * (p[j + 1].x - p[j].x), y: c * (p[j + 1].y - p[j].y)] + + if _3d { + dpt.z = c * (p[j + 1].z - p[j].z) + } + + list.push(dpt) + } + + dpoints.push(list) + p = list + } + }] + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_deduceTypes_useLocalTypeInformation() { + assertRewrite( + js: """ + class A { + constructor() { + const local = this.aMethod; + } + aMethod() { + + } + } + """, + swift: """ + class A { + init() { + let local: () -> Any = self.aMethod + } + + func aMethod() { + } + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_deduceTypes_detectArrayByNumericSubscript() { + assertRewrite( + js: """ + function foo() { + var a = b; + a[0] = "c"; + } + """, + swift: """ + func foo() { + var a: NSArray = b + + a[0] = "c" + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_deduceTypes_deduceArgumentTypes() { + assertRewrite( + js: """ + function f(a, b) { + if (b == false) { + b = 0 + } + + a = b + 10 + + return a + } + """, + swift: """ + func f(_ a: Double, _ b: Double) -> Any { + if b == false { + b = 0 + } + + a = b + 10 + + return a + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_deduceTypes_deduceArgumentTypes_repeatedArgumentNames() { + assertRewrite( + js: """ + function foo(a) { + a = 10 + } + function bar(a) { + a = 10 + } + function baz(b) { + b = 10 + } + """, + swift: """ + func foo(_ a: Double) { + a = 10 + } + func bar(_ a: Double) { + a = 10 + } + func baz(_ b: Double) { + b = 10 + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_deduceTypes_deduceArgumentTypes_staticMethod() { + assertRewrite( + js: """ + class A { + static quadraticFromPoints(p1, p2, p3, t) { + p3 = 0.0; + + if (typeof t === "undefined") { + t = 0.5; + } + // shortcuts, although they're really dumb + if (t === 0) { + return new Bezier(p2, p2); + } + if (t === 1) { + return new Bezier(p1, p2); + } + // real fitting. + const abc = Bezier.getABC(2, p1, p2, t); + return new Bezier(p1, abc.A); + } + } + """, + swift: """ + class A { + static func quadraticFromPoints(_ p1: Any, _ p2: Any, _ p3: Double, _ t: Double) -> Any { + p3 = 0.0 + + if String(type(of: t)) == "undefined" { + t = 0.5 + } + + // shortcuts, although they're really dumb + if t == 0 { + return Bezier(p2, p2) + } + + if t == 1 { + return Bezier(p1, p2) + } + + // real fitting. + let abc: Any = Bezier.getABC(2, p1, p2, t) + + return Bezier(p1, abc.A) + } + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_deduceTypes_deduceArgumentTypes_detectArrayByPushCall() { + assertRewrite( + js: """ + function foo(a) { + a.push(0); + } + """, + swift: """ + func foo(_ a: NSArray) { + a.push(0) + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_deduceTypes_deduceArgumentTypes_detectArrayByLengthGetter() { + assertRewrite( + js: """ + function foo(a) { + if (a.length > 0) { + } + } + """, + swift: """ + func foo(_ a: NSArray) { + if a.length > 0 { + } + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_deduceTypes_deduceArgumentTypes_detectArrayByNumericSubscript() { + assertRewrite( + js: """ + function foo(a) { + var b = 0; + a[b] = 0; + } + """, + swift: """ + func foo(_ a: NSArray) { + let b: Double = 0 + + a[b] = 0 + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_deduceTypes_deduceArgumentTypes_doNotReportNonNumericSubscriptsAsArray() { + assertRewrite( + js: """ + function foo(a) { + var b = "p"; + a[b] = 0; + } + """, + swift: """ + func foo(_ a: Any) { + let b: String = "p" + + a[b] = 0 + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_detectGetters() { + assertRewrite( + js: """ + class Example { + constructor (id) { + this._id = id + } + get id() { + return this._id + } + } + """, + swift: """ + class Example { + var _id: Any + var id: Any { + return self._id + } + + init(_ id: Any) { + self._id = id + } + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_detectGettersSetters() { + assertRewrite( + js: """ + class Example { + constructor (id) { + this._id = id + } + set id(v) { + this._id = v + } + get id() { + return this._id + } + } + """, + swift: """ + class Example { + var _id: Any + var id: Any { + get { + return self._id + } + set(v) { + self._id = v + } + } + + init(_ id: Any) { + self._id = id + } + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } + + func testRewrite_privateField() { + assertRewrite( + js: """ + class Example { + #_var = 0; + + constructor () { + this.#_var = this.#_method() + } + + #_method() { + + } + } + """, + swift: """ + class Example { + var _var: Any = 0 + + init() { + self._var = self._method() + } + + func _method() { + } + } + """, + rewriterSettings: .default.with(\.deduceTypes, true) + ) + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptExprASTReaderTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptExprASTReaderTests.swift new file mode 100644 index 000000000..b7702b19e --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptExprASTReaderTests.swift @@ -0,0 +1,388 @@ +import Antlr4 +import Utils +import JsParser +import JsParserAntlr +import SwiftAST +import TypeSystem +import XCTest + +@testable import JavaScriptFrontend + +class JavaScriptExprASTReaderTests: XCTestCase { + var tokens: CommonTokenStream! + + func testAnonymousFunction() { + assert( + jsExpr: """ + function (param) { + return param + 10; + } + """, + readsAs: .block( + parameters: [.init(name: "param", type: .any)], + return: SwiftType.any, + body: [ + .return(.identifier("param").binary(op: .add, rhs: .constant(10))) + ] + ) + ) + } + + func testSubscript() { + assert( + jsExpr: "aSubscript[1]", + readsAs: .identifier("aSubscript").sub(.constant(1)) + ) + } + + func testMemberAccess() { + assert(jsExpr: "aValue.member", readsAs: .identifier("aValue").dot("member")) + } + + func testFunctionCall() { + assert( + jsExpr: "print()", + readsAs: .identifier("print").call() + ) + + assert( + jsExpr: "print(123, 456)", + readsAs: .identifier("print").call([ + .constant(123), + .constant(456), + ]) + ) + } + + func testMethodCall() { + assert( + jsExpr: "a.method()", + readsAs: .identifier("a").dot("method").call() + ) + + assert( + jsExpr: "a.method(1, 2, 3)", + readsAs: + .identifier("a") + .dot("method").call([ + .unlabeled(.constant(1)), + .unlabeled(.constant(2)), + .unlabeled(.constant(3)), + ]) + ) + } + + func testAssignmentWithMethodCall() { + let exp = + Expression + .identifier("UIView") + .dot("alloc").call() + .dot("initWithFrame").call([ + .unlabeled( + Expression + .identifier("CGRectMake") + .call([ + .constant(0), + .identifier("kCPDefaultTimelineRowHeight"), + .identifier("self").dot("ganttWidth"), + .identifier("self").dot("ganttHeight"), + ]) + ) + ]) + + assert( + jsExpr: """ + _cellContainerView = + UIView.alloc().initWithFrame(CGRectMake(0, kCPDefaultTimelineRowHeight, self.ganttWidth, self.ganttHeight)); + """, + readsAs: .assignment(lhs: .identifier("_cellContainerView"), op: .assign, rhs: exp) + ) + } + + func testBinaryOperator() { + assert( + jsExpr: "i + 10", + readsAs: .binary(lhs: .identifier("i"), op: .add, rhs: .constant(10)) + ) + + assert( + jsExpr: "i - 10", + readsAs: .binary(lhs: .identifier("i"), op: .subtract, rhs: .constant(10)) + ) + + assert( + jsExpr: "i > 10", + readsAs: .binary(lhs: .identifier("i"), op: .greaterThan, rhs: .constant(10)) + ) + + assert( + jsExpr: "i < 10", + readsAs: .binary(lhs: .identifier("i"), op: .lessThan, rhs: .constant(10)) + ) + + assert( + jsExpr: "i % 10", + readsAs: .binary(lhs: .identifier("i"), op: .mod, rhs: .constant(10)) + ) + + assert( + jsExpr: "i << 10", + readsAs: .binary(lhs: .identifier("i"), op: .bitwiseShiftLeft, rhs: .constant(10)) + ) + + assert( + jsExpr: "i >> 10", + readsAs: .binary(lhs: .identifier("i"), op: .bitwiseShiftRight, rhs: .constant(10)) + ) + } + + func testPostfixIncrementDecrement() { + assert( + jsExpr: "i++", + readsAs: .assignment(lhs: .identifier("i"), op: .addAssign, rhs: .constant(1)) + ) + assert( + jsExpr: "i--", + readsAs: .assignment(lhs: .identifier("i"), op: .subtractAssign, rhs: .constant(1)) + ) + } + + func testPostfixStructAccessWithAssignment() { + let exp = + Expression + .identifier("self") + .dot("_ganttEndDate") + .assignment( + op: .assign, + rhs: .identifier("ganttEndDate") + ) + + assert( + jsExpr: "self._ganttEndDate = ganttEndDate", + readsAs: exp + ) + } + + func testTernaryExpression() { + assert( + jsExpr: "value ? ifTrue : ifFalse", + readsAs: .ternary( + .identifier("value"), + true: .identifier("ifTrue"), + false: .identifier("ifFalse") + ) + ) + } + + func testThisExpression() { + assert(jsExpr: "this", readsAs: .identifier("self")) + assert(jsExpr: "this.a", readsAs: .identifier("self").dot("a")) + } + + func testLiterals() { + assert(jsExpr: "1", readsAs: .constant(.decimal(1))) + assert(jsExpr: "1.0e2", readsAs: .constant(.double(1e2))) + assert(jsExpr: "1.0", readsAs: .constant(.double(1))) + assert(jsExpr: "true", readsAs: .constant(.boolean(true))) + assert(jsExpr: "false", readsAs: .constant(.boolean(false))) + assert(jsExpr: "0123", readsAs: .constant(.octal(0o123))) + assert(jsExpr: "0o123", readsAs: .constant(.octal(0o123))) + assert(jsExpr: "0x123", readsAs: .constant(.hexadecimal(0x123))) + assert(jsExpr: "0b1001", readsAs: .constant(.binary(0b1001))) + assert(jsExpr: "\"abc\"", readsAs: .constant(.string("abc"))) + assert(jsExpr: "123.456e+20", readsAs: .constant(.double(123.456e+20))) + } + + func testSuperExpression() { + assert(jsExpr: "super", readsAs: .identifier("super")) + assert(jsExpr: "super.a", readsAs: .identifier("super").dot("a")) + } + + func testArrayLiteral() { + assert(jsExpr: "[]", readsAs: .arrayLiteral([])) + assert(jsExpr: "[\"abc\"]", readsAs: .arrayLiteral([.constant("abc")])) + assert( + jsExpr: "[\"abc\", 1]", + readsAs: .arrayLiteral([.constant("abc"), .constant(1)]) + ) + } + + func testObjectLiteral() { + assert(jsExpr: "{}", readsAs: .dictionaryLiteral([])) + assert( + jsExpr: "{1: 2}", + readsAs: .dictionaryLiteral([ + ExpressionDictionaryPair(key: .constant(1), value: .constant(2)) + ]) + ) + assert( + jsExpr: "{1: 2, 3: 4}", + readsAs: .dictionaryLiteral([ + ExpressionDictionaryPair(key: .constant(1), value: .constant(2)), + ExpressionDictionaryPair(key: .constant(3), value: .constant(4)), + ]) + ) + } + + func testObjectLiteralFunction() { + assert( + jsExpr: """ + { + f: function (a, b) { + return a + b; + } + } + """, + readsAs: .dictionaryLiteral([ + .identifier("f"): .block( + parameters: [.init(name: "a", type: .any), .init(name: "b", type: .any)], + return: .any, + body: [ + .return(.identifier("a").binary(op: .add, rhs: .identifier("b"))) + ] + ) + ]) + ) + } + + func testObjectLiteralExpression() { + assert( + jsExpr: "{x: 1, y: 2}", + readsAs: .dictionaryLiteral([ + .identifier("x"): .constant(1), + .identifier("y"): .constant(2), + ]) + ) + } + + func testObjectLiteral_propertyShorthand() { + assert( + jsExpr: "{x, y: 2, z}", + readsAs: .dictionaryLiteral([ + .identifier("x"): .identifier("x"), + .identifier("y"): .constant(2), + .identifier("z"): .identifier("z"), + ]) + ) + } + + func testParensExpression() { + assert( + jsExpr: "(1 + 2)", + readsAs: .parens(.binary(lhs: .constant(1), op: .add, rhs: .constant(2))) + ) + } + + func testParensExpression_tuple() { + assert( + jsExpr: "(1, 2, 3)", + readsAs: .tuple([ + .constant(1), + .constant(2), + .constant(3), + ]) + ) + } + + // MARK: JavaScriptObject emission + + func testObjectLiteral_javaScriptObject() { + assert( + jsExpr: """ + { + x: 1, + y: 2 + } + """, + options: .init(objectLiteralKind: .javaScriptObject(typeName: "JavaScriptObject")), + readsAs: + .identifier("JavaScriptObject") + .call([ + .dictionaryLiteral([ + .init(key: .constant("x"), value: .constant(1)), + .init(key: .constant("y"), value: .constant(2)), + ]) + ]) + ) + } +} + +extension JavaScriptExprASTReaderTests { + + func assert( + jsExpr: String, + options: JavaScriptASTReaderOptions = .default, + parseWith: (JavaScriptParser) throws -> ParserRuleContext = { parser in + try parser.singleExpression() + }, + readsAs expected: Expression, + file: StaticString = #filePath, + line: UInt = #line + ) { + let source = StringCodeSource(source: jsExpr, fileName: "test.js") + let typeSystem = TypeSystem() + + let sut = + JavaScriptExprASTReader( + context: JavaScriptASTReaderContext( + source: source, + typeSystem: typeSystem, + typeContext: nil, + comments: [], + options: options + ), + delegate: nil + ) + + do { + let state = try JavaScriptExprASTReaderTests._state.makeMainParser(input: jsExpr) + tokens = state.tokens + + let expr = try parseWith(state.parser) + + let result = expr.accept(sut) + + if result != expected { + var resStr: String + var expStr: String + + if result?.description == expected.description { + if let result = result { + resStr = "" + dump(result, to: &resStr) + } else { + resStr = "" + } + + expStr = "" + dump(expected, to: &expStr) + } else { + resStr = result?.description ?? "" + expStr = expected.description + } + + XCTFail( + """ + Failed: Expected to read JavaScript expression + \(jsExpr) + as + \(expStr) + but read as + \(resStr) + """, + file: file, + line: line + ) + } + } + catch { + XCTFail( + "Unexpected error(s) parsing JavaScript: \(error)", + file: file, + line: line + ) + } + } + + private static var _state = JsParserState() +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptFileCollectionStepTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptFileCollectionStepTests.swift new file mode 100644 index 000000000..62d8d6508 --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptFileCollectionStepTests.swift @@ -0,0 +1,130 @@ +import TestCommons +import XCTest + +@testable import JavaScriptFrontend + +class JavaScriptFileCollectionStepTests: XCTestCase { + var sut: JavaScriptFileCollectionStep! + var fileDisk: VirtualFileDisk! + + override func setUp() { + super.setUp() + + fileDisk = VirtualFileDisk() + sut = JavaScriptFileCollectionStep(fileProvider: fileDisk) + } + + func testAddFileFromUrl() throws { + try fileDisk.createFile(atPath: "/directory/file.js") + + try sut.addFile(fromUrl: URL(string: "/directory/file.js")!, isPrimary: true) + + XCTAssertEqual(sut.files.map { $0.url.path }, ["/directory/file.js"]) + } + + func testAddFileFromUrlThrowsErrorOnInvalidFile() throws { + XCTAssertThrowsError( + try sut.addFile(fromUrl: URL(string: "/directory/file.js")!, isPrimary: true) + ) + } + + func testAddFileFromUrlIgnoresDuplicates() throws { + try fileDisk.createFile(atPath: "/directory/file.js") + + try sut.addFile(fromUrl: URL(string: "/directory/file.js")!, isPrimary: true) + try sut.addFile(fromUrl: URL(string: "/directory/file.js")!, isPrimary: true) + + XCTAssertEqual(sut.files.map { $0.url.path }, ["/directory/file.js"]) + } + + func testAddFileFromUrlPromotesNonPrimariesToPrimaries() throws { + try fileDisk.createFile(atPath: "/directory/file1.js") + try fileDisk.createFile(atPath: "/directory/file2.js") + + // Test both orders of 'isPrimary' flag: false -> true, true -> false + try sut.addFile(fromUrl: URL(string: "/directory/file1.js")!, isPrimary: false) + try sut.addFile(fromUrl: URL(string: "/directory/file1.js")!, isPrimary: true) + try sut.addFile(fromUrl: URL(string: "/directory/file2.js")!, isPrimary: true) + try sut.addFile(fromUrl: URL(string: "/directory/file2.js")!, isPrimary: false) + + XCTAssertEqual(sut.files.map { $0.url.path }, ["/directory/file1.js", "/directory/file2.js"]) + XCTAssert(sut.files[0].isPrimary) + XCTAssert(sut.files[1].isPrimary) + } + + func testAddFileIgnoresDuplicates() throws { + try sut.addFile(DiskInputFile(url: URL(string: "/directory/file.js")!, isPrimary: true)) + try sut.addFile(DiskInputFile(url: URL(string: "/directory/file.js")!, isPrimary: true)) + + XCTAssertEqual(sut.files.map { $0.url.path }, ["/directory/file.js"]) + } + + func testAddFilePromotesNonPrimariesToPrimaries() throws { + // Test both orders of 'isPrimary' flag: false -> true, true -> false + try sut.addFile(DiskInputFile(url: URL(string: "/directory/file1.js")!, isPrimary: false)) + try sut.addFile(DiskInputFile(url: URL(string: "/directory/file1.js")!, isPrimary: true)) + try sut.addFile(DiskInputFile(url: URL(string: "/directory/file2.js")!, isPrimary: true)) + try sut.addFile(DiskInputFile(url: URL(string: "/directory/file2.js")!, isPrimary: false)) + + XCTAssertEqual(sut.files.map { $0.url.path }, ["/directory/file1.js", "/directory/file2.js"]) + XCTAssert(sut.files[0].isPrimary) + XCTAssert(sut.files[1].isPrimary) + } + + func testAddFromDirectoryRecursive() throws { + try fileDisk.createFile(atPath: "/directory/file.js") + try fileDisk.createFile(atPath: "/directory/file.other") + try fileDisk.createFile(atPath: "/directory/subPath/file.js") + try fileDisk.createFile(atPath: "/directory/subPath/file.other") + + try sut.addFromDirectory(URL(string: "/directory")!, recursive: true) + + XCTAssertEqual( + Set(sut.files.map { $0.url.path }), + [ + "/directory/file.js", + "/directory/subPath/file.js", + ] + ) + } + + func testDelegateFileCollectionStepReferencedFilesForFile() throws { + let file = DiskInputFile(url: URL(string: "/file.js")!, isPrimary: false) + let mockDelegate = MockFileCollectionStepDelegate() + sut.delegate = mockDelegate + + try sut.addFile(file) + + let invocations = mockDelegate.fileCollectionStepReferencedFilesForFile + XCTAssertEqual(invocations.count, 1) + XCTAssert(invocations[0].fileCollectionStep === sut) + XCTAssertEqual(invocations[0].file as? DiskInputFile, file) + } + + func testDelegateFileCollectionStepReferencedFilesForFile_CollectsFiles() throws { + try fileDisk.createFile(atPath: "/import.js") + let file = DiskInputFile(url: URL(string: "/file.js")!, isPrimary: true) + let expected = DiskInputFile(url: URL(string: "/import.js")!, isPrimary: false) + let mockDelegate = MockFileCollectionStepDelegate() + mockDelegate.fileReferences = [URL(string: "/import.js")!] + sut.delegate = mockDelegate + + try sut.addFile(file) + + XCTAssert(sut.files.contains(expected)) + } +} + +private class MockFileCollectionStepDelegate: JavaScriptFileCollectionStepDelegate { + var fileCollectionStepReferencedFilesForFile: + [(fileCollectionStep: JavaScriptFileCollectionStep, file: InputSource)] = [] + var fileReferences: [URL] = [] + + func javaScriptFileCollectionStep( + _ fileCollectionStep: JavaScriptFileCollectionStep, + referencedFilesForFile file: InputSource + ) throws -> [URL] { + fileCollectionStepReferencedFilesForFile.append((fileCollectionStep, file)) + return fileReferences + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptImportDirectiveFileCollectionDelegateTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptImportDirectiveFileCollectionDelegateTests.swift new file mode 100644 index 000000000..5ef16992e --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptImportDirectiveFileCollectionDelegateTests.swift @@ -0,0 +1,72 @@ +import JsParser +import TestCommons +import XCTest + +@testable import JavaScriptFrontend + +class JavaScriptImportDirectiveFileCollectionDelegateTests: XCTestCase { + var fileDisk: VirtualFileDisk! + var parserCache: JavaScriptParserCache! + + override func setUp() { + super.setUp() + + fileDisk = VirtualFileDisk() + parserCache = JavaScriptParserCache( + fileProvider: fileDisk, + parserStatePool: JsParserStatePool(), + antlrSettings: .default + ) + } + + func testReferencedFilesForFile() throws { + try fileDisk.createFile(atPath: "/a_file.js") + let url = URL(fileURLWithPath: "/input.js") + let inputFile = SingleInputProvider(code: "", isPrimary: true, fileName: url.path) + let parser = JsParser( + string: """ + import { decl } from "./a_file.js"; + """ + ) + try parser.parse() + parserCache.replaceCachedParsedTree(file: url, parser: parser) + let sut = JavaScriptImportDirectiveFileCollectionDelegate( + parserCache: parserCache, + fileProvider: fileDisk + ) + + let result = + try sut.javaScriptFileCollectionStep( + JavaScriptFileCollectionStep(fileProvider: fileDisk), + referencedFilesForFile: inputFile + ) + + XCTAssertEqual(result.map { $0.path }, ["/a_file.js"]) + } + + func testReferencedFilesForFileIgnoresNonExistingFiles() throws { + try fileDisk.createFile(atPath: "/a_file.js") + let url = URL(fileURLWithPath: "/input.js") + let inputFile = SingleInputProvider(code: "", isPrimary: true, fileName: url.path) + let parser = JsParser( + string: """ + import { decl } from "./a_file.js"; + import { other_decl } from "./a_non_existing_file.js"; + """ + ) + try parser.parse() + parserCache.replaceCachedParsedTree(file: url, parser: parser) + let sut = JavaScriptImportDirectiveFileCollectionDelegate( + parserCache: parserCache, + fileProvider: fileDisk + ) + + let result = + try sut.javaScriptFileCollectionStep( + JavaScriptFileCollectionStep(fileProvider: fileDisk), + referencedFilesForFile: inputFile + ) + + XCTAssertEqual(result.map { $0.path }, ["/a_file.js"]) + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptIntentionCollectorTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptIntentionCollectorTests.swift new file mode 100644 index 000000000..7cb593b9d --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptIntentionCollectorTests.swift @@ -0,0 +1,396 @@ +import Intentions +import JsGrammarModels +import JsParser +import SwiftAST +import SwiftRewriterLib +import TypeSystem +import XCTest + +@testable import JavaScriptFrontend + +class JavaScriptIntentionCollectorTests: XCTestCase { + private var file: FileGenerationIntention! + private var delegate: TestCollectorDelegate! + private var sut: JavaScriptIntentionCollector! + + override func setUp() { + super.setUp() + + file = FileGenerationIntention(sourcePath: "A.js", targetPath: "A.swift") + + let context = JavaScriptIntentionCollector.Context() + context.pushContext(file) + + delegate = TestCollectorDelegate(file: file) + sut = JavaScriptIntentionCollector(delegate: delegate, context: context) + } + + func testCollectFunctionDefinition() { + // Arrange + let root = JsGlobalContextNode() + + let function = JsFunctionDeclarationNode() + root.addChild(function) + + function.addChild(JsIdentifierNode(name: "global")) + + function.signature = JsFunctionSignature(arguments: [.init(identifier: "a", isVariadic: false)]) + + // Act + sut.collectIntentions(root) + + // Assert + XCTAssertEqual(file.globalFunctionIntentions.count, 1) + XCTAssertEqual( + file.globalFunctionIntentions.first?.signature, + FunctionSignature( + name: "global", + parameters: [ + ParameterSignature(label: nil, name: "a", type: .any) + ], + returnType: .any, + isStatic: false + ) + ) + XCTAssertTrue(file.globalFunctionIntentions.first?.source is JsFunctionDeclarationNode) + } + + func testCollectFunctionDefinitionBody() throws { + try withExtendedLifetime(JsParser(string: "function global() { stmt(); }")) { parser in + try parser.parse() + let rootNode = parser.rootNode + + sut.collectIntentions(rootNode) + + XCTAssertEqual(file.globalFunctionIntentions.count, 1) + XCTAssertEqual(delegate.reportedForLazyParsing.count, 1) + let function = try XCTUnwrap(file.globalFunctionIntentions.first) + let body = try XCTUnwrap(function.functionBody) + XCTAssert( + delegate.reportedForLazyParsing.first == .globalFunction(body, function) + ) + } + } + + func testCollectGlobalVariable() throws { + let parserState = JsParserState() + + try withExtendedLifetime(parserState.makeMainParser(input: "1")) { parser in + //// Arrange + let root = JsGlobalContextNode() + + let node = JsVariableDeclarationListNode(varModifier: .var) + + // a; + node.addChild({ + let decl = JsVariableDeclarationNode() + decl.addChild(JsIdentifierNode(name: "a")) + return decl + }()) + // b = 1; + try node.addChild({ + let decl = JsVariableDeclarationNode() + decl.addChild(JsIdentifierNode(name: "b")) + + try decl.addChild({ + let node = JsExpressionNode() + node.expression = try parser.parser.singleExpression() + return node + }()) + + return decl + }()) + + root.addChild(node) + + //// Act + sut.collectIntentions(root) + + //// Assert + XCTAssertEqual(file.globalVariableIntentions.count, 2) + // a; + try XCTAssertEqual(file.globalVariableIntentions[try: 0].name, "a") + try XCTAssertEqual( + file.globalVariableIntentions[try: 0].storage, + ValueStorage( + type: .any, + ownership: .strong, + isConstant: false + ) + ) + try XCTAssertNil(file.globalVariableIntentions[try: 0].initialValueIntention) + try XCTAssertTrue(file.globalVariableIntentions[try: 0].source is JsVariableDeclarationNode) + // b = 1; + try XCTAssertEqual(file.globalVariableIntentions[try: 1].name, "b") + try XCTAssertEqual( + file.globalVariableIntentions[try: 1].storage, + ValueStorage( + type: .any, + ownership: .strong, + isConstant: false + ) + ) + try XCTAssertEqual(file.globalVariableIntentions[try: 1].initialValueIntention?.typedSource?.expression?.getText(), "1") + try XCTAssertTrue(file.globalVariableIntentions[try: 1].source is JsVariableDeclarationNode) + } + } + + func testCollectClass() throws { + // Arrange + let root = JsGlobalContextNode() + + let classNode = JsClassNode() + classNode.addChild(JsIdentifierNode(name: "A")) + + root.addChild(classNode) + + // Act + sut.collectIntentions(root) + + // Assert + XCTAssertEqual(file.classIntentions.count, 1) + XCTAssertEqual( + file.classIntentions.first?.typeName, + "A" + ) + XCTAssertTrue(file.classIntentions.first?.source is JsClassNode) + } + + func testCollectClassProperty() throws { + // Arrange + let parserState = JsParserState() + let root = JsGlobalContextNode() + + let classNode = JsClassNode() + classNode.addChild(JsIdentifierNode(name: "A")) + + let propertyNode = JsClassPropertyNode() + propertyNode.addChild(JsIdentifierNode(name: "property")) + + let expressionNode = JsExpressionNode() + expressionNode.expression = try parserState.makeMainParser(input: "0").parser.singleExpression() + + propertyNode.addChild(expressionNode) + classNode.addChild(propertyNode) + root.addChild(classNode) + + // Act + sut.collectIntentions(root) + + // Assert + XCTAssertEqual(file.classIntentions.count, 1) + XCTAssertEqual( + file.classIntentions.first?.properties.first?.name, + "property" + ) + XCTAssertEqual( + file.classIntentions.first?.properties.first?.initialValue, + .constant(0) + ) + XCTAssertTrue(file.classIntentions.first?.properties.first?.source is JsClassPropertyNode) + } + + func testCollectStaticMethod() throws { + // Arrange + let root = JsGlobalContextNode() + + let classNode = JsClassNode() + classNode.addChild(JsIdentifierNode(name: "AClass")) + + let methodNode = JsMethodDefinitionNode() + methodNode.addChild(JsIdentifierNode(name: "method")) + methodNode.signature = JsFunctionSignature() + methodNode.isStatic = true + + classNode.addChild(methodNode) + root.addChild(classNode) + + // Act + sut.collectIntentions(root) + + // Assert + XCTAssertTrue(try file.classIntentions[try: 0].methods[try: 0].isStatic) + } + + func testCollectConstructor() throws { + // Arrange + let root = JsGlobalContextNode() + + let classNode = JsClassNode() + classNode.addChild(JsIdentifierNode(name: "AClass")) + + let ctorNode = JsConstructorDefinitionNode() + ctorNode.addChild(JsIdentifierNode(name: "constructor")) + ctorNode.signature = JsFunctionSignature() + ctorNode.isStatic = true + + classNode.addChild(ctorNode) + root.addChild(classNode) + + // Act + sut.collectIntentions(root) + + // Assert + XCTAssertEqual(try file.classIntentions[try: 0].constructors.count, 1) + } + + func testCollectClassComments() throws { + testCommentCollection( + """ + // A comment + // Another comment + class A { + } + """, + \FileGenerationIntention.classIntentions[0] + ) + } + + func testCollectMethodComments() throws { + testCommentCollection( + """ + class A { + // A comment + // Another comment + f() { + } + } + """, + \FileGenerationIntention.classIntentions[0].methods[0] + ) + } + + func testCollectPropertyComments() throws { + testCommentCollection( + """ + class A { + // A comment + // Another comment + a = 0 + } + """, + \FileGenerationIntention.classIntentions[0].properties[0] + ) + } + + func testCollectGlobalVariableComments() throws { + testCommentCollection( + """ + // A comment + // Another comment + var a = 0; + """, + \FileGenerationIntention.globalVariableIntentions[0] + ) + } + + func testCollectGlobalVariableComments_prependCommentsToFirstVariableDeclarationOnly() throws { + //// Arrange + let root = JsGlobalContextNode() + + let node = JsVariableDeclarationListNode(varModifier: .var) + + node.precedingComments = + JsParser.parseComments(input: """ + // A comment + // Another comment + """) + + // a; + node.addChild({ + let decl = JsVariableDeclarationNode() + decl.addChild(JsIdentifierNode(name: "a")) + return decl + }()) + // b; + node.addChild({ + let decl = JsVariableDeclarationNode() + decl.addChild(JsIdentifierNode(name: "b")) + return decl + }()) + + root.addChild(node) + + //// Act + sut.collectIntentions(root) + + //// Assert + // a; + try XCTAssertEqual( + file.globalVariableIntentions[try: 0].precedingComments, [ + "// A comment", + "// Another comment", + ] + ) + // b = 1; + try XCTAssertTrue(file.globalVariableIntentions[try: 1].precedingComments.isEmpty) + } + + // MARK: - Test internals + + private func testCommentCollection( + _ code: String, + _ keyPath: KeyPath, + line: UInt = #line + ) { + + do { + try withExtendedLifetime(JsParser(string: code)) { parser in + try parser.parse() + let rootNode = parser.rootNode + + sut.collectIntentions(rootNode) + + XCTAssertEqual( + file[keyPath: keyPath].precedingComments, + [ + "// A comment", + "// Another comment", + ], + line: line + ) + } + } + catch { + XCTFail("Failed to parse JavaScript source: \(error)", line: line) + } + } +} + +private class TestCollectorDelegate: JavaScriptIntentionCollectorDelegate { + var context: JavaScriptIntentionCollector.Context + var intentions: IntentionCollection + + var reportedForLazyParsing: [JavaScriptLazyParseItem] = [] + + init(file: FileGenerationIntention) { + context = JavaScriptIntentionCollector.Context() + intentions = IntentionCollection() + intentions.addIntention(file) + + context.pushContext(file) + } + + // MARK: - + + func reportForLazyParsing(_ item: JavaScriptLazyParseItem) { + reportedForLazyParsing.append(item) + } +} + +extension JavaScriptLazyParseItem: Equatable { + public static func == (lhs: Self, rhs: Self) -> Bool { + switch (lhs, rhs) { + case (.globalFunction(let lb, let li), .globalFunction(let rb, let ri)): + return lb === rb && li === ri + case (.method(let lb, let li), .method(let rb, let ri)): + return lb === rb && li === ri + case (.globalVar(let lb, let li), .globalVar(let rb, let ri)): + return lb === rb && li === ri + case (.classProperty(let lb, let li), .classProperty(let rb, let ri)): + return lb === rb && li === ri + default: + return false + } + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptObjectGeneratorTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptObjectGeneratorTests.swift new file mode 100644 index 000000000..a669505c4 --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptObjectGeneratorTests.swift @@ -0,0 +1,63 @@ +import XCTest +import Intentions +import SwiftSyntaxSupport +import TestCommons + +@testable import JavaScriptFrontend + +class JavaScriptObjectGeneratorTests: XCTestCase { + func testGenerateTypeIntention() { + let sut = makeSut() + + let result = sut.generateTypeIntention() + + assertIntention( + result, + matches: """ + @dynamicMemberLookup + final class JavaScriptObject: ExpressibleByDictionaryLiteral { + private var values: [String: Any] + + subscript(dynamicMember member: String) -> Any? { + return values[member] + } + + init() { + self.values = [:] + } + init(dictionaryLiteral elements: (String, Any)...) { + for (key, value) in elements { + self.values[key] = value + } + } + init(_ values: [String: Any]) { + self.values = values + } + } + """ + ) + } + + // MARK: - Test internals + + private func makeSut() -> JavaScriptObjectGenerator { + JavaScriptObjectGenerator() + } + + private func assertIntention( + _ intention: ClassGenerationIntention, + matches string: String, + line: UInt = #line + ) { + let file = FileGenerationIntention(sourcePath: "A.source", targetPath: "A.swift") + file.addType(intention) + + let producer = SwiftProducer() + let syntax = producer.generateFile(file) + + diffTest(expected: string, line: line + 2) + .diff(syntax.description, line: line) + + file.removeTypes(where: { $0 === intention }) + } +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptStatementASTReaderTests.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptStatementASTReaderTests.swift new file mode 100644 index 000000000..e844b41e8 --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/JavaScriptStatementASTReaderTests.swift @@ -0,0 +1,735 @@ +import XCTest +import Antlr4 +import Utils +import GrammarModelBase +import JsParser +import TypeSystem +import JsParserAntlr +import SwiftAST +import SwiftSyntaxSupport + +@testable import JavaScriptFrontend + +class JavaScriptStatementASTReaderTests: XCTestCase { + var tokens: CommonTokenStream! + + func testBlockStatement() { + assert( + jsStmt: """ + { } + """, + readsAs: CompoundStatement() + ) + } + + func testVariableStatement() { + // var + assert( + jsStmt: """ + var a; + """, + readsAs: .variableDeclarations([ + .init(identifier: "a", storage: .variable(ofType: .any), initialization: nil), + ]) + ) + // let + assert( + jsStmt: """ + let a; + """, + readsAs: .variableDeclarations([ + .init(identifier: "a", storage: .variable(ofType: .any), initialization: nil) + ]) + ) + // const + assert( + jsStmt: """ + const a; + """, + readsAs: .variableDeclarations([ + .init(identifier: "a", storage: .constant(ofType: .any), initialization: nil) + ]) + ) + // Multi-declaration statement + assert( + jsStmt: """ + var a = 0, b = 1, c; + """, + readsAs: .variableDeclarations([ + .init(identifier: "a", storage: .variable(ofType: .any), initialization: .constant(0)), + .init(identifier: "b", storage: .variable(ofType: .any), initialization: .constant(1)), + .init(identifier: "c", storage: .variable(ofType: .any), initialization: nil) + ]) + ) + } + + func testExpressionStatement() { + assert( + jsStmt: """ + true; + """, + readsAs: .expression( + .constant(true) + ) + ) + assert( + jsStmt: """ + true, 1; + """, + readsAs: .expression( + .tuple([.constant(true), .constant(1)]) + ) + ) + } + + func testIfStatement() { + assert( + jsStmt: """ + if (a) { + true; + } + """, + readsAs: .if( + .identifier("a"), + body: [ + .expression(.constant(true)) + ], + else: nil + ) + ) + } + + func testDoStatement() { + assert( + jsStmt: """ + do { + false; + } while (true) + """, + readsAs: .repeatWhile( + .constant(true), + body: [ + .expression(.constant(false)) + ] + ) + ) + } + + func testWhileStatement() { + assert( + jsStmt: """ + while (true) { + false; + } + """, + readsAs: .while( + .constant(true), + body: [ + .expression(.constant(false)) + ] + ) + ) + } + + func testForStatement() { + assert( + jsStmt: """ + for (var i = 0; i < 10; i++) { + + } + """, + readsAs: .compound([ + .variableDeclaration(identifier: "i", type: .any, initialization: .constant(0)), + .while( + .identifier("i").binary(op: .lessThan, rhs: .constant(10)), + body: [ + .defer([ + .expression(.identifier("i").assignment(op: .addAssign, rhs: .constant(1))) + ]) + ] + ) + ]) + ) + } + + func testForStatement_expressionInitializer() { + assert( + jsStmt: """ + for (i = 0; i < 10; i++) { + true; + } + """, + readsAs: .compound([ + .expression(.identifier("i").assignment(op: .assign, rhs: .constant(0))), + .while( + .identifier("i").binary(op: .lessThan, rhs: .constant(10)), + body: [ + .defer([ + .expression(.identifier("i").assignment(op: .addAssign, rhs: .constant(1))) + ]), + .expression(.constant(true)) + ] + ) + ]) + ) + } + + func testForOfStatement() { + assert( + jsStmt: """ + for (i of exp) { + true; + } + """, + readsAs: .for( + .identifier("i"), + .identifier("exp"), + body: [ + .expression(.constant(true)) + ] + ) + ) + } + + func testForOfStatement_variableDeclarationInitializer() { + assert( + jsStmt: """ + for (var i of exp) { + true; + } + """, + readsAs: .for( + .identifier("i"), + .identifier("exp"), + body: [ + .expression(.constant(true)) + ] + ) + ) + } + + func testContinueStatement() { + assert( + jsStmt: """ + continue; + """, + readsAs: .continue() + ) + } + + func testContinueStatement_labeled() { + assert( + jsStmt: """ + continue label; + """, + readsAs: .continue(targetLabel: "label") + ) + } + + func testBreakStatement() { + assert( + jsStmt: """ + break; + """, + readsAs: .break() + ) + } + + func testBreakStatement_labeled() { + assert( + jsStmt: """ + break label; + """, + readsAs: .break(targetLabel: "label") + ) + } + + func testReturnStatement() { + assert( + jsStmt: """ + return; + """, + readsAs: .return(nil) + ) + assert( + jsStmt: """ + return exp; + """, + readsAs: .return(.identifier("exp")) + ) + } + + func testLabeledStatement() { + assert( + jsStmt: """ + label: true; + """, + readsAs: .expression(.constant(true)).labeled("label") + ) + assert( + jsStmt: """ + label: if (true) { + } + """, + readsAs: .if(.constant(true), body: []).labeled("label") + ) + } + + func testSwitchStatement_empty() { + assert( + jsStmt: """ + switch (value) { + } + """, + readsAs: .switch( + .identifier("value"), + cases: [], + defaultStatements: [ + .break() + ] + ) + ) + } + + func testSwitchStatement_singleCase_empty() { + assert( + jsStmt: """ + switch (value) { + case 10: + } + """, + readsAs: .switch( + .identifier("value"), + cases: [ + .init( + patterns: [.expression(.constant(10))], + statements: [ + .fallthrough + ] + ) + ], + defaultStatements: [ + .break() + ] + ) + ) + } + + func testSwitchStatement_mergeEmptyCases() { + assert( + jsStmt: """ + switch (value) { + case 10: + case 20: + break + } + """, + readsAs: .switch( + .identifier("value"), + cases: [ + .init( + patterns: [.expression(.constant(10)), .expression(.constant(20))], + statements: [ + .break() + ] + ) + ], + defaultStatements: [ + .break() + ] + ) + ) + } + + func testSwitchStatement_mergeEmptyCases_fallthroughOnFinalEmptyCase() { + assert( + jsStmt: """ + switch (value) { + case 10: + case 20: + } + """, + readsAs: .switch( + .identifier("value"), + cases: [ + .init( + patterns: [.expression(.constant(10)), .expression(.constant(20))], + statements: [ + .fallthrough + ] + ) + ], + defaultStatements: [ + .break() + ] + ) + ) + } + + func testSwitch() { + assert( + jsStmt: "switch(value) { case 0: break; }", + readsAs: .switch( + .identifier("value"), + cases: [SwitchCase(patterns: [.expression(.constant(0))], statements: [.break()])], + defaultStatements: [.break()] + ) + ) + + assert( + jsStmt: "switch(value) { case 0: break; case 1: break; }", + readsAs: .switch( + .identifier("value"), + cases: [ + SwitchCase(patterns: [.expression(.constant(0))], statements: [.break()]), + SwitchCase(patterns: [.expression(.constant(1))], statements: [.break()]), + ], + defaultStatements: [.break()] + ) + ) + + assert( + jsStmt: "switch(value) { case 0: case 1: break; }", + readsAs: .switch( + .identifier("value"), + cases: [ + SwitchCase( + patterns: [.expression(.constant(0)), .expression(.constant(1))], + statements: [.break()] + ) + ], + defaultStatements: [.break()] + ) + ) + + assert( + jsStmt: "switch(value) { case 0: case 1: break; defaultStatements: stmt(); }", + readsAs: .switch( + .identifier("value"), + cases: [ + SwitchCase( + patterns: [ + .expression(.constant(0)), + .expression(.constant(1)), + ], + statements: [.break()] + ) + ], + defaultStatements: [ + .expression( + Expression.identifier("stmt").call() + ) + ] + ) + ) + } + + func testAutomaticSwitchFallthrough() { + assert( + jsStmt: "switch(value) { case 0: stmt(); case 1: break; }", + readsAs: .switch( + .identifier("value"), + cases: [ + SwitchCase( + patterns: [.expression(.constant(0))], + statements: [ + .expression(Expression.identifier("stmt").call()), + .fallthrough, + ] + ), + SwitchCase(patterns: [.expression(.constant(1))], statements: [.break()]), + ], + defaultStatements: [.break()] + ) + ) + } + + func testLocalFunctionStatement() { + assert( + jsStmt: """ + function f(a, b) { + return 0; + } + """, + readsAs: .localFunction( + identifier: "f", + parameters: [ + .init(label: nil, name: "a", type: .any), + .init(label: nil, name: "b", type: .any), + ], + returnType: .any, + body: [ + .return(.constant(0)) + ] + ) + ) + } + + func testThrowStatement() { + assert( + jsStmt: """ + throw new Error(); + """, + readsAs: .throw(.identifier("Error").call()) + ) + } + + func testReadComments() { + let expected = VariableDeclarationsStatement(decl: [ + .init(identifier: "local", type: .any) + ]).withComments([ + "// A comment" + ]) + + assert( + jsStmt: """ + // A comment + var local; + """, + readsAs: expected + ) + } + + func testReadComments_trailingComment() { + let expected = VariableDeclarationsStatement(decl: [ + .init(identifier: "local", type: .any) + ]).withTrailingComment( + "// A comment" + ) + + assert( + jsStmt: """ + var local; // A comment + """, + readsAs: expected + ) + } + + func testReadComments_emptyStatementBlockComments() { + let expected: CompoundStatement = [ + .if( + .constant(true), + body: .compound([ + + ]).withComments([ + "// A comment in an empty block" + ]) + ), + .variableDeclarations([ + .init(identifier: "local", type: .any) + ]).withComments([ + "// Another comment" + ]), + ] + + assert( + jsStmt: """ + { + if (true) { + // A comment in an empty block + } + + // Another comment + var local; + } + """, + readsAs: expected + ) + } + + func testReadComments_respectsBlockHierarchiesInExpressions() { + let expected: CompoundStatement = [ + .expression( + .identifier("call").call([ + .block( + return: .any, + body: [ + .expression( + .identifier("identifier") + ).withComments([ + "// Block comment" + ]) + ] + ) + ]) + ), + .variableDeclarations([ + .init(identifier: "local", type: .any) + ]).withComments([ + "// Another comment" + ]), + ] + + assert( + jsStmt: """ + { + call(function() { + // Block comment + identifier; + }) + + // Another comment + var local; + } + """, + readsAs: expected + ) + } + + func testReadComments_respectsBlockHierarchiesInInitializers() { + let expected: CompoundStatement = [ + .variableDeclaration( + identifier: "local1", + type: .any, + initialization: .identifier("call").call([ + .block( + return: .any, + body: [ + .expression( + .identifier("identifier") + ).withComments([ + "// Block comment" + ]), + ] + ) + ]) + ), + .variableDeclarations([ + .init(identifier: "local2", type: .any) + ]).withComments([ + "// Another comment" + ]), + ] + + assert( + jsStmt: """ + { + var local1 = call(function() { + // Block comment + identifier; + }) + + // Another comment + var local2; + } + """, + readsAs: expected + ) + } + + func testReadComments_emptyStatementBlockCommentsToLocalFunctions() { + let expected: CompoundStatement = [ + .localFunction( + identifier: "f", + parameters: [], + returnType: .any, + body: .compound([ + + ]).withComments([ + "// A comment in an function" + ]) + ), + .variableDeclarations([ + .init(identifier: "local", type: .any) + ]).withComments([ + "// Another comment" + ]), + ] + + assert( + jsStmt: """ + { + function f() { + // A comment in an function + } + + // Another comment + var local; + } + """, + readsAs: expected + ) + } +} + +extension JavaScriptStatementASTReaderTests { + + func assert( + jsStmt: String, + options: JavaScriptASTReaderOptions = .default, + parseWith: (JavaScriptParser) throws -> ParserRuleContext = { parser in + try parser.statement() + }, + readsAs expected: Statement, + file: StaticString = #filePath, + line: UInt = #line + ) { + let source = StringCodeSource(source: jsStmt, fileName: "test.js") + let typeSystem = TypeSystem() + + do { + let parser = JsParser(string: jsStmt) + try parser.parse() + + let state = try JavaScriptStatementASTReaderTests._state.makeMainParser(input: jsStmt) + tokens = state.tokens + + let expr = try parseWith(state.parser) + + let context = JavaScriptASTReaderContext( + source: source, + typeSystem: typeSystem, + typeContext: nil, + comments: parser.comments, + options: options + ) + + let expReader = JavaScriptExprASTReader( + context: context, + delegate: nil + ) + + let sut = JavaScriptStatementASTReader( + expressionReader: expReader, + context: context, + delegate: nil + ) + + let result = expr.accept(sut) + + if result != expected { + var expString = "" + var resString = "" + + expString = SwiftProducer.generateStatement(expected).description + "\n" + resString = (result.map({ SwiftProducer.generateStatement($0) })?.description ?? "") + "\n" + + XCTFail( + """ + Failed: Expected to read JavaScript statement + \(jsStmt) + as + + \(expString) + + but read as + + \(resString) + + """, + file: file, + line: line + ) + } + } + catch { + XCTFail( + "Unexpected error(s) parsing JavaScript: \(error)", + file: file, + line: line + ) + } + } + + private static var _state = JsParserState() +} diff --git a/Tests/Frontend/JavaScript/JavaScriptFrontendTests/TestUtils.swift b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/TestUtils.swift new file mode 100644 index 000000000..2f65239cf --- /dev/null +++ b/Tests/Frontend/JavaScript/JavaScriptFrontendTests/TestUtils.swift @@ -0,0 +1,23 @@ +import Intentions +import SwiftRewriterLib +import TypeSystem +import IntentionPasses +import XCTest + +// Helper method for constructing intention pass contexts for tests +func makeContext(intentions: IntentionCollection) -> IntentionPassContext { + let system = IntentionCollectionTypeSystem(intentions: intentions) + let invoker = DefaultTypeResolverInvoker( + globals: ArrayDefinitionsSource(), + typeSystem: system, + numThreads: 8 + ) + let typeMapper = DefaultTypeMapper(typeSystem: system) + + return IntentionPassContext( + typeSystem: system, + typeMapper: typeMapper, + typeResolverInvoker: invoker, + numThreads: 8 + ) +} diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ArrowFunctions.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ArrowFunctions.js new file mode 100644 index 000000000..0252f36f4 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ArrowFunctions.js @@ -0,0 +1,32 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Expression Bodies +// More expressive closure syntax. +// http://es6-features.org/#ExpressionBodies +//------------------------------------------------------------------------------ + +odds = evens.map(v => v + 1) +pairs = evens.map(v => ({ even: v, odd: v + 1 })) +nums = evens.map((v, i) => v + i) + +//------------------------------------------------------------------------------ +// Statement Bodies +// More expressive closure syntax. +// http://es6-features.org/#StatementBodies +//------------------------------------------------------------------------------ + +nums.forEach(v => { + if (v % 5 === 0) + fives.push(v) +}) + +//------------------------------------------------------------------------------ +// Lexical this +// More intuitive handling of current object context. +// http://es6-features.org/#Lexicalthis +//------------------------------------------------------------------------------ + +this.nums.forEach((v) => { + if (v % 5 === 0) + this.fives.push(v) +}) \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/AsyncAwait.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/AsyncAwait.js new file mode 100644 index 000000000..f41dd2035 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/AsyncAwait.js @@ -0,0 +1,16 @@ +async function f(){} + +class C { + async method(){} + static async method1(){} + async static #method2(){} + async *gen(){} + async get v(){return 1}; +} +async ()=>{}; + +async ()=>{await f();} +async ()=>{await promise;} +async ()=>{await 1;} + +async function* gen(){} \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ClassInNonGlobalStrict.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ClassInNonGlobalStrict.js new file mode 100644 index 000000000..258acfb3a --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ClassInNonGlobalStrict.js @@ -0,0 +1,5 @@ +// Check whether static members are parsed inside a class +// without explicit strict mode. +class ClassWithoutExplicitStrictMode { + static myStaticMethod() {} +} diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Classes.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Classes.js new file mode 100644 index 000000000..e89a30c2d --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Classes.js @@ -0,0 +1,202 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Class Definition +// More intuitive, OOP-style and boilerplate-free classes. +// http://es6-features.org/#ClassDefinition +//------------------------------------------------------------------------------ + +class Shape { + constructor (id, x, y) { + this.id = id + this.move(x, y) + } + move (x, y) { + this.x = x + this.y = y + } +} + +//------------------------------------------------------------------------------ +// Class Inheritance +// More intuitive, OOP-style and boilerplate-free inheritance. +// http://es6-features.org/#ClassInheritance +//------------------------------------------------------------------------------ + +class Rectangle extends Shape { + constructor (id, x, y, width, height) { + super(id, x, y) + this.width = width + this.height = height + } +} +class Circle extends Shape { + constructor (id, x, y, radius) { + super(id, x, y) + this.radius = radius + } +} + +//------------------------------------------------------------------------------ +// Class Inheritance, From Expressions +// Support for mixin-style inheritance by extending from expressions yielding +// function objects. [Notice: the generic aggregation function is usually +// provided by a library like this one, of course] +// http://es6-features.org/#ClassInheritanceFromExpressions +//------------------------------------------------------------------------------ + +var aggregation = (baseClass, ...mixins) => { + let base = class _Combined extends baseClass { + constructor (...args) { + super(...args) + mixins.forEach((mixin) => { + mixin.prototype.initializer.call(this) + }) + } + } + let copyProps = (target, source) => { + Object.getOwnPropertyNames(source) + .concat(Object.getOwnPropertySymbols(source)) + .forEach((prop) => { + if (prop.match(/^(?:constructor|prototype|arguments|caller|name|bind|call|apply|toString|length)$/)) + return + Object.defineProperty(target, prop, Object.getOwnPropertyDescriptor(source, prop)) + }) + } + mixins.forEach((mixin) => { + copyProps(base.prototype, mixin.prototype) + copyProps(base, mixin) + }) + return base +} + +class Colored { + initializer () { this._color = "white" } + get color () { return this._color } + set color (v) { this._color = v } +} + +class ZCoord { + initializer () { this._z = 0 } + get z () { return this._z } + set z (v) { this._z = v } +} + +class Shape { + constructor (x, y) { this._x = x; this._y = y } + get x () { return this._x } + set x (v) { this._x = v } + get y () { return this._y } + set y (v) { this._y = v } +} + +class Rectangle extends aggregation(Shape, Colored, ZCoord) {} + +var rect = new Rectangle(7, 42) +rect.z = 1000 +rect.color = "red" +console.log(rect.x, rect.y, rect.z, rect.color) + +//------------------------------------------------------------------------------ +// Base Class Access +// Intuitive access to base class constructor and methods. +// http://es6-features.org/#BaseClassAccess +//------------------------------------------------------------------------------ + +class Shape { + // … + toString () { + return `Shape(${this.id})` + } +} +class Rectangle extends Shape { + constructor (id, x, y, width, height) { + super(id, x, y) + // … + } + + toString () { + return "Rectangle > " + super.toString() + } +} +class Circle extends Shape { + constructor (id, x, y, radius) { + super(id, x, y) + // … + } + toString () { + return "Circle > " + super.toString() + } +} + +//------------------------------------------------------------------------------ +// Static Members +// Simple support for static class members. +// http://es6-features.org/#StaticMembers +//------------------------------------------------------------------------------ + +class Rectangle extends Shape { + // … + static contextTypes = { + router: PropTypes.object, + }; + + static defaultRectangle () { + return new Rectangle("default", 0, 0, 100, 100) + } +} +class Circle extends Shape { + // … + static defaultCircle () { + return new Circle("default", 0, 0, 100) + } +} +var defRectangle = Rectangle.defaultRectangle() +var defCircle = Circle.defaultCircle() + +//------------------------------------------------------------------------------ +// Getter/Setter +// Getter/Setter also directly within classes (and not just within object +// initializers, as it is possible since ECMAScript 5.1). +// http://es6-features.org/#GetterSetter +//------------------------------------------------------------------------------ + +class Rectangle { + constructor (width, height) { + this._width = width + this._height = height + } + set width (width) { this._width = width } + get width () { return this._width } + set height (height) { this._height = height } + get height () { return this._height } + get area () { return this._width * this._height } +} +var r = new Rectangle(50, 20) +r.area === 1000 + +//------------------------------------------------------------------------------ +// Class definition with empty statement +//------------------------------------------------------------------------------ +class A { + ; +} + +//// +class B { + get [runtimeCalc]() {return 1}; + set [runtimeCalc](p) {}; + get 'string as key'() {}; +} +// extended object +let Obj = { + [asdfg](a){}, + * foo () {}, + f(){}, + get a(){}, + set a([aa]=123){}, + ...anotherObj, + ...{ + speradObjectLiteral + }, + ...functionResult() +} diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Constants.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Constants.js new file mode 100644 index 000000000..90bf30acc --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Constants.js @@ -0,0 +1,20 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Support for constants (also known as "immutable variables"), i.e., +// variables which cannot be re-assigned new content. +// Notice: this only makes the variable itself immutable, +// not its assigned content (for instance, in case the content is an object, +// this means the object itself can still be altered). +//------------------------------------------------------------------------------ + +const PI = 3.141593 +PI > 3.0 + +var c = 10; +{ + const c = 2; // At this point, c = 2. +} // At this point, c = 10. + +const name = "Thomas Jefferson"; +const answer = 42, numpages = 10; +const myarray = new Array(); \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/DestructuringAssignment.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/DestructuringAssignment.js new file mode 100644 index 000000000..98282decb --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/DestructuringAssignment.js @@ -0,0 +1,70 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Array Matching +// Intuitive and flexible destructuring of Arrays into individual variables during assignment. +// http://es6-features.org/#ArrayMatching +//------------------------------------------------------------------------------ + +var list = [ 1, 2, 3 ] +var [ a, , b ] = list +[ b, a ] = [ a, b ] + +//------------------------------------------------------------------------------ +// Object Matching, Shorthand Notation +// Intuitive and flexible destructuring of Objects into individual variables during assignment. +// http://es6-features.org/#ObjectMatchingShorthandNotation +//------------------------------------------------------------------------------ + +var { op, lhs, rhs } = getASTNode() + +//------------------------------------------------------------------------------ +// Object Matching, Deep Matching +// Intuitive and flexible destructuring of Objects into individual variables during assignment. +// http://es6-features.org/#ObjectMatchingDeepMatching +//------------------------------------------------------------------------------ + +var { op: a, lhs: { op: b }, rhs: c } = getASTNode() + +//------------------------------------------------------------------------------ +// Object And Array Matching, Default Values +// Simple and intuitive default values for destructuring of Objects and Arrays. +// http://es6-features.org/#ObjectAndArrayMatchingDefaultValues +//------------------------------------------------------------------------------ + +var obj = { a: 1 } +var list = [ 1 ] +var { a, b = 2 } = obj +var [ x, y = 2 ] = list + +//------------------------------------------------------------------------------ +// Parameter Context Matching +// Intuitive and flexible destructuring of Arrays and Objects into individual +// parameters during function calls. +// http://es6-features.org/#ParameterContextMatching +//------------------------------------------------------------------------------ + +function f ([ name, val ]) { + console.log(name, val) +} +function g ({ name: n, val: v }) { + console.log(n, v) +} +function h ({ name, val }) { + console.log(name, val) +} +f([ "bar", 42 ]) +g({ name: "foo", val: 7 }) +h({ name: "bar", val: 42 }) + +//------------------------------------------------------------------------------ +// Fail-Soft Destructuring +// Fail-soft destructuring, optionally with defaults. +// http://es6-features.org/#FailSoftDestructuring +//------------------------------------------------------------------------------ + +var list = [ 7, 42 ] +var [ a = 1, b = 2, c = 3, d ] = list +a === 7 +b === 42 +c === 3 +d === undefined \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/EnhancedObjectProperties.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/EnhancedObjectProperties.js new file mode 100644 index 000000000..8520ed7b4 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/EnhancedObjectProperties.js @@ -0,0 +1,38 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Property Shorthand +// Shorter syntax for common object property definition idiom. +// http://es6-features.org/#PropertyShorthand +//------------------------------------------------------------------------------ + +obj = { x, y } + +//------------------------------------------------------------------------------ +// Computed Property Names +// Support for computed names in object property definitions. +// http://es6-features.org/#ComputedPropertyNames +//------------------------------------------------------------------------------ + +let obj = { + foo: "bar", + [ "baz" + quux() ]: 42 +} + +var obj = { + foo: "bar" +}; +obj[ "baz" + quux() ] = 42; + +//------------------------------------------------------------------------------ +// Method Properties +// Support for method notation in object property definitions, for both regular +// functions and generator functions. +// http://es6-features.org/#MethodProperties +//------------------------------------------------------------------------------ + +obj = { + foo (a, b) { + }, + *quux (x, y) { + } +} \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/EnhancedRegularExpression.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/EnhancedRegularExpression.js new file mode 100644 index 000000000..b29a76fd5 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/EnhancedRegularExpression.js @@ -0,0 +1,32 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Regular Expression Sticky Matching +// Keep the matching position sticky between matches and this way support +// efficient parsing of arbitrary long input strings, even with an arbitrary +// number of distinct regular expressions. +// http://es6-features.org/#RegularExpressionStickyMatching +//------------------------------------------------------------------------------ + +let parser = (input, match) => { + for (let pos = 0, lastPos = input.length; pos < lastPos; ) { + for (let i = 0; i < match.length; i++) { + match[i].pattern.lastIndex = pos + let found + if ((found = match[i].pattern.exec(input)) !== null) { + match[i].action(found) + pos = match[i].pattern.lastIndex + break + } + } + } +} + +let report = (match) => { + console.log(JSON.stringify(match)) +} +parser("Foo 1 Bar 7 Baz 42", [ + { pattern: /^Foo\s+(\d+)/y, action: (match) => report(match) }, + { pattern: /^Bar\s+(\d+)/y, action: (match) => report(match) }, + { pattern: /^Baz\s+(\d+)/y, action: (match) => report(match) }, + { pattern: /^\s*/y, action: (match) => {} } +]) \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ExtendedLiterals.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ExtendedLiterals.js new file mode 100644 index 000000000..446df4dbe --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ExtendedLiterals.js @@ -0,0 +1,22 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Binary & Octal Literal +// Direct support for safe binary and octal literals. +// http://es6-features.org/#BinaryOctalLiteral +//------------------------------------------------------------------------------ + +0b111110111 === 503 +0o767 === 503 + +//------------------------------------------------------------------------------ +// Unicode String & RegExp Literal +// Extended support using Unicode within strings and regular expressions. +// http://es6-features.org/#UnicodeStringRegExpLiteral +//------------------------------------------------------------------------------ + +"𠮷".length === 2 +"𠮷".match(/./u)[0].length === 2 +"𠮷" === "\uD842\uDFB7" +"𠮷" === "\u{20BB7}" +"𠮷".codePointAt(0) == 0x20BB7 +for (let codepoint of "𠮷") console.log(codepoint) \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ExtendedParameterHandling.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ExtendedParameterHandling.js new file mode 100644 index 000000000..a064f65e4 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ExtendedParameterHandling.js @@ -0,0 +1,40 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Default Parameter Values +// Simple and intuitive default values for function parameters. +// http://es6-features.org/#DefaultParameterValues +//------------------------------------------------------------------------------ + +function f (x, y = 7, z = 42) { + return x + y + z +} +f(1) === 50 + +//------------------------------------------------------------------------------ +// Rest Parameter +// Aggregation of remaining arguments into single parameter of variadic functions. +// http://es6-features.org/#RestParameter +//------------------------------------------------------------------------------ + +function f (x, y, ...a) { + return (x + y) * a.length +} +f(1, 2, "hello", true, 7) === 9 + +//------------------------------------------------------------------------------ +// Spread Operator +// Spreading of elements of an iterable collection (like an array or even a string) +// into both literal elements and individual function parameters. +// http://es6-features.org/#SpreadOperator +//------------------------------------------------------------------------------ + +var params = [ "hello", true, 7 ] +var other = [ 1, 2, ...params ] // [ 1, 2, "hello", true, 7 ] + +function f (x, y, ...a) { + return (x + y) * a.length +} +f(1, 2, ...params) === 9 + +var str = "foo" +var chars = [ ...str ] // [ "f", "o", "o" ] \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Function.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Function.js new file mode 100644 index 000000000..db4f931d5 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Function.js @@ -0,0 +1,6 @@ +f(); +f(a); +f(...a); +f(a,); +f(1,2,...[3]); +f(4,...a,...[b],); diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Generators.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Generators.js new file mode 100644 index 000000000..c963fb8bc --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Generators.js @@ -0,0 +1,141 @@ +"use strict"; + +//------------------------------------------------------------------------------ +// Generator Function, Iterator Protocol +// Support for generators, a special case of Iterators containing a generator +// function, where the control flow can be paused and resumed, in order to +// produce sequence of values (either finite or infinite). +// http://es6-features.org/#GeneratorFunctionIteratorProtocol +//------------------------------------------------------------------------------ + +let fibonacci = { + *[Symbol.iterator]() { + let pre = 0, cur = 1 + for (;;) { + [ pre, cur ] = [ cur, pre + cur ] + yield cur + } + } +} + +for (let n of fibonacci) { + if (n > 1000) + break + console.log(n) +} + +//------------------------------------------------------------------------------ +// Generator Function, Direct Use +// Support for generator functions, a special variant of functions where the +// control flow can be paused and resumed, in order to produce sequence of +// values (either finite or infinite). +// http://es6-features.org/#GeneratorFunctionDirectUse +//------------------------------------------------------------------------------ + +function* range (start, end, step) { + while (start < end) { + yield start + start += step + } +} + +for (let i of range(0, 10, 2)) { + console.log(i) // 0, 2, 4, 6, 8 +} + +//------------------------------------------------------------------------------ +// Generator Matching +// Support for generator functions, i.e., functions where the control flow can +// be paused and resumed, in order to produce and spread sequence of values +// (either finite or infinite). +// http://es6-features.org/#GeneratorMatching +//------------------------------------------------------------------------------ + +let fibonacci = function* (numbers) { + let pre = 0, cur = 1 + while (numbers-- > 0) { + [ pre, cur ] = [ cur, pre + cur ] + yield cur + } +} + +for (let n of fibonacci(1000)) + console.log(n) + +let numbers = [ ...fibonacci(1000) ] + +let [ n1, n2, n3, ...others ] = fibonacci(1000) + +//------------------------------------------------------------------------------ +// Generator Control-Flow +// Support for generators, a special case of Iterators where the control flow +// can be paused and resumed, in order to support asynchronous programming in +// the style of "co-routines" in combination with Promises (see below). +// [Notice: the generic async function usually is provided by a reusable +// library and given here just for better understanding. See co or Bluebird's +// coroutine in practice.] +// http://es6-features.org/#GeneratorControlFlow +//------------------------------------------------------------------------------ + +// async is a keyword now... +// generic asynchronous control-flow driver +function fasync (proc, ...params) { + var iterator = proc(...params) + return new Promise((resolve, reject) => { + let loop = (value) => { + let result + try { + result = iterator.next(value) + } + catch (err) { + reject(err) + } + if (result.done) + resolve(result.value) + else if ( typeof result.value === "object" + && typeof result.value.then === "function") + result.value.then((value) => { + loop(value) + }, (err) => { + reject(err) + }) + else + loop(result.value) + } + loop() + }) +} + +// application-specific asynchronous builder +function makeAsync (text, after) { + return new Promise((resolve, reject) => { + setTimeout(() => resolve(text), after) + }) +} + +// application-specific asynchronous procedure +fasync(function* (greeting) { + let foo = yield makeAsync("foo", 300) + let bar = yield makeAsync("bar", 200) + let baz = yield makeAsync("baz", 100) + return `${greeting} ${foo} ${bar} ${baz}` +}, "Hello").then((msg) => { + console.log("RESULT:", msg) // "Hello foo bar baz" +}) + +//------------------------------------------------------------------------------ +// Generator Methods +// Support for generator methods, i.e., methods in classes and on objects, based on generator functions. +// http://es6-features.org/#GeneratorMethods +//------------------------------------------------------------------------------ + +class Clz { + * bar () { + // … + } +} +let Obj = { + * foo () { + // … + } +} diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/InternationalizationAndLocalization.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/InternationalizationAndLocalization.js new file mode 100644 index 000000000..10b950edc --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/InternationalizationAndLocalization.js @@ -0,0 +1,52 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Collation +// Sorting a set of strings and searching within a set of strings. Collation is +// parameterized by locale and aware of Unicode. +// http://es6-features.org/#Collation +//------------------------------------------------------------------------------ + +// in German, "ä" sorts with "a" +// in Swedish, "ä" sorts after "z" +var list = [ "ä", "a", "z" ] +var l10nDE = new Intl.Collator("de") +var l10nSV = new Intl.Collator("sv") +l10nDE.compare("ä", "z") === -1 +l10nSV.compare("ä", "z") === +1 +console.log(list.sort(l10nDE.compare)) // [ "a", "ä", "z" ] +console.log(list.sort(l10nSV.compare)) // [ "a", "z", "ä" ] + +//------------------------------------------------------------------------------ +// Number Formatting +// Format numbers with digit grouping and localized separators. +// http://es6-features.org/#NumberFormatting +//------------------------------------------------------------------------------ + +var l10nEN = new Intl.NumberFormat("en-US") +var l10nDE = new Intl.NumberFormat("de-DE") +l10nEN.format(1234567.89) === "1,234,567.89" +l10nDE.format(1234567.89) === "1.234.567,89" + +//------------------------------------------------------------------------------ +// Currency Formatting +// Format numbers with digit grouping, localized separators and attached currency symbol. +// http://es6-features.org/#CurrencyFormatting +//------------------------------------------------------------------------------ + +var l10nUSD = new Intl.NumberFormat("en-US", { style: "currency", currency: "USD" }) +var l10nGBP = new Intl.NumberFormat("en-GB", { style: "currency", currency: "GBP" }) +var l10nEUR = new Intl.NumberFormat("de-DE", { style: "currency", currency: "EUR" }) +l10nUSD.format(100200300.40) === "$100,200,300.40" +l10nGBP.format(100200300.40) === "£100,200,300.40" +l10nEUR.format(100200300.40) === "100.200.300,40 €" + +//------------------------------------------------------------------------------ +// Date/Time Formatting +// Format date/time with localized ordering and separators. +// http://es6-features.org/#DateTimeFormatting +//------------------------------------------------------------------------------ + +var l10nEN = new Intl.DateTimeFormat("en-US") +var l10nDE = new Intl.DateTimeFormat("de-DE") +l10nEN.format(new Date("2015-01-02")) === "1/2/2015" +l10nDE.format(new Date("2015-01-02")) === "2.1.2015" \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Issue2178NewExpression.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Issue2178NewExpression.js new file mode 100644 index 000000000..a9c58a7f8 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Issue2178NewExpression.js @@ -0,0 +1,3 @@ +new Date +new Date() +Date() \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Iterators.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Iterators.js new file mode 100644 index 000000000..765feb713 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Iterators.js @@ -0,0 +1,25 @@ +"use strict"; + +//------------------------------------------------------------------------------ +// Iterator & For-Of Operator +// http://es6-features.org/#IteratorForOfOperator +// http://es6-features.org/#IteratorForOfOperator +//------------------------------------------------------------------------------ + +let fibonacci = { + [Symbol.iterator]() { + let pre = 0, cur = 1 + return { + next () { + [ pre, cur ] = [ cur, pre + cur ] + return { done: false, value: cur } + } + } + } +} + +for (let n of fibonacci) { + if (n > 1000) + break + console.log(n) +} diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/LetAndAsync.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/LetAndAsync.js new file mode 100644 index 000000000..aaf3e8d22 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/LetAndAsync.js @@ -0,0 +1,7 @@ +let foo = 123; +var let = 123; + +var async = 456; + +"use strict"; +var let = 123; \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/MapSetAndWeakMapWeakSet.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/MapSetAndWeakMapWeakSet.js new file mode 100644 index 000000000..cde628a27 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/MapSetAndWeakMapWeakSet.js @@ -0,0 +1,60 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Map/Set & WeakMap/WeakSet +// Cleaner data-structure for common algorithms based on sets. +// http://es6-features.org/#SetDataStructure +//------------------------------------------------------------------------------ + +let s = new Set() +s.add("hello").add("goodbye").add("hello") +s.size === 2 +s.has("hello") === true +for (let key of s.values()) // insertion order + console.log(key) + +//------------------------------------------------------------------------------ +// Map Data-Structure +// Cleaner data-structure for common algorithms based on maps. +// http://es6-features.org/#MapDataStructure +//------------------------------------------------------------------------------ + +let m = new Map() +let s = Symbol() +m.set("hello", 42) +m.set(s, 34) +m.get(s) === 34 +m.size === 2 +for (let [ key, val ] of m.entries()) + console.log(key + " = " + val) + +//------------------------------------------------------------------------------ +// Weak-Link Data-Structures +// Memory-leak-free Object-key’d side-by-side data-structures. +// http://es6-features.org/#WeakLinkDataStructures +//------------------------------------------------------------------------------ + +let isMarked = new WeakSet() +let attachedData = new WeakMap() + +export class Node { + constructor (id) { this.id = id } + mark () { isMarked.add(this) } + unmark () { isMarked.delete(this) } + marked () { return isMarked.has(this) } + set data (data) { attachedData.set(this, data) } + get data () { return attachedData.get(this) } +} + +let foo = new Node("foo") + +JSON.stringify(foo) === '{"id":"foo"}' +foo.mark() +foo.data = "bar" +foo.data === "bar" +JSON.stringify(foo) === '{"id":"foo"}' + +isMarked.has(foo) === true +attachedData.has(foo) === true +foo = null /* remove only reference to foo */ +attachedData.has(foo) === false +isMarked.has(foo) === false \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Meta-Programming.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Meta-Programming.js new file mode 100644 index 000000000..b4d739bde --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Meta-Programming.js @@ -0,0 +1,28 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Proxying +// Hooking into runtime-level object meta-operations. +// http://es6-features.org/#Proxying +//------------------------------------------------------------------------------ + +let target = { + foo: "Welcome, foo" +} +let proxy = new Proxy(target, { + get (receiver, name) { + return name in receiver ? receiver[name] : `Hello, ${name}` + } +}) +proxy.foo === "Welcome, foo" +proxy.world === "Hello, world" + +//------------------------------------------------------------------------------ +// Reflection +// Make calls corresponding to the object meta-operations. +// http://es6-features.org/#Reflection +//------------------------------------------------------------------------------ + +let obj = { a: 1 } +Object.defineProperty(obj, "b", { value: 2 }) +obj[Symbol("c")] = 3 +Reflect.ownKeys(obj) // [ "a", "b", Symbol(c) ] \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Misc.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Misc.js new file mode 100644 index 000000000..80a0562b5 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Misc.js @@ -0,0 +1,40 @@ +var e\u0065e; +var e\u{0065}e; // var eee; + +var Π; +// var 全世界无产者联合起来; //UTF8 +var \u4e00; + +0b0n; +12345n; +0x1234n; +12_123; +1.123_3456e-7_8 +0b0_1n; + +try {} +catch{} +finally{} + +try {} +finally{} + +2**3*5; + +async function process(array) { + for await (let i of array) { + doSomething(i); + } +} + +const {a, ...c} = obj; +const obj2 = { ...obj1, z: 26 ,...obj2}; +const [aa,b,...ca] = aarr; +const v = [asdf,...gh,jk]; +var f = [,,c,...a,b,,]; +var g = [,,]; // [undefined,undefined] + +function f([asdfg]=12345){} +/* TODO: +function async (proc, ...params) {} +var async = 1;*/ \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Modules.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Modules.js new file mode 100644 index 000000000..0c7c58947 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Modules.js @@ -0,0 +1,39 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Value Export/Import +// Support for exporting/importing values from/to modules without global namespace pollution. +// http://es6-features.org/#ValueExportImport +//------------------------------------------------------------------------------ + +// lib/math.js +export function sum (x, y) { return x + y } +export var pi = 3.141593 + +// someApp.js +import * as math from "lib/math" +console.log("2π = " + math.sum(math.pi, math.pi)) + +// otherApp.js +import { sum, pi } from "lib/math" +console.log("2π = " + sum(pi, pi)) + +//------------------------------------------------------------------------------ +// Default & Wildcard +// Marking a value as the default exported value and mass-mixin of values. +// http://es6-features.org/#DefaultWildcard +//------------------------------------------------------------------------------ + +// lib/mathplusplus.js +export * from "lib/math" +export var e = 2.71828182846 +export default (x) => Math.exp(x) + +// someApp.js +import exp, { pi, e } from "lib/mathplusplus" +console.log("e^{π} = " + exp(pi)) + +export {}; +import a,{aaa as bbb} from 'ccc'; +import('runtime_import'); + +import React from 'react'; \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/NewBuildInMethods.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/NewBuildInMethods.js new file mode 100644 index 000000000..4f354b33f --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/NewBuildInMethods.js @@ -0,0 +1,104 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Object Property Assignment +// New function for assigning enumerable properties of one or more source +// objects onto a destination object. +// http://es6-features.org/#ObjectPropertyAssignment +//------------------------------------------------------------------------------ + +var dest = { quux: 0 } +var src1 = { foo: 1, bar: 2 } +var src2 = { foo: 3, baz: 4 } +Object.assign(dest, src1, src2) +dest.quux === 0 +dest.foo === 3 +dest.bar === 2 +dest.baz === 4 + +//------------------------------------------------------------------------------ +// Array Element Finding +// New function for finding an element in an array. +// http://es6-features.org/#ArrayElementFinding +//------------------------------------------------------------------------------ + +[ 1, 3, 4, 2 ].find(x => x > 3) // 4 +[ 1, 3, 4, 2 ].findIndex(x => x > 3) // 2 + +//------------------------------------------------------------------------------ +// String Repeating +// New string repeating functionality. +// http://es6-features.org/#StringRepeating +//------------------------------------------------------------------------------ + +" ".repeat(4 * depth) +"foo".repeat(3) + +//------------------------------------------------------------------------------ +// String Searching +// New specific string functions to search for a sub-string. +// http://es6-features.org/#StringSearching +//------------------------------------------------------------------------------ + +"hello".startsWith("ello", 1) // true +"hello".endsWith("hell", 4) // true +"hello".includes("ell") // true +"hello".includes("ell", 1) // true +"hello".includes("ell", 2) // false + +//------------------------------------------------------------------------------ +// Number Type Checking +// New functions for checking for non-numbers and finite numbers. +// http://es6-features.org/#NumberTypeChecking +//------------------------------------------------------------------------------ + +Number.isNaN(42) === false +Number.isNaN(NaN) === true + +Number.isFinite(Infinity) === false +Number.isFinite(-Infinity) === false +Number.isFinite(NaN) === false +Number.isFinite(123) === true + +//------------------------------------------------------------------------------ +// Number Safety Checking +// Checking whether an integer number is in the safe range, i.e., it is correctly +// represented by JavaScript (where all numbers, including integer numbers, +// are technically floating point number). +// http://es6-features.org/#NumberSafetyChecking +//------------------------------------------------------------------------------ + +Number.isSafeInteger(42) === true +Number.isSafeInteger(9007199254740992) === false + +//------------------------------------------------------------------------------ +// Number Comparison +// Availability of a standard Epsilon value for more precise comparison of +// floating point numbers. +// http://es6-features.org/#NumberComparison +//------------------------------------------------------------------------------ + +console.log(0.1 + 0.2 === 0.3) // false +console.log(Math.abs((0.1 + 0.2) - 0.3) < Number.EPSILON) // true + +//------------------------------------------------------------------------------ +// Number Truncation +// Truncate a floating point number to its integral part, completely dropping +// the fractional part. +// http://es6-features.org/#NumberTruncation +//------------------------------------------------------------------------------ + +console.log(Math.trunc(42.7)) // 42 +console.log(Math.trunc( 0.1)) // 0 +console.log(Math.trunc(-0.1)) // -0 + +//------------------------------------------------------------------------------ +// Number Sign Determination +// Determine the sign of a number, including special cases of signed zero and non-number. +// http://es6-features.org/#NumberSignDetermination +//------------------------------------------------------------------------------ + +console.log(Math.sign(7)) // 1 +console.log(Math.sign(0)) // 0 +console.log(Math.sign(-0)) // -0 +console.log(Math.sign(-7)) // -1 +console.log(Math.sign(NaN)) // NaN \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ObjectInitializer.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ObjectInitializer.js new file mode 100644 index 000000000..99c4ce980 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/ObjectInitializer.js @@ -0,0 +1,12 @@ +"use strict"; + +//------------------------------------------------------------------------------ +// Object Literal +// Initialization syntax for object literals +// https://262.ecma-international.org/11.0/#prod-ObjectLiteral +//------------------------------------------------------------------------------ + +obj = { }; +obj = { item1: "item1", item2: "item2" }; +obj = { item1: "item1", item2: "item2", }; + diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Outdated.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Outdated.js new file mode 100644 index 000000000..223a1f2d1 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Outdated.js @@ -0,0 +1,11 @@ +//------------------------------------------------------------------------------ +// Html Comment +//------------------------------------------------------------------------------ + + + +//------------------------------------------------------------------------------ +// CDATA Section +//------------------------------------------------------------------------------ + + \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Promises.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Promises.js new file mode 100644 index 000000000..29799d778 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Promises.js @@ -0,0 +1,44 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Promise Usage +// First class representation of a value that may be made asynchronously and +// be available in the future. +// http://es6-features.org/#PromiseUsage +//------------------------------------------------------------------------------ + +function msgAfterTimeout (msg, who, timeout) { + return new Promise((resolve, reject) => { + setTimeout(() => resolve(`${msg} Hello ${who}!`), timeout) + }) +} +msgAfterTimeout("", "Foo", 100).then((msg) => + msgAfterTimeout(msg, "Bar", 200) +).then((msg) => { + console.log(`done after 300ms:${msg}`) +}) + +//------------------------------------------------------------------------------ +// Promise Combination +// Combine one or more promises into new promises without having to take care +// of ordering of the underlying asynchronous operations yourself. +// http://es6-features.org/#PromiseCombination +//------------------------------------------------------------------------------ + +function fetchAsync (url, timeout, onData, onError) { + // … +} +let fetchPromised = (url, timeout) => { + return new Promise((resolve, reject) => { + fetchAsync(url, timeout, resolve, reject) + }) +} +Promise.all([ + fetchPromised("http://backend/foo.txt", 500), + fetchPromised("http://backend/bar.txt", 500), + fetchPromised("http://backend/baz.txt", 500) +]).then((data) => { + let [ foo, bar, baz ] = data + console.log(`success: foo=${foo} bar=${bar} baz=${baz}`) +}, (err) => { + console.log(`error: ${err}`) +}) \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Scoping.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Scoping.js new file mode 100644 index 000000000..394ef6f95 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Scoping.js @@ -0,0 +1,34 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Block-Scoped Variables +// Block-scoped variables (and constants) without hoisting. +// http://es6-features.org/#BlockScopedVariables +//------------------------------------------------------------------------------ + +for (let i = 0; i < a.length; i++) { + let x = a[i] +} +for (let i = 0; i < b.length; i++) { + let y = b[i] +} + +let callbacks = [] +for (let i = 0; i <= 2; i++) { + callbacks[i] = function () { return i * 2 } +} +callbacks[0]() === 0 +callbacks[1]() === 2 +callbacks[2]() === 4 + +//------------------------------------------------------------------------------ +// Block-Scoped Functions +// Block-scoped function definitions. +// http://es6-features.org/#BlockScopedFunctions +//------------------------------------------------------------------------------ + +function foo () { return 1 } +foo() === 1 +{ + function foo () { return 2 } + foo() === 2 +} diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Stage3.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Stage3.js new file mode 100644 index 000000000..4f0bc3e36 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/Stage3.js @@ -0,0 +1,17 @@ +#! /usr/bin/env node +// class field proposal, stage3 (2019/11/03) +class CF { + #x = 12345; + y = id; + #priv_method(){ + this.#x++; + } + async * #method() { + } + #priv_var = 9961; + +} + +var a = b??c; +var d = e?.f?.g; +var h = i?.j(); \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/StrictFunctions.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/StrictFunctions.js new file mode 100644 index 000000000..0537f9512 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/StrictFunctions.js @@ -0,0 +1,17 @@ +function strict() { + /* comment */ + // comment + // comment + 'use strict'; + function nested() + { + let a = 4; // strict, "let" is not an identifier. + return 'And so am I!'; + } + return "Hi! I'm a strict mode function! " + nested(); +} + +function notStrict() { + var let = 0; // not strict, no error. + return "I'm not strict."; +} \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/StrictGlobal.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/StrictGlobal.js new file mode 100644 index 000000000..be7c65372 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/StrictGlobal.js @@ -0,0 +1,3 @@ +// comment before use strict +"use strict"; +let a = 42; \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/SymbolType.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/SymbolType.js new file mode 100644 index 000000000..87ead77e1 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/SymbolType.js @@ -0,0 +1,42 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Symbol Type +// Unique and immutable data type to be used as an identifier for object +// properties. Symbol can have an optional description, but for debugging +// purposes only. +// http://es6-features.org/#SymbolType +//------------------------------------------------------------------------------ + +Symbol("foo") !== Symbol("foo") +const foo = Symbol() +const bar = Symbol() +typeof foo === "symbol" +typeof bar === "symbol" +let obj = {} +obj[foo] = "foo" +obj[bar] = "bar" +JSON.stringify(obj) // {} +Object.keys(obj) // [] +Object.getOwnPropertyNames(obj) // [] +Object.getOwnPropertySymbols(obj) // [ foo, bar ] + +//------------------------------------------------------------------------------ +// Global Symbols +// Global symbols, indexed through unique keys. +// http://es6-features.org/#GlobalSymbols +//------------------------------------------------------------------------------ + +Symbol.for("app.foo") === Symbol.for("app.foo") +const foo = Symbol.for("app.foo") +const bar = Symbol.for("app.bar") +Symbol.keyFor(foo) === "app.foo" +Symbol.keyFor(bar) === "app.bar" +typeof foo === "symbol" +typeof bar === "symbol" +let obj = {} +obj[foo] = "foo" +obj[bar] = "bar" +JSON.stringify(obj) // {} +Object.keys(obj) // [] +Object.getOwnPropertyNames(obj) // [] +Object.getOwnPropertySymbols(obj) // [ foo, bar ] \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/TemplateLiterals.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/TemplateLiterals.js new file mode 100644 index 000000000..0e0e3e5d9 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/TemplateLiterals.js @@ -0,0 +1,40 @@ +"use strict"; +// TODO: implement interpolation expressions parsing. +//------------------------------------------------------------------------------ +// String Interpolation +// Intuitive expression interpolation for single-line and multi-line strings. +// (Notice: don't be confused, Template Literals were originally named +// "Template Strings" in the drafts of the ECMAScript 6 language specification) +// http://es6-features.org/#StringInterpolation +//------------------------------------------------------------------------------ + +var customer = { name: "Foo" } +var card = { amount: 7, product: "Bar", unitprice: 42 } +var message = `Hello ${customer.name}, +want to buy ${card.amount} ${card.product} for +a total of ${card.amount * card.unitprice} bucks?` + +//------------------------------------------------------------------------------ +// Custom Interpolation +// Flexible expression interpolation for arbitrary methods. +// http://es6-features.org/#CustomInterpolation +//------------------------------------------------------------------------------ + +get`http://example.com/foo?bar=${bar + baz}&quux=${quux}` + +//------------------------------------------------------------------------------ +// Raw String Access +// Access the raw template string content (backslashes are not interpreted). +// http://es6-features.org/#RawStringAccess +//------------------------------------------------------------------------------ + +function quux (strings, ...values) { + strings[0] === "foo\n" + strings[1] === "bar" + strings.raw[0] === "foo\\n" + strings.raw[1] === "bar" + values[0] === 42 +} +quux `foo\n${ 42 }bar` + +String.raw `foo\n${ 42 }bar` === "foo\\n42bar" \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/TemplateStrings.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/TemplateStrings.js new file mode 100644 index 000000000..4dda85128 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/TemplateStrings.js @@ -0,0 +1,13 @@ +var empty = ``; + +var simple = `foobar`; + +var lineBreak = ` +`; + +var nested = `aaa${`bbb`}ccc`; + +// https://stackoverflow.com/questions/67618203/antlr4-parsing-templateliteral-in-jsx/67632704?noredirect=1#comment119548351_67632704 +let str = + `${dsName}${parameterStr ? `( ${parameterStr} )` : ""}${returns ? `{ +${returns}}` : ""}`; \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/TypedArrays.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/TypedArrays.js new file mode 100644 index 000000000..747f34b91 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/TypedArrays.js @@ -0,0 +1,33 @@ +"use strict"; +//------------------------------------------------------------------------------ +// Typed Arrays +// Support for arbitrary byte-based data structures to implement network protocols, +// cryptography algorithms, file format manipulations, etc. +// http://es6-features.org/#TypedArrays +//------------------------------------------------------------------------------ + +// ES6 class equivalent to the following C structure: +// struct Example { unsigned long id; char username[16]; float amountDue } +class Example { + constructor (buffer = new ArrayBuffer(24)) { + this.buffer = buffer + } + set buffer (buffer) { + this._buffer = buffer + this._id = new Uint32Array (this._buffer, 0, 1) + this._username = new Uint8Array (this._buffer, 4, 16) + this._amountDue = new Float32Array(this._buffer, 20, 1) + } + get buffer () { return this._buffer } + set id (v) { this._id[0] = v } + get id () { return this._id[0] } + set username (v) { this._username[0] = v } + get username () { return this._username[0] } + set amountDue (v) { this._amountDue[0] = v } + get amountDue () { return this._amountDue[0] } +} + +let example = new Example() +example.id = 7 +example.username = "John Doe" +example.amountDue = 42.0 \ No newline at end of file diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/bezier.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/bezier.js new file mode 100644 index 000000000..f0ed14333 --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/bezier.js @@ -0,0 +1,955 @@ +/** + A javascript Bezier curve library by Pomax. + + Based on http://pomax.github.io/bezierinfo + + This code is MIT licensed. + + https://github.com/Pomax/bezierjs +**/ + +import { utils } from "./utils.js"; +import { PolyBezier } from "./poly-bezier.js"; + +// math-inlining. +const { abs, min, max, cos, sin, acos, sqrt } = Math; +const pi = Math.PI; +// a zero coordinate, which is surprisingly useful +const ZERO = { x: 0, y: 0, z: 0 }; + +/** + * Bezier curve constructor. + * + * ...docs pending... + */ +class Bezier { + constructor(coords) { + let args = + coords && coords.forEach ? coords : Array.from(arguments).slice(); + let coordlen = false; + + if (typeof args[0] === "object") { + coordlen = args.length; + const newargs = []; + args.forEach(function (point) { + ["x", "y", "z"].forEach(function (d) { + if (typeof point[d] !== "undefined") { + newargs.push(point[d]); + } + }); + }); + args = newargs; + } + + let higher = false; + const len = args.length; + + if (coordlen) { + if (coordlen > 4) { + if (arguments.length !== 1) { + throw new Error( + "Only new Bezier(point[]) is accepted for 4th and higher order curves" + ); + } + higher = true; + } + } else { + if (len !== 6 && len !== 8 && len !== 9 && len !== 12) { + if (arguments.length !== 1) { + throw new Error( + "Only new Bezier(point[]) is accepted for 4th and higher order curves" + ); + } + } + } + + const _3d = (this._3d = + (!higher && (len === 9 || len === 12)) || + (coords && coords[0] && typeof coords[0].z !== "undefined")); + + const points = (this.points = []); + for (let idx = 0, step = _3d ? 3 : 2; idx < len; idx += step) { + var point = { + x: args[idx], + y: args[idx + 1], + }; + if (_3d) { + point.z = args[idx + 2]; + } + points.push(point); + } + const order = (this.order = points.length - 1); + + const dims = (this.dims = ["x", "y"]); + if (_3d) dims.push("z"); + this.dimlen = dims.length; + + const aligned = utils.align(points, { p1: points[0], p2: points[order] }); + this._linear = !aligned.some((p) => abs(p.y) > 0.0001); + + this._lut = []; + + this._t1 = 0; + this._t2 = 1; + this.update(); + } + + static quadraticFromPoints(p1, p2, p3, t) { + if (typeof t === "undefined") { + t = 0.5; + } + // shortcuts, although they're really dumb + if (t === 0) { + return new Bezier(p2, p2, p3); + } + if (t === 1) { + return new Bezier(p1, p2, p2); + } + // real fitting. + const abc = Bezier.getABC(2, p1, p2, p3, t); + return new Bezier(p1, abc.A, p3); + } + + static cubicFromPoints(S, B, E, t, d1) { + if (typeof t === "undefined") { + t = 0.5; + } + const abc = Bezier.getABC(3, S, B, E, t); + if (typeof d1 === "undefined") { + d1 = utils.dist(B, abc.C); + } + const d2 = (d1 * (1 - t)) / t; + + const selen = utils.dist(S, E), + lx = (E.x - S.x) / selen, + ly = (E.y - S.y) / selen, + bx1 = d1 * lx, + by1 = d1 * ly, + bx2 = d2 * lx, + by2 = d2 * ly; + // derivation of new hull coordinates + const e1 = { x: B.x - bx1, y: B.y - by1 }, + e2 = { x: B.x + bx2, y: B.y + by2 }, + A = abc.A, + v1 = { x: A.x + (e1.x - A.x) / (1 - t), y: A.y + (e1.y - A.y) / (1 - t) }, + v2 = { x: A.x + (e2.x - A.x) / t, y: A.y + (e2.y - A.y) / t }, + nc1 = { x: S.x + (v1.x - S.x) / t, y: S.y + (v1.y - S.y) / t }, + nc2 = { + x: E.x + (v2.x - E.x) / (1 - t), + y: E.y + (v2.y - E.y) / (1 - t), + }; + // ...done + return new Bezier(S, nc1, nc2, E); + } + + static getUtils() { + return utils; + } + + getUtils() { + return Bezier.getUtils(); + } + + static get PolyBezier() { + return PolyBezier; + } + + valueOf() { + return this.toString(); + } + + toString() { + return utils.pointsToString(this.points); + } + + toSVG() { + if (this._3d) return false; + const p = this.points, + x = p[0].x, + y = p[0].y, + s = ["M", x, y, this.order === 2 ? "Q" : "C"]; + for (let i = 1, last = p.length; i < last; i++) { + s.push(p[i].x); + s.push(p[i].y); + } + return s.join(" "); + } + + setRatios(ratios) { + if (ratios.length !== this.points.length) { + throw new Error("incorrect number of ratio values"); + } + this.ratios = ratios; + this._lut = []; // invalidate any precomputed LUT + } + + verify() { + const print = this.coordDigest(); + if (print !== this._print) { + this._print = print; + this.update(); + } + } + + coordDigest() { + return this.points + .map(function (c, pos) { + return "" + pos + c.x + c.y + (c.z ? c.z : 0); + }) + .join(""); + } + + update() { + // invalidate any precomputed LUT + this._lut = []; + this.dpoints = utils.derive(this.points, this._3d); + this.computedirection(); + } + + computedirection() { + const points = this.points; + const angle = utils.angle(points[0], points[this.order], points[1]); + this.clockwise = angle > 0; + } + + length() { + return utils.length(this.derivative.bind(this)); + } + + static getABC(order = 2, S, B, E, t = 0.5) { + const u = utils.projectionratio(t, order), + um = 1 - u, + C = { + x: u * S.x + um * E.x, + y: u * S.y + um * E.y, + }, + s = utils.abcratio(t, order), + A = { + x: B.x + (B.x - C.x) / s, + y: B.y + (B.y - C.y) / s, + }; + return { A, B, C, S, E }; + } + + getABC(t, B) { + B = B || this.get(t); + let S = this.points[0]; + let E = this.points[this.order]; + return Bezier.getABC(this.order, S, B, E, t); + } + + getLUT(steps) { + this.verify(); + steps = steps || 100; + if (this._lut.length === steps) { + return this._lut; + } + this._lut = []; + // We want a range from 0 to 1 inclusive, so + // we decrement and then use <= rather than <: + steps--; + for (let i = 0, p, t; i < steps; i++) { + t = i / (steps - 1); + p = this.compute(t); + p.t = t; + this._lut.push(p); + } + return this._lut; + } + + on(point, error) { + error = error || 5; + const lut = this.getLUT(), + hits = []; + for (let i = 0, c, t = 0; i < lut.length; i++) { + c = lut[i]; + if (utils.dist(c, point) < error) { + hits.push(c); + t += i / lut.length; + } + } + if (!hits.length) return false; + return (t /= hits.length); + } + + project(point) { + // step 1: coarse check + const LUT = this.getLUT(), + l = LUT.length - 1, + closest = utils.closest(LUT, point), + mpos = closest.mpos, + t1 = (mpos - 1) / l, + t2 = (mpos + 1) / l, + step = 0.1 / l; + + // step 2: fine check + let mdist = closest.mdist, + t = t1, + ft = t, + p; + mdist += 1; + for (let d; t < t2 + step; t += step) { + p = this.compute(t); + d = utils.dist(point, p); + if (d < mdist) { + mdist = d; + ft = t; + } + } + ft = ft < 0 ? 0 : ft > 1 ? 1 : ft; + p = this.compute(ft); + p.t = ft; + p.d = mdist; + return p; + } + + get(t) { + return this.compute(t); + } + + point(idx) { + return this.points[idx]; + } + + compute(t) { + if (this.ratios) { + return utils.computeWithRatios(t, this.points, this.ratios, this._3d); + } + return utils.compute(t, this.points, this._3d, this.ratios); + } + + raise() { + const p = this.points, + np = [p[0]], + k = p.length; + for (let i = 1, pi, pim; i < k; i++) { + pi = p[i]; + pim = p[i - 1]; + np[i] = { + x: ((k - i) / k) * pi.x + (i / k) * pim.x, + y: ((k - i) / k) * pi.y + (i / k) * pim.y, + }; + } + np[k] = p[k - 1]; + return new Bezier(np); + } + + derivative(t) { + return utils.compute(t, this.dpoints[0], this._3d); + } + + dderivative(t) { + return utils.compute(t, this.dpoints[1], this._3d); + } + + align() { + let p = this.points; + return new Bezier(utils.align(p, { p1: p[0], p2: p[p.length - 1] })); + } + + curvature(t) { + return utils.curvature(t, this.dpoints[0], this.dpoints[1], this._3d); + } + + inflections() { + return utils.inflections(this.points); + } + + normal(t) { + return this._3d ? this.__normal3(t) : this.__normal2(t); + } + + __normal2(t) { + const d = this.derivative(t); + const q = sqrt(d.x * d.x + d.y * d.y); + return { x: -d.y / q, y: d.x / q }; + } + + __normal3(t) { + // see http://stackoverflow.com/questions/25453159 + const r1 = this.derivative(t), + r2 = this.derivative(t + 0.01), + q1 = sqrt(r1.x * r1.x + r1.y * r1.y + r1.z * r1.z), + q2 = sqrt(r2.x * r2.x + r2.y * r2.y + r2.z * r2.z); + r1.x /= q1; + r1.y /= q1; + r1.z /= q1; + r2.x /= q2; + r2.y /= q2; + r2.z /= q2; + // cross product + const c = { + x: r2.y * r1.z - r2.z * r1.y, + y: r2.z * r1.x - r2.x * r1.z, + z: r2.x * r1.y - r2.y * r1.x, + }; + const m = sqrt(c.x * c.x + c.y * c.y + c.z * c.z); + c.x /= m; + c.y /= m; + c.z /= m; + // rotation matrix + const R = [ + c.x * c.x, + c.x * c.y - c.z, + c.x * c.z + c.y, + c.x * c.y + c.z, + c.y * c.y, + c.y * c.z - c.x, + c.x * c.z - c.y, + c.y * c.z + c.x, + c.z * c.z, + ]; + // normal vector: + const n = { + x: R[0] * r1.x + R[1] * r1.y + R[2] * r1.z, + y: R[3] * r1.x + R[4] * r1.y + R[5] * r1.z, + z: R[6] * r1.x + R[7] * r1.y + R[8] * r1.z, + }; + return n; + } + + hull(t) { + let p = this.points, + _p = [], + q = [], + idx = 0; + q[idx++] = p[0]; + q[idx++] = p[1]; + q[idx++] = p[2]; + if (this.order === 3) { + q[idx++] = p[3]; + } + // we lerp between all points at each iteration, until we have 1 point left. + while (p.length > 1) { + _p = []; + for (let i = 0, pt, l = p.length - 1; i < l; i++) { + pt = utils.lerp(t, p[i], p[i + 1]); + q[idx++] = pt; + _p.push(pt); + } + p = _p; + } + return q; + } + + split(t1, t2) { + // shortcuts + if (t1 === 0 && !!t2) { + return this.split(t2).left; + } + if (t2 === 1) { + return this.split(t1).right; + } + + // no shortcut: use "de Casteljau" iteration. + const q = this.hull(t1); + const result = { + left: + this.order === 2 + ? new Bezier([q[0], q[3], q[5]]) + : new Bezier([q[0], q[4], q[7], q[9]]), + right: + this.order === 2 + ? new Bezier([q[5], q[4], q[2]]) + : new Bezier([q[9], q[8], q[6], q[3]]), + span: q, + }; + + // make sure we bind _t1/_t2 information! + result.left._t1 = utils.map(0, 0, 1, this._t1, this._t2); + result.left._t2 = utils.map(t1, 0, 1, this._t1, this._t2); + result.right._t1 = utils.map(t1, 0, 1, this._t1, this._t2); + result.right._t2 = utils.map(1, 0, 1, this._t1, this._t2); + + // if we have no t2, we're done + if (!t2) { + return result; + } + + // if we have a t2, split again: + t2 = utils.map(t2, t1, 1, 0, 1); + return result.right.split(t2).left; + } + + extrema() { + const result = {}; + let roots = []; + + this.dims.forEach( + function (dim) { + let mfn = function (v) { + return v[dim]; + }; + let p = this.dpoints[0].map(mfn); + result[dim] = utils.droots(p); + if (this.order === 3) { + p = this.dpoints[1].map(mfn); + result[dim] = result[dim].concat(utils.droots(p)); + } + result[dim] = result[dim].filter(function (t) { + return t >= 0 && t <= 1; + }); + roots = roots.concat(result[dim].sort(utils.numberSort)); + }.bind(this) + ); + + result.values = roots.sort(utils.numberSort).filter(function (v, idx) { + return roots.indexOf(v) === idx; + }); + + return result; + } + + bbox() { + const extrema = this.extrema(), + result = {}; + this.dims.forEach( + function (d) { + result[d] = utils.getminmax(this, d, extrema[d]); + }.bind(this) + ); + return result; + } + + overlaps(curve) { + const lbbox = this.bbox(), + tbbox = curve.bbox(); + return utils.bboxoverlap(lbbox, tbbox); + } + + offset(t, d) { + if (typeof d !== "undefined") { + const c = this.get(t), + n = this.normal(t); + const ret = { + c: c, + n: n, + x: c.x + n.x * d, + y: c.y + n.y * d, + }; + if (this._3d) { + ret.z = c.z + n.z * d; + } + return ret; + } + if (this._linear) { + const nv = this.normal(0), + coords = this.points.map(function (p) { + const ret = { + x: p.x + t * nv.x, + y: p.y + t * nv.y, + }; + if (p.z && nv.z) { + ret.z = p.z + t * nv.z; + } + return ret; + }); + return [new Bezier(coords)]; + } + return this.reduce().map(function (s) { + if (s._linear) { + return s.offset(t)[0]; + } + return s.scale(t); + }); + } + + simple() { + if (this.order === 3) { + const a1 = utils.angle(this.points[0], this.points[3], this.points[1]); + const a2 = utils.angle(this.points[0], this.points[3], this.points[2]); + if ((a1 > 0 && a2 < 0) || (a1 < 0 && a2 > 0)) return false; + } + const n1 = this.normal(0); + const n2 = this.normal(1); + let s = n1.x * n2.x + n1.y * n2.y; + if (this._3d) { + s += n1.z * n2.z; + } + return abs(acos(s)) < pi / 3; + } + + reduce() { + // TODO: examine these var types in more detail... + let i, + t1 = 0, + t2 = 0, + step = 0.01, + segment, + pass1 = [], + pass2 = []; + // first pass: split on extrema + let extrema = this.extrema().values; + if (extrema.indexOf(0) === -1) { + extrema = [0].concat(extrema); + } + if (extrema.indexOf(1) === -1) { + extrema.push(1); + } + + for (t1 = extrema[0], i = 1; i < extrema.length; i++) { + t2 = extrema[i]; + segment = this.split(t1, t2); + segment._t1 = t1; + segment._t2 = t2; + pass1.push(segment); + t1 = t2; + } + + // second pass: further reduce these segments to simple segments + pass1.forEach(function (p1) { + t1 = 0; + t2 = 0; + while (t2 <= 1) { + for (t2 = t1 + step; t2 <= 1 + step; t2 += step) { + segment = p1.split(t1, t2); + if (!segment.simple()) { + t2 -= step; + if (abs(t1 - t2) < step) { + // we can never form a reduction + return []; + } + segment = p1.split(t1, t2); + segment._t1 = utils.map(t1, 0, 1, p1._t1, p1._t2); + segment._t2 = utils.map(t2, 0, 1, p1._t1, p1._t2); + pass2.push(segment); + t1 = t2; + break; + } + } + } + if (t1 < 1) { + segment = p1.split(t1, 1); + segment._t1 = utils.map(t1, 0, 1, p1._t1, p1._t2); + segment._t2 = p1._t2; + pass2.push(segment); + } + }); + return pass2; + } + + scale(d) { + const order = this.order; + let distanceFn = false; + if (typeof d === "function") { + distanceFn = d; + } + if (distanceFn && order === 2) { + return this.raise().scale(distanceFn); + } + + // TODO: add special handling for degenerate (=linear) curves. + const clockwise = this.clockwise; + const r1 = distanceFn ? distanceFn(0) : d; + const r2 = distanceFn ? distanceFn(1) : d; + const v = [this.offset(0, 10), this.offset(1, 10)]; + const points = this.points; + const np = []; + const o = utils.lli4(v[0], v[0].c, v[1], v[1].c); + + if (!o) { + throw new Error("cannot scale this curve. Try reducing it first."); + } + // move all points by distance 'd' wrt the origin 'o' + + // move end points by fixed distance along normal. + [0, 1].forEach(function (t) { + const p = (np[t * order] = utils.copy(points[t * order])); + p.x += (t ? r2 : r1) * v[t].n.x; + p.y += (t ? r2 : r1) * v[t].n.y; + }); + + if (!distanceFn) { + // move control points to lie on the intersection of the offset + // derivative vector, and the origin-through-control vector + [0, 1].forEach((t) => { + if (order === 2 && !!t) return; + const p = np[t * order]; + const d = this.derivative(t); + const p2 = { x: p.x + d.x, y: p.y + d.y }; + np[t + 1] = utils.lli4(p, p2, o, points[t + 1]); + }); + return new Bezier(np); + } + + // move control points by "however much necessary to + // ensure the correct tangent to endpoint". + [0, 1].forEach(function (t) { + if (order === 2 && !!t) return; + var p = points[t + 1]; + var ov = { + x: p.x - o.x, + y: p.y - o.y, + }; + var rc = distanceFn ? distanceFn((t + 1) / order) : d; + if (distanceFn && !clockwise) rc = -rc; + var m = sqrt(ov.x * ov.x + ov.y * ov.y); + ov.x /= m; + ov.y /= m; + np[t + 1] = { + x: p.x + rc * ov.x, + y: p.y + rc * ov.y, + }; + }); + return new Bezier(np); + } + + outline(d1, d2, d3, d4) { + d2 = typeof d2 === "undefined" ? d1 : d2; + const reduced = this.reduce(), + len = reduced.length, + fcurves = []; + + let bcurves = [], + p, + alen = 0, + tlen = this.length(); + + const graduated = typeof d3 !== "undefined" && typeof d4 !== "undefined"; + + function linearDistanceFunction(s, e, tlen, alen, slen) { + return function (v) { + const f1 = alen / tlen, + f2 = (alen + slen) / tlen, + d = e - s; + return utils.map(v, 0, 1, s + f1 * d, s + f2 * d); + }; + } + + // form curve oulines + reduced.forEach(function (segment) { + const slen = segment.length(); + if (graduated) { + fcurves.push( + segment.scale(linearDistanceFunction(d1, d3, tlen, alen, slen)) + ); + bcurves.push( + segment.scale(linearDistanceFunction(-d2, -d4, tlen, alen, slen)) + ); + } else { + fcurves.push(segment.scale(d1)); + bcurves.push(segment.scale(-d2)); + } + alen += slen; + }); + + // reverse the "return" outline + bcurves = bcurves + .map(function (s) { + p = s.points; + if (p[3]) { + s.points = [p[3], p[2], p[1], p[0]]; + } else { + s.points = [p[2], p[1], p[0]]; + } + return s; + }) + .reverse(); + + // form the endcaps as lines + const fs = fcurves[0].points[0], + fe = fcurves[len - 1].points[fcurves[len - 1].points.length - 1], + bs = bcurves[len - 1].points[bcurves[len - 1].points.length - 1], + be = bcurves[0].points[0], + ls = utils.makeline(bs, fs), + le = utils.makeline(fe, be), + segments = [ls].concat(fcurves).concat([le]).concat(bcurves), + slen = segments.length; + + return new PolyBezier(segments); + } + + outlineshapes(d1, d2, curveIntersectionThreshold) { + d2 = d2 || d1; + const outline = this.outline(d1, d2).curves; + const shapes = []; + for (let i = 1, len = outline.length; i < len / 2; i++) { + const shape = utils.makeshape( + outline[i], + outline[len - i], + curveIntersectionThreshold + ); + shape.startcap.virtual = i > 1; + shape.endcap.virtual = i < len / 2 - 1; + shapes.push(shape); + } + return shapes; + } + + intersects(curve, curveIntersectionThreshold) { + if (!curve) return this.selfintersects(curveIntersectionThreshold); + if (curve.p1 && curve.p2) { + return this.lineIntersects(curve); + } + if (curve instanceof Bezier) { + curve = curve.reduce(); + } + return this.curveintersects( + this.reduce(), + curve, + curveIntersectionThreshold + ); + } + + lineIntersects(line) { + const mx = min(line.p1.x, line.p2.x), + my = min(line.p1.y, line.p2.y), + MX = max(line.p1.x, line.p2.x), + MY = max(line.p1.y, line.p2.y); + return utils.roots(this.points, line).filter((t) => { + var p = this.get(t); + return utils.between(p.x, mx, MX) && utils.between(p.y, my, MY); + }); + } + + selfintersects(curveIntersectionThreshold) { + // "simple" curves cannot intersect with their direct + // neighbour, so for each segment X we check whether + // it intersects [0:x-2][x+2:last]. + + const reduced = this.reduce(), + len = reduced.length - 2, + results = []; + + for (let i = 0, result, left, right; i < len; i++) { + left = reduced.slice(i, i + 1); + right = reduced.slice(i + 2); + result = this.curveintersects(left, right, curveIntersectionThreshold); + results.push(...result); + } + return results; + } + + curveintersects(c1, c2, curveIntersectionThreshold) { + const pairs = []; + // step 1: pair off any overlapping segments + c1.forEach(function (l) { + c2.forEach(function (r) { + if (l.overlaps(r)) { + pairs.push({ left: l, right: r }); + } + }); + }); + // step 2: for each pairing, run through the convergence algorithm. + let intersections = []; + pairs.forEach(function (pair) { + const result = utils.pairiteration( + pair.left, + pair.right, + curveIntersectionThreshold + ); + if (result.length > 0) { + intersections = intersections.concat(result); + } + }); + return intersections; + } + + arcs(errorThreshold) { + errorThreshold = errorThreshold || 0.5; + return this._iterate(errorThreshold, []); + } + + _error(pc, np1, s, e) { + const q = (e - s) / 4, + c1 = this.get(s + q), + c2 = this.get(e - q), + ref = utils.dist(pc, np1), + d1 = utils.dist(pc, c1), + d2 = utils.dist(pc, c2); + return abs(d1 - ref) + abs(d2 - ref); + } + + _iterate(errorThreshold, circles) { + let t_s = 0, + t_e = 1, + safety; + // we do a binary search to find the "good `t` closest to no-longer-good" + do { + safety = 0; + + // step 1: start with the maximum possible arc + t_e = 1; + + // points: + let np1 = this.get(t_s), + np2, + np3, + arc, + prev_arc; + + // booleans: + let curr_good = false, + prev_good = false, + done; + + // numbers: + let t_m = t_e, + prev_e = 1, + step = 0; + + // step 2: find the best possible arc + do { + prev_good = curr_good; + prev_arc = arc; + t_m = (t_s + t_e) / 2; + step++; + + np2 = this.get(t_m); + np3 = this.get(t_e); + + arc = utils.getccenter(np1, np2, np3); + + //also save the t values + arc.interval = { + start: t_s, + end: t_e, + }; + + let error = this._error(arc, np1, t_s, t_e); + curr_good = error <= errorThreshold; + + done = prev_good && !curr_good; + if (!done) prev_e = t_e; + + // this arc is fine: we can move 'e' up to see if we can find a wider arc + if (curr_good) { + // if e is already at max, then we're done for this arc. + if (t_e >= 1) { + // make sure we cap at t=1 + arc.interval.end = prev_e = 1; + prev_arc = arc; + // if we capped the arc segment to t=1 we also need to make sure that + // the arc's end angle is correct with respect to the bezier end point. + if (t_e > 1) { + let d = { + x: arc.x + arc.r * cos(arc.e), + y: arc.y + arc.r * sin(arc.e), + }; + arc.e += utils.angle({ x: arc.x, y: arc.y }, d, this.get(1)); + } + break; + } + // if not, move it up by half the iteration distance + t_e = t_e + (t_e - t_s) / 2; + } else { + // this is a bad arc: we need to move 'e' down to find a good arc + t_e = t_m; + } + } while (!done && safety++ < 100); + + if (safety >= 100) { + break; + } + + // console.log("L835: [F] arc found", t_s, prev_e, prev_arc.x, prev_arc.y, prev_arc.s, prev_arc.e); + + prev_arc = prev_arc ? prev_arc : arc; + circles.push(prev_arc); + t_s = prev_e; + } while (t_e < 1); + return circles; + } +} + +export { Bezier }; diff --git a/Tests/Frontend/JavaScript/JsParserTests/Fixtures/utils.js b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/utils.js new file mode 100644 index 000000000..fd45ad89f --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Fixtures/utils.js @@ -0,0 +1,913 @@ +import { Bezier } from "./bezier.js"; + +// math-inlining. +const { abs, cos, sin, acos, atan2, sqrt, pow } = Math; + +// cube root function yielding real roots +function crt(v) { + return v < 0 ? -pow(-v, 1 / 3) : pow(v, 1 / 3); +} + +// trig constants +const pi = Math.PI, + tau = 2 * pi, + quart = pi / 2, + // float precision significant decimal + epsilon = 0.000001, + // extremas used in bbox calculation and similar algorithms + nMax = Number.MAX_SAFE_INTEGER || 9007199254740991, + nMin = Number.MIN_SAFE_INTEGER || -9007199254740991, + // a zero coordinate, which is surprisingly useful + ZERO = { x: 0, y: 0, z: 0 }; + +// Bezier utility functions +const utils = { + // Legendre-Gauss abscissae with n=24 (x_i values, defined at i=n as the roots of the nth order Legendre polynomial Pn(x)) + Tvalues: [ + -0.0640568928626056260850430826247450385909, + 0.0640568928626056260850430826247450385909, + -0.1911188674736163091586398207570696318404, + 0.1911188674736163091586398207570696318404, + -0.3150426796961633743867932913198102407864, + 0.3150426796961633743867932913198102407864, + -0.4337935076260451384870842319133497124524, + 0.4337935076260451384870842319133497124524, + -0.5454214713888395356583756172183723700107, + 0.5454214713888395356583756172183723700107, + -0.6480936519369755692524957869107476266696, + 0.6480936519369755692524957869107476266696, + -0.7401241915785543642438281030999784255232, + 0.7401241915785543642438281030999784255232, + -0.8200019859739029219539498726697452080761, + 0.8200019859739029219539498726697452080761, + -0.8864155270044010342131543419821967550873, + 0.8864155270044010342131543419821967550873, + -0.9382745520027327585236490017087214496548, + 0.9382745520027327585236490017087214496548, + -0.9747285559713094981983919930081690617411, + 0.9747285559713094981983919930081690617411, + -0.9951872199970213601799974097007368118745, + 0.9951872199970213601799974097007368118745, + ], + + // Legendre-Gauss weights with n=24 (w_i values, defined by a function linked to in the Bezier primer article) + Cvalues: [ + 0.1279381953467521569740561652246953718517, + 0.1279381953467521569740561652246953718517, + 0.1258374563468282961213753825111836887264, + 0.1258374563468282961213753825111836887264, + 0.121670472927803391204463153476262425607, + 0.121670472927803391204463153476262425607, + 0.1155056680537256013533444839067835598622, + 0.1155056680537256013533444839067835598622, + 0.1074442701159656347825773424466062227946, + 0.1074442701159656347825773424466062227946, + 0.0976186521041138882698806644642471544279, + 0.0976186521041138882698806644642471544279, + 0.086190161531953275917185202983742667185, + 0.086190161531953275917185202983742667185, + 0.0733464814110803057340336152531165181193, + 0.0733464814110803057340336152531165181193, + 0.0592985849154367807463677585001085845412, + 0.0592985849154367807463677585001085845412, + 0.0442774388174198061686027482113382288593, + 0.0442774388174198061686027482113382288593, + 0.0285313886289336631813078159518782864491, + 0.0285313886289336631813078159518782864491, + 0.0123412297999871995468056670700372915759, + 0.0123412297999871995468056670700372915759, + ], + + arcfn: function (t, derivativeFn) { + const d = derivativeFn(t); + let l = d.x * d.x + d.y * d.y; + if (typeof d.z !== "undefined") { + l += d.z * d.z; + } + return sqrt(l); + }, + + compute: function (t, points, _3d) { + // shortcuts + if (t === 0) { + points[0].t = 0; + return points[0]; + } + + const order = points.length - 1; + + if (t === 1) { + points[order].t = 1; + return points[order]; + } + + const mt = 1 - t; + let p = points; + + // constant? + if (order === 0) { + points[0].t = t; + return points[0]; + } + + // linear? + if (order === 1) { + const ret = { + x: mt * p[0].x + t * p[1].x, + y: mt * p[0].y + t * p[1].y, + t: t, + }; + if (_3d) { + ret.z = mt * p[0].z + t * p[1].z; + } + return ret; + } + + // quadratic/cubic curve? + if (order < 4) { + let mt2 = mt * mt, + t2 = t * t, + a, + b, + c, + d = 0; + if (order === 2) { + p = [p[0], p[1], p[2], ZERO]; + a = mt2; + b = mt * t * 2; + c = t2; + } else if (order === 3) { + a = mt2 * mt; + b = mt2 * t * 3; + c = mt * t2 * 3; + d = t * t2; + } + const ret = { + x: a * p[0].x + b * p[1].x + c * p[2].x + d * p[3].x, + y: a * p[0].y + b * p[1].y + c * p[2].y + d * p[3].y, + t: t, + }; + if (_3d) { + ret.z = a * p[0].z + b * p[1].z + c * p[2].z + d * p[3].z; + } + return ret; + } + + // higher order curves: use de Casteljau's computation + const dCpts = JSON.parse(JSON.stringify(points)); + while (dCpts.length > 1) { + for (let i = 0; i < dCpts.length - 1; i++) { + dCpts[i] = { + x: dCpts[i].x + (dCpts[i + 1].x - dCpts[i].x) * t, + y: dCpts[i].y + (dCpts[i + 1].y - dCpts[i].y) * t, + }; + if (typeof dCpts[i].z !== "undefined") { + dCpts[i] = dCpts[i].z + (dCpts[i + 1].z - dCpts[i].z) * t; + } + } + dCpts.splice(dCpts.length - 1, 1); + } + dCpts[0].t = t; + return dCpts[0]; + }, + + computeWithRatios: function (t, points, ratios, _3d) { + const mt = 1 - t, + r = ratios, + p = points; + + let f1 = r[0], + f2 = r[1], + f3 = r[2], + f4 = r[3], + d; + + // spec for linear + f1 *= mt; + f2 *= t; + + if (p.length === 2) { + d = f1 + f2; + return { + x: (f1 * p[0].x + f2 * p[1].x) / d, + y: (f1 * p[0].y + f2 * p[1].y) / d, + z: !_3d ? false : (f1 * p[0].z + f2 * p[1].z) / d, + t: t, + }; + } + + // upgrade to quadratic + f1 *= mt; + f2 *= 2 * mt; + f3 *= t * t; + + if (p.length === 3) { + d = f1 + f2 + f3; + return { + x: (f1 * p[0].x + f2 * p[1].x + f3 * p[2].x) / d, + y: (f1 * p[0].y + f2 * p[1].y + f3 * p[2].y) / d, + z: !_3d ? false : (f1 * p[0].z + f2 * p[1].z + f3 * p[2].z) / d, + t: t, + }; + } + + // upgrade to cubic + f1 *= mt; + f2 *= 1.5 * mt; + f3 *= 3 * mt; + f4 *= t * t * t; + + if (p.length === 4) { + d = f1 + f2 + f3 + f4; + return { + x: (f1 * p[0].x + f2 * p[1].x + f3 * p[2].x + f4 * p[3].x) / d, + y: (f1 * p[0].y + f2 * p[1].y + f3 * p[2].y + f4 * p[3].y) / d, + z: !_3d + ? false + : (f1 * p[0].z + f2 * p[1].z + f3 * p[2].z + f4 * p[3].z) / d, + t: t, + }; + } + }, + + derive: function (points, _3d) { + const dpoints = []; + for (let p = points, d = p.length, c = d - 1; d > 1; d--, c--) { + const list = []; + for (let j = 0, dpt; j < c; j++) { + dpt = { + x: c * (p[j + 1].x - p[j].x), + y: c * (p[j + 1].y - p[j].y), + }; + if (_3d) { + dpt.z = c * (p[j + 1].z - p[j].z); + } + list.push(dpt); + } + dpoints.push(list); + p = list; + } + return dpoints; + }, + + between: function (v, m, M) { + return ( + (m <= v && v <= M) || + utils.approximately(v, m) || + utils.approximately(v, M) + ); + }, + + approximately: function (a, b, precision) { + return abs(a - b) <= (precision || epsilon); + }, + + length: function (derivativeFn) { + const z = 0.5, + len = utils.Tvalues.length; + + let sum = 0; + + for (let i = 0, t; i < len; i++) { + t = z * utils.Tvalues[i] + z; + sum += utils.Cvalues[i] * utils.arcfn(t, derivativeFn); + } + return z * sum; + }, + + map: function (v, ds, de, ts, te) { + const d1 = de - ds, + d2 = te - ts, + v2 = v - ds, + r = v2 / d1; + return ts + d2 * r; + }, + + lerp: function (r, v1, v2) { + const ret = { + x: v1.x + r * (v2.x - v1.x), + y: v1.y + r * (v2.y - v1.y), + }; + if (v1.z !== undefined && v2.z !== undefined) { + ret.z = v1.z + r * (v2.z - v1.z); + } + return ret; + }, + + pointToString: function (p) { + let s = p.x + "/" + p.y; + if (typeof p.z !== "undefined") { + s += "/" + p.z; + } + return s; + }, + + pointsToString: function (points) { + return "[" + points.map(utils.pointToString).join(", ") + "]"; + }, + + copy: function (obj) { + return JSON.parse(JSON.stringify(obj)); + }, + + angle: function (o, v1, v2) { + const dx1 = v1.x - o.x, + dy1 = v1.y - o.y, + dx2 = v2.x - o.x, + dy2 = v2.y - o.y, + cross = dx1 * dy2 - dy1 * dx2, + dot = dx1 * dx2 + dy1 * dy2; + return atan2(cross, dot); + }, + + // round as string, to avoid rounding errors + round: function (v, d) { + const s = "" + v; + const pos = s.indexOf("."); + return parseFloat(s.substring(0, pos + 1 + d)); + }, + + dist: function (p1, p2) { + const dx = p1.x - p2.x, + dy = p1.y - p2.y; + return sqrt(dx * dx + dy * dy); + }, + + closest: function (LUT, point) { + let mdist = pow(2, 63), + mpos, + d; + LUT.forEach(function (p, idx) { + d = utils.dist(point, p); + if (d < mdist) { + mdist = d; + mpos = idx; + } + }); + return { mdist: mdist, mpos: mpos }; + }, + + abcratio: function (t, n) { + // see ratio(t) note on http://pomax.github.io/bezierinfo/#abc + if (n !== 2 && n !== 3) { + return false; + } + if (typeof t === "undefined") { + t = 0.5; + } else if (t === 0 || t === 1) { + return t; + } + const bottom = pow(t, n) + pow(1 - t, n), + top = bottom - 1; + return abs(top / bottom); + }, + + projectionratio: function (t, n) { + // see u(t) note on http://pomax.github.io/bezierinfo/#abc + if (n !== 2 && n !== 3) { + return false; + } + if (typeof t === "undefined") { + t = 0.5; + } else if (t === 0 || t === 1) { + return t; + } + const top = pow(1 - t, n), + bottom = pow(t, n) + top; + return top / bottom; + }, + + lli8: function (x1, y1, x2, y2, x3, y3, x4, y4) { + const nx = + (x1 * y2 - y1 * x2) * (x3 - x4) - (x1 - x2) * (x3 * y4 - y3 * x4), + ny = (x1 * y2 - y1 * x2) * (y3 - y4) - (y1 - y2) * (x3 * y4 - y3 * x4), + d = (x1 - x2) * (y3 - y4) - (y1 - y2) * (x3 - x4); + if (d == 0) { + return false; + } + return { x: nx / d, y: ny / d }; + }, + + lli4: function (p1, p2, p3, p4) { + const x1 = p1.x, + y1 = p1.y, + x2 = p2.x, + y2 = p2.y, + x3 = p3.x, + y3 = p3.y, + x4 = p4.x, + y4 = p4.y; + return utils.lli8(x1, y1, x2, y2, x3, y3, x4, y4); + }, + + lli: function (v1, v2) { + return utils.lli4(v1, v1.c, v2, v2.c); + }, + + makeline: function (p1, p2) { + const x1 = p1.x, + y1 = p1.y, + x2 = p2.x, + y2 = p2.y, + dx = (x2 - x1) / 3, + dy = (y2 - y1) / 3; + return new Bezier( + x1, + y1, + x1 + dx, + y1 + dy, + x1 + 2 * dx, + y1 + 2 * dy, + x2, + y2 + ); + }, + + findbbox: function (sections) { + let mx = nMax, + my = nMax, + MX = nMin, + MY = nMin; + sections.forEach(function (s) { + const bbox = s.bbox(); + if (mx > bbox.x.min) mx = bbox.x.min; + if (my > bbox.y.min) my = bbox.y.min; + if (MX < bbox.x.max) MX = bbox.x.max; + if (MY < bbox.y.max) MY = bbox.y.max; + }); + return { + x: { min: mx, mid: (mx + MX) / 2, max: MX, size: MX - mx }, + y: { min: my, mid: (my + MY) / 2, max: MY, size: MY - my }, + }; + }, + + shapeintersections: function ( + s1, + bbox1, + s2, + bbox2, + curveIntersectionThreshold + ) { + if (!utils.bboxoverlap(bbox1, bbox2)) return []; + const intersections = []; + const a1 = [s1.startcap, s1.forward, s1.back, s1.endcap]; + const a2 = [s2.startcap, s2.forward, s2.back, s2.endcap]; + a1.forEach(function (l1) { + if (l1.virtual) return; + a2.forEach(function (l2) { + if (l2.virtual) return; + const iss = l1.intersects(l2, curveIntersectionThreshold); + if (iss.length > 0) { + iss.c1 = l1; + iss.c2 = l2; + iss.s1 = s1; + iss.s2 = s2; + intersections.push(iss); + } + }); + }); + return intersections; + }, + + makeshape: function (forward, back, curveIntersectionThreshold) { + const bpl = back.points.length; + const fpl = forward.points.length; + const start = utils.makeline(back.points[bpl - 1], forward.points[0]); + const end = utils.makeline(forward.points[fpl - 1], back.points[0]); + const shape = { + startcap: start, + forward: forward, + back: back, + endcap: end, + bbox: utils.findbbox([start, forward, back, end]), + }; + shape.intersections = function (s2) { + return utils.shapeintersections( + shape, + shape.bbox, + s2, + s2.bbox, + curveIntersectionThreshold + ); + }; + return shape; + }, + + getminmax: function (curve, d, list) { + if (!list) return { min: 0, max: 0 }; + let min = nMax, + max = nMin, + t, + c; + if (list.indexOf(0) === -1) { + list = [0].concat(list); + } + if (list.indexOf(1) === -1) { + list.push(1); + } + for (let i = 0, len = list.length; i < len; i++) { + t = list[i]; + c = curve.get(t); + if (c[d] < min) { + min = c[d]; + } + if (c[d] > max) { + max = c[d]; + } + } + return { min: min, mid: (min + max) / 2, max: max, size: max - min }; + }, + + align: function (points, line) { + const tx = line.p1.x, + ty = line.p1.y, + a = -atan2(line.p2.y - ty, line.p2.x - tx), + d = function (v) { + return { + x: (v.x - tx) * cos(a) - (v.y - ty) * sin(a), + y: (v.x - tx) * sin(a) + (v.y - ty) * cos(a), + }; + }; + return points.map(d); + }, + + roots: function (points, line) { + line = line || { p1: { x: 0, y: 0 }, p2: { x: 1, y: 0 } }; + + const order = points.length - 1; + const aligned = utils.align(points, line); + const reduce = function (t) { + return 0 <= t && t <= 1; + }; + + if (order === 2) { + const a = aligned[0].y, + b = aligned[1].y, + c = aligned[2].y, + d = a - 2 * b + c; + if (d !== 0) { + const m1 = -sqrt(b * b - a * c), + m2 = -a + b, + v1 = -(m1 + m2) / d, + v2 = -(-m1 + m2) / d; + return [v1, v2].filter(reduce); + } else if (b !== c && d === 0) { + return [(2 * b - c) / (2 * b - 2 * c)].filter(reduce); + } + return []; + } + + // see http://www.trans4mind.com/personal_development/mathematics/polynomials/cubicAlgebra.htm + const pa = aligned[0].y, + pb = aligned[1].y, + pc = aligned[2].y, + pd = aligned[3].y; + + let d = -pa + 3 * pb - 3 * pc + pd, + a = 3 * pa - 6 * pb + 3 * pc, + b = -3 * pa + 3 * pb, + c = pa; + + if (utils.approximately(d, 0)) { + // this is not a cubic curve. + if (utils.approximately(a, 0)) { + // in fact, this is not a quadratic curve either. + if (utils.approximately(b, 0)) { + // in fact in fact, there are no solutions. + return []; + } + // linear solution: + return [-c / b].filter(reduce); + } + // quadratic solution: + const q = sqrt(b * b - 4 * a * c), + a2 = 2 * a; + return [(q - b) / a2, (-b - q) / a2].filter(reduce); + } + + // at this point, we know we need a cubic solution: + + a /= d; + b /= d; + c /= d; + + const p = (3 * b - a * a) / 3, + p3 = p / 3, + q = (2 * a * a * a - 9 * a * b + 27 * c) / 27, + q2 = q / 2, + discriminant = q2 * q2 + p3 * p3 * p3; + + let u1, v1, x1, x2, x3; + if (discriminant < 0) { + const mp3 = -p / 3, + mp33 = mp3 * mp3 * mp3, + r = sqrt(mp33), + t = -q / (2 * r), + cosphi = t < -1 ? -1 : t > 1 ? 1 : t, + phi = acos(cosphi), + crtr = crt(r), + t1 = 2 * crtr; + x1 = t1 * cos(phi / 3) - a / 3; + x2 = t1 * cos((phi + tau) / 3) - a / 3; + x3 = t1 * cos((phi + 2 * tau) / 3) - a / 3; + return [x1, x2, x3].filter(reduce); + } else if (discriminant === 0) { + u1 = q2 < 0 ? crt(-q2) : -crt(q2); + x1 = 2 * u1 - a / 3; + x2 = -u1 - a / 3; + return [x1, x2].filter(reduce); + } else { + const sd = sqrt(discriminant); + u1 = crt(-q2 + sd); + v1 = crt(q2 + sd); + return [u1 - v1 - a / 3].filter(reduce); + } + }, + + droots: function (p) { + // quadratic roots are easy + if (p.length === 3) { + const a = p[0], + b = p[1], + c = p[2], + d = a - 2 * b + c; + if (d !== 0) { + const m1 = -sqrt(b * b - a * c), + m2 = -a + b, + v1 = -(m1 + m2) / d, + v2 = -(-m1 + m2) / d; + return [v1, v2]; + } else if (b !== c && d === 0) { + return [(2 * b - c) / (2 * (b - c))]; + } + return []; + } + + // linear roots are even easier + if (p.length === 2) { + const a = p[0], + b = p[1]; + if (a !== b) { + return [a / (a - b)]; + } + return []; + } + + return []; + }, + + curvature: function (t, d1, d2, _3d, kOnly) { + let num, + dnm, + adk, + dk, + k = 0, + r = 0; + + // + // We're using the following formula for curvature: + // + // x'y" - y'x" + // k(t) = ------------------ + // (x'² + y'²)^(3/2) + // + // from https://en.wikipedia.org/wiki/Radius_of_curvature#Definition + // + // With it corresponding 3D counterpart: + // + // sqrt( (y'z" - y"z')² + (z'x" - z"x')² + (x'y" - x"y')²) + // k(t) = ------------------------------------------------------- + // (x'² + y'² + z'²)^(3/2) + // + + const d = utils.compute(t, d1); + const dd = utils.compute(t, d2); + const qdsum = d.x * d.x + d.y * d.y; + + if (_3d) { + num = sqrt( + pow(d.y * dd.z - dd.y * d.z, 2) + + pow(d.z * dd.x - dd.z * d.x, 2) + + pow(d.x * dd.y - dd.x * d.y, 2) + ); + dnm = pow(qdsum + d.z * d.z, 3 / 2); + } else { + num = d.x * dd.y - d.y * dd.x; + dnm = pow(qdsum, 3 / 2); + } + + if (num === 0 || dnm === 0) { + return { k: 0, r: 0 }; + } + + k = num / dnm; + r = dnm / num; + + // We're also computing the derivative of kappa, because + // there is value in knowing the rate of change for the + // curvature along the curve. And we're just going to + // ballpark it based on an epsilon. + if (!kOnly) { + // compute k'(t) based on the interval before, and after it, + // to at least try to not introduce forward/backward pass bias. + const pk = utils.curvature(t - 0.001, d1, d2, _3d, true).k; + const nk = utils.curvature(t + 0.001, d1, d2, _3d, true).k; + dk = (nk - k + (k - pk)) / 2; + adk = (abs(nk - k) + abs(k - pk)) / 2; + } + + return { k: k, r: r, dk: dk, adk: adk }; + }, + + inflections: function (points) { + if (points.length < 4) return []; + + // FIXME: TODO: add in inflection abstraction for quartic+ curves? + + const p = utils.align(points, { p1: points[0], p2: points.slice(-1)[0] }), + a = p[2].x * p[1].y, + b = p[3].x * p[1].y, + c = p[1].x * p[2].y, + d = p[3].x * p[2].y, + v1 = 18 * (-3 * a + 2 * b + 3 * c - d), + v2 = 18 * (3 * a - b - 3 * c), + v3 = 18 * (c - a); + + if (utils.approximately(v1, 0)) { + if (!utils.approximately(v2, 0)) { + let t = -v3 / v2; + if (0 <= t && t <= 1) return [t]; + } + return []; + } + + const trm = v2 * v2 - 4 * v1 * v3, + sq = Math.sqrt(trm), + d2 = 2 * v1; + + if (utils.approximately(d2, 0)) return []; + + return [(sq - v2) / d2, -(v2 + sq) / d2].filter(function (r) { + return 0 <= r && r <= 1; + }); + }, + + bboxoverlap: function (b1, b2) { + const dims = ["x", "y"], + len = dims.length; + + for (let i = 0, dim, l, t, d; i < len; i++) { + dim = dims[i]; + l = b1[dim].mid; + t = b2[dim].mid; + d = (b1[dim].size + b2[dim].size) / 2; + if (abs(l - t) >= d) return false; + } + return true; + }, + + expandbox: function (bbox, _bbox) { + if (_bbox.x.min < bbox.x.min) { + bbox.x.min = _bbox.x.min; + } + if (_bbox.y.min < bbox.y.min) { + bbox.y.min = _bbox.y.min; + } + if (_bbox.z && _bbox.z.min < bbox.z.min) { + bbox.z.min = _bbox.z.min; + } + if (_bbox.x.max > bbox.x.max) { + bbox.x.max = _bbox.x.max; + } + if (_bbox.y.max > bbox.y.max) { + bbox.y.max = _bbox.y.max; + } + if (_bbox.z && _bbox.z.max > bbox.z.max) { + bbox.z.max = _bbox.z.max; + } + bbox.x.mid = (bbox.x.min + bbox.x.max) / 2; + bbox.y.mid = (bbox.y.min + bbox.y.max) / 2; + if (bbox.z) { + bbox.z.mid = (bbox.z.min + bbox.z.max) / 2; + } + bbox.x.size = bbox.x.max - bbox.x.min; + bbox.y.size = bbox.y.max - bbox.y.min; + if (bbox.z) { + bbox.z.size = bbox.z.max - bbox.z.min; + } + }, + + pairiteration: function (c1, c2, curveIntersectionThreshold) { + const c1b = c1.bbox(), + c2b = c2.bbox(), + r = 100000, + threshold = curveIntersectionThreshold || 0.5; + + if ( + c1b.x.size + c1b.y.size < threshold && + c2b.x.size + c2b.y.size < threshold + ) { + return [ + (((r * (c1._t1 + c1._t2)) / 2) | 0) / r + + "/" + + (((r * (c2._t1 + c2._t2)) / 2) | 0) / r, + ]; + } + + let cc1 = c1.split(0.5), + cc2 = c2.split(0.5), + pairs = [ + { left: cc1.left, right: cc2.left }, + { left: cc1.left, right: cc2.right }, + { left: cc1.right, right: cc2.right }, + { left: cc1.right, right: cc2.left }, + ]; + + pairs = pairs.filter(function (pair) { + return utils.bboxoverlap(pair.left.bbox(), pair.right.bbox()); + }); + + let results = []; + + if (pairs.length === 0) return results; + + pairs.forEach(function (pair) { + results = results.concat( + utils.pairiteration(pair.left, pair.right, threshold) + ); + }); + + results = results.filter(function (v, i) { + return results.indexOf(v) === i; + }); + + return results; + }, + + getccenter: function (p1, p2, p3) { + const dx1 = p2.x - p1.x, + dy1 = p2.y - p1.y, + dx2 = p3.x - p2.x, + dy2 = p3.y - p2.y, + dx1p = dx1 * cos(quart) - dy1 * sin(quart), + dy1p = dx1 * sin(quart) + dy1 * cos(quart), + dx2p = dx2 * cos(quart) - dy2 * sin(quart), + dy2p = dx2 * sin(quart) + dy2 * cos(quart), + // chord midpoints + mx1 = (p1.x + p2.x) / 2, + my1 = (p1.y + p2.y) / 2, + mx2 = (p2.x + p3.x) / 2, + my2 = (p2.y + p3.y) / 2, + // midpoint offsets + mx1n = mx1 + dx1p, + my1n = my1 + dy1p, + mx2n = mx2 + dx2p, + my2n = my2 + dy2p, + // intersection of these lines: + arc = utils.lli8(mx1, my1, mx1n, my1n, mx2, my2, mx2n, my2n), + r = utils.dist(arc, p1); + + // arc start/end values, over mid point: + let s = atan2(p1.y - arc.y, p1.x - arc.x), + m = atan2(p2.y - arc.y, p2.x - arc.x), + e = atan2(p3.y - arc.y, p3.x - arc.x), + _; + + // determine arc direction (cw/ccw correction) + if (s < e) { + // if s m || m > e) { + s += tau; + } + if (s > e) { + _ = e; + e = s; + s = _; + } + } else { + // if e String? { + guard let rule = rule else { + return nil + } + guard let parser = _parser else { + return nil + } + + guard let start = rule.getStart() else { + return nil + } + guard let stop = rule.getStop() else { + return nil + } + + return try? parser.getTokenStream()?.getText(start, stop) + } +} + +extension JsParserListenerTests { + private func parserTest(_ source: String, comments: [RawCodeComment] = [], file: StaticString = #filePath, line: UInt = #line) -> JsGlobalContextNode + { + return _parseTestGlobalContextNode(source: source, comments: comments, file: file, line: line) + } + + private func _parseTestGlobalContextNode( + source: String, + comments: [RawCodeComment], + file: StaticString = #filePath, + line: UInt = #line + ) -> JsGlobalContextNode { + do { + let parserState = try JsParserState().makeMainParser(input: source) + let parser = parserState.parser + _parser = parser // Keep object alive long enough for ParserRuleContext.getText() calls + + let codeSource = StringCodeSource(source: source, fileName: "test.js") + let diagnostics = Diagnostics() + + let errorListener = AntlrDiagnosticsErrorListener( + source: codeSource, + diagnostics: diagnostics + ) + parser.removeErrorListeners() + + parser.addErrorListener( + errorListener + ) + + parser.getInterpreter().setPredictionMode(.LL) + + let root = try parser.program() + + if !diagnostics.diagnostics.isEmpty { + var diag = "" + diagnostics.printDiagnostics(to: &diag) + + XCTFail("Unexpected diagnostics while parsing:\n\(diag)", file: file, line: line) + } + + let commentQuerier = CommentQuerier(allComments: comments) + let listener = JsParserListener(sourceString: source, source: codeSource, commentQuerier: commentQuerier) + + let walker = ParseTreeWalker() + try walker.walk(listener, root) + + return listener.rootNode + } + catch { + XCTFail("Failed to parse test '\(source)': \(error)", file: file, line: line) + fatalError() + } + } +} diff --git a/Tests/Frontend/JavaScript/JsParserTests/JsParserTests.swift b/Tests/Frontend/JavaScript/JsParserTests/JsParserTests.swift new file mode 100644 index 000000000..33d588c8a --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/JsParserTests.swift @@ -0,0 +1,267 @@ +import Foundation +import JsGrammarModels +import Utils +import XCTest +import TestCommons + +@testable import JsParser + +class JsParserTests: XCTestCase { + private var _sut: JsParser? // To hold ANTLR token streams long enough to use .getText() + + override func tearDown() { + super.tearDown() + + _sut = nil + } + + func testParseSimpleProgram() { + _ = parserTest( + """ + function abc() { } + """ + ) + } + + func testParseClass() throws { + let node = parserTest( + """ + class AClass { + constructor(args) { + + } + static method() { + } + getProperty() { + return 0; + } + } + """ + ) + + let classDecl: JsClassNode = try XCTUnwrap(node.firstChild()) + + XCTAssertEqual(classDecl.identifier?.name, "AClass") + XCTAssertEqual(classDecl.methods.count, 2) + XCTAssertEqual(try classDecl.methods[try: 0].identifier?.name, "method") + XCTAssertEqual(try classDecl.methods[try: 1].identifier?.name, "getProperty") + } + + func testParseFunction() throws { + let node = parserTest( + """ + function test() { + + } + """ + ) + + let functionDecl: JsFunctionDeclarationNode = try XCTUnwrap(node.firstChild()) + + XCTAssertEqual(functionDecl.identifier?.name, "test") + } + + func testParseClassProperty() throws { + let node = parserTest( + """ + class A { + property = 0 + } + """ + ) + + let classNode: JsClassNode = try XCTUnwrap(node.firstChild()) + + XCTAssertEqual(classNode.properties.first?.identifier?.name, "property") + XCTAssertEqual(classNode.properties.first?.expression?.expression?.getText(), "0") + } + + func testParseMultilineComments() { + let string = """ + /** + * Bezier curve constructor. + * + * ...docs pending... + */ + """ + let comments = JsParser.parseComments(input: string) + + XCTAssertEqual(comments.count, 1) + XCTAssertEqual( + comments.first?.string, + """ + /** + * Bezier curve constructor. + * + * ...docs pending... + */ + """ + ) + } + + func testCollectCommentsGlobalFunction() { + let string = """ + /** + * Bezier curve constructor. + * + * ...docs pending... + */ + function a() { + // Body comment + } + function b() { + let local; + } + """ + let node = parserTest(string) + + Asserter(object: node).inClosureUnconditional { asserter in + asserter.assertChildCount(2)? + .asserter(forChildAt: 0) { aFunc in + aFunc.assert(isOfType: JsFunctionDeclarationNode.self)? + .assert(precedingCommentStrings: [ + """ + /** + * Bezier curve constructor. + * + * ...docs pending... + */ + """, + ])? + .assert(commentStrings: [ + "// Body comment\n", + ]) + }? + .asserter(forChildAt: 1) { aFunc in + aFunc.assert(isOfType: JsFunctionDeclarationNode.self)? + .assert(precedingCommentStrings: [])? + .assert(commentStrings: []) + } + } + } + + // TODO: Support "string name" imports as per described here: + // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import#named_import + func testParseImportDeclaration() throws { + let sut = + JsParser( + string: """ + import defaultExport from "/file1.js"; + import * as name from "/file2.js"; + import { export1 } from "/file3.js"; + import { export1 as alias1 } from "/file4.js"; + import { default as alias } from "/file5.js"; + import { export1, export2 } from "/file6.js"; + import { export1, export2 as alias2, /* … */ } from "/file7.js"; + // import { "string name" as alias } from "/file8.js"; + import defaultExport, { export1, /* … */ } from "/file9.js"; + import defaultExport, * as name from "/file10.js"; + import "/file11.js"; + """ + ) + + try sut.parse() + if !sut.diagnostics.diagnostics.isEmpty { + var diag = "" + sut.diagnostics.printDiagnostics(to: &diag) + + XCTFail("Unexpected diagnostics while parsing:\n\(diag)") + } + + XCTAssertEqual(sut.importDirectives, [ + .init(symbols: ["defaultExport"], path: "/file1.js", isSystemImport: false), + .init(symbols: ["*"], path: "/file2.js", isSystemImport: false), + .init(symbols: ["export1"], path: "/file3.js", isSystemImport: false), + .init(symbols: ["export1"], path: "/file4.js", isSystemImport: false), + .init(symbols: ["default"], path: "/file5.js", isSystemImport: false), + .init(symbols: ["export1", "export2"], path: "/file6.js", isSystemImport: false), + .init(symbols: ["export1", "export2"], path: "/file7.js", isSystemImport: false), + .init(symbols: ["defaultExport", "export1"], path: "/file9.js", isSystemImport: false), + .init(symbols: ["defaultExport", "*"], path: "/file10.js", isSystemImport: false), + .init(symbols: [], path: "/file11.js", isSystemImport: false), + ]) + } + + #if JS_PARSER_TESTS_FULL_FIXTURES + + func testParse_allFixtures() throws { + let fixtures = try XCTUnwrap( + Bundle.module.urls(forResourcesWithExtension: "js", subdirectory: nil) + ) + + let exp = expectation(description: "JsParser fixture tests") + + let queue = ConcurrentOperationQueue() + + for fixture in fixtures { + let fixture = fixture as URL + + queue.addOperation { + print("Starting test \(fixture.lastPathComponent)...") + + try withExtendedLifetime(JsParserState()) { state in + let source = try String(contentsOf: fixture, encoding: .utf8) + let sut = JsParser(string: source, state: state) + + try sut.parse() + + if !sut.diagnostics.errors.isEmpty { + var diag = "" + sut.diagnostics.printDiagnostics(to: &diag) + + XCTFail( + "Unexpected error diagnostics while parsing \(fixture.lastPathComponent):\n\(diag)" + ) + } + } + } + } + + queue.addBarrierOperation { + exp.fulfill() + } + + queue.runConcurrent() + + wait(for: [exp], timeout: 60.0) + + try queue.throwErrorIfAvailable() + } + + #endif +} + +extension JsParserTests { + private func parserTest(_ source: String, file: StaticString = #filePath, line: UInt = #line) + -> JsGlobalContextNode + { + let sut = JsParser(string: source) + _sut = sut + + return _parseTestGlobalContextNode(source: source, parser: sut, file: file, line: line) + } + + private func _parseTestGlobalContextNode( + source: String, + parser: JsParser, + file: StaticString = #filePath, + line: UInt = #line + ) -> JsGlobalContextNode { + do { + try parser.parse() + + if !parser.diagnostics.diagnostics.isEmpty { + var diag = "" + parser.diagnostics.printDiagnostics(to: &diag) + + XCTFail("Unexpected diagnostics while parsing:\n\(diag)", file: file, line: line) + } + + return parser.rootNode + } + catch { + XCTFail("Failed to parse test '\(source)': \(error)", file: file, line: line) + fatalError() + } + } +} diff --git a/Tests/Frontend/JavaScript/JsParserTests/Resources.swift b/Tests/Frontend/JavaScript/JsParserTests/Resources.swift new file mode 100644 index 000000000..cfe9dfdea --- /dev/null +++ b/Tests/Frontend/JavaScript/JsParserTests/Resources.swift @@ -0,0 +1,5 @@ +import Foundation + +public enum Resources { + public static let bundle = Bundle.module +} diff --git a/azure-pipelines.yml b/azure-pipelines.yml index a8fff59ff..c23f892f7 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -7,9 +7,9 @@ variables: jobs: - job: macOS pool: - vmImage: 'macOS-13' + vmImage: 'macOS-14' steps: - - bash: 'sudo xcode-select -s /Applications/Xcode_15.1.app/Contents/Developer' + - bash: 'sudo xcode-select -s /Applications/Xcode_15.3.app/Contents/Developer' - task: Cache@2 inputs: key: 'v2 | "swiftpm" | "$(Agent.OS)" | Package.resolved' @@ -19,7 +19,7 @@ jobs: - bash: 'swift package resolve' - bash: 'swift test --enable-code-coverage' - bash: 'xcrun llvm-profdata merge -sparse ./.build/debug/codecov/*.profraw -o coverage.profdata' - - bash: 'xcrun llvm-cov show ./.build/debug/SwiftRewriter -instr-profile=./coverage.profdata --ignore-filename-regex=ObjcParserAntlr Sources > coverage.txt' + - bash: 'xcrun llvm-cov show ./.build/debug/SwiftRewriter -instr-profile=./coverage.profdata --ignore-filename-regex=ObjcParserAntlr --ignore-filename-regex=JsParserAntlr Sources > coverage.txt' - bash: 'bash <(curl -s https://codecov.io/bash)' # Avoid caching build artifacts and focus on checkout state only - bash: 'rm -r $(dirname $(swift build --show-bin-path))' diff --git a/codecov.yml b/codecov.yml index 39bb8c3ed..dca5cee29 100644 --- a/codecov.yml +++ b/codecov.yml @@ -1,2 +1,3 @@ ignore: - "Sources/Frontend/Objective-C/ObjcParserAntlr" + - "Sources/Frontend/JavaScript/JsParserAntlr" diff --git a/utils/js_grammar_gen.py b/utils/js_grammar_gen.py new file mode 100644 index 000000000..d4d7735a2 --- /dev/null +++ b/utils/js_grammar_gen.py @@ -0,0 +1,66 @@ +# Requires Python 3.10.0 or later. + +import shutil +from paths import ( + SOURCE_ROOT_PATH, + grammars_path, + make_relative, + srcroot_path, +) +from antlr_grammar_gen import ( + copy_generated_files, + generate_antlr_grammar, + transform_source, +) +from console_color import ConsoleColor + + +def generate_js_antlr_grammar(antlr_v: str | None = None): + base_path = grammars_path("JsGrammar") + + print( + f"Generating JavaScript grammar files @ {ConsoleColor.CYAN(make_relative(SOURCE_ROOT_PATH, base_path))}..." + ) + + output_path = base_path.joinpath("gen") + grammar_files = [ + base_path.joinpath("JavaScriptLexer.g4"), + base_path.joinpath("JavaScriptParser.g4"), + ] + + generate_antlr_grammar(output_path, grammar_files, antlr_v) + + # Copy -LexerBase.swift/-ParserBase.swift to generated folder + lexer_file_name = "JavaScriptLexerBase.swift" + parser_file_name = "JavaScriptParserBase.swift" + + lexer_base = base_path.joinpath(lexer_file_name) + parser_base = base_path.joinpath(parser_file_name) + + lexer_base_target = output_path.joinpath(lexer_file_name) + parser_base_target = output_path.joinpath(parser_file_name) + + shutil.copy(lexer_base, lexer_base_target) + shutil.copy(parser_base, parser_base_target) + + swift_files = list(output_path.glob("*.swift")) + swift_files = list( + filter( + lambda path: str(path).endswith("Parser.swift") + or str(path).endswith("Lexer.swift"), + swift_files, + ) + ) + + print("Transforming source files...") + transform_source(swift_files) + + # Copy files now + target_parser_path = srcroot_path( + "Sources", + "Frontend", + "JavaScript", + "JsParserAntlr", + ) + + copy_generated_files(output_path, target_parser_path) diff --git a/utils/parser_generate.py b/utils/parser_generate.py index 1a90f32bd..781bd5e66 100644 --- a/utils/parser_generate.py +++ b/utils/parser_generate.py @@ -9,6 +9,7 @@ validate_antlr_version, ) from objc_grammar_gen import generate_objc_antlr_grammar +from js_grammar_gen import generate_js_antlr_grammar from console_color import ConsoleColor @@ -20,6 +21,7 @@ def do_parser_generation(antlr_version: str | None = None, skip_build: bool = Fa build_swift_gen_transformer() generate_objc_antlr_grammar(antlr_version) + generate_js_antlr_grammar(antlr_version) print(ConsoleColor.GREEN("Success!"))