diff --git a/HTMLKit.xcodeproj/project.pbxproj b/HTMLKit.xcodeproj/project.pbxproj index dc7ecb4..eb16663 100644 --- a/HTMLKit.xcodeproj/project.pbxproj +++ b/HTMLKit.xcodeproj/project.pbxproj @@ -15,13 +15,13 @@ 621CC4921DEA704000D1992A /* HTMLDocument+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC48F1DEA704000D1992A /* HTMLDocument+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; 621CC4931DEA704000D1992A /* HTMLDocument+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC48F1DEA704000D1992A /* HTMLDocument+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; 621CC4941DEA704000D1992A /* HTMLDocument+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC48F1DEA704000D1992A /* HTMLDocument+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; - 621CC49B1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4991DEA71D800D1992A /* HTMLNodeIterator+Private.h */; }; - 621CC49C1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4991DEA71D800D1992A /* HTMLNodeIterator+Private.h */; }; - 621CC49D1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4991DEA71D800D1992A /* HTMLNodeIterator+Private.h */; }; - 621CC49E1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4991DEA71D800D1992A /* HTMLNodeIterator+Private.h */; }; + 621CC49B1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4991DEA71D800D1992A /* HTMLNodeIterator+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 621CC49C1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4991DEA71D800D1992A /* HTMLNodeIterator+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 621CC49D1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4991DEA71D800D1992A /* HTMLNodeIterator+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 621CC49E1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4991DEA71D800D1992A /* HTMLNodeIterator+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; 621CC4A51DEA721A00D1992A /* HTMLParser+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4A31DEA721A00D1992A /* HTMLParser+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; 621CC4A61DEA721A00D1992A /* HTMLParser+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4A31DEA721A00D1992A /* HTMLParser+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; - 621CC4A71DEA721A00D1992A /* HTMLParser+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4A31DEA721A00D1992A /* HTMLParser+Private.h */; }; + 621CC4A71DEA721A00D1992A /* HTMLParser+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4A31DEA721A00D1992A /* HTMLParser+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; 621CC4A81DEA721A00D1992A /* HTMLParser+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 621CC4A31DEA721A00D1992A /* HTMLParser+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; 621FBE5B1BDAD68700BC9555 /* CSSSelectorParserTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 621FBE591BDAD68700BC9555 /* CSSSelectorParserTests.m */; }; 621FBE5E1BDAD90200BC9555 /* CSSCombinatorSelectorTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 621FBE5C1BDAD90200BC9555 /* CSSCombinatorSelectorTests.m */; }; @@ -66,6 +66,14 @@ 626679D01DEA3DAF004353E7 /* HTMLCharacterData+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 626679CD1DEA3DAF004353E7 /* HTMLCharacterData+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; 626679D11DEA3DAF004353E7 /* HTMLCharacterData+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 626679CD1DEA3DAF004353E7 /* HTMLCharacterData+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; 626679D21DEA3DAF004353E7 /* HTMLCharacterData+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 626679CD1DEA3DAF004353E7 /* HTMLCharacterData+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 626BE1E21DF3819500C49514 /* HTMLDOMUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 626BE1E01DF3819500C49514 /* HTMLDOMUtils.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 626BE1E31DF3819500C49514 /* HTMLDOMUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 626BE1E01DF3819500C49514 /* HTMLDOMUtils.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 626BE1E41DF3819500C49514 /* HTMLDOMUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 626BE1E01DF3819500C49514 /* HTMLDOMUtils.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 626BE1E51DF3819500C49514 /* HTMLDOMUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 626BE1E01DF3819500C49514 /* HTMLDOMUtils.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 626BE1E61DF3819600C49514 /* HTMLDOMUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 626BE1E11DF3819500C49514 /* HTMLDOMUtils.m */; }; + 626BE1E71DF3819600C49514 /* HTMLDOMUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 626BE1E11DF3819500C49514 /* HTMLDOMUtils.m */; }; + 626BE1E81DF3819600C49514 /* HTMLDOMUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 626BE1E11DF3819500C49514 /* HTMLDOMUtils.m */; }; + 626BE1E91DF3819600C49514 /* HTMLDOMUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 626BE1E11DF3819500C49514 /* HTMLDOMUtils.m */; }; 62857C6B1D3988EE008DC254 /* HTMLKit.h in Headers */ = {isa = PBXBuildFile; fileRef = 625A14BC19C7829400AD0C32 /* HTMLKit.h */; settings = {ATTRIBUTES = (Public, ); }; }; 62857C6C1D3988EE008DC254 /* HTMLKitErrorDomain.h in Headers */ = {isa = PBXBuildFile; fileRef = 626652F81C03D30F00C3F121 /* HTMLKitErrorDomain.h */; settings = {ATTRIBUTES = (Public, ); }; }; 62857C6D1D398907008DC254 /* HTMLInputStreamReader.h in Headers */ = {isa = PBXBuildFile; fileRef = 625A150619C78ABA00AD0C32 /* HTMLInputStreamReader.h */; settings = {ATTRIBUTES = (Private, ); }; }; @@ -301,14 +309,17 @@ 62857D901D39A47F008DC254 /* CSSCompoundSelector.h in Headers */ = {isa = PBXBuildFile; fileRef = 620C87791BD44CBE00FB3EEE /* CSSCompoundSelector.h */; settings = {ATTRIBUTES = (Public, ); }; }; 628AF6301BC99A6C00496128 /* CSSNthExpressionsParserTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 628AF62E1BC99A6C00496128 /* CSSNthExpressionsParserTests.m */; }; 62D8345A19FB1AC4009205A9 /* HTML5LibTokenizerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 62D8345819FB1AC4009205A9 /* HTML5LibTokenizerTest.m */; }; - 62D91C231DE218A500BEFADE /* HTMLRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 62D91C211DE218A500BEFADE /* HTMLRange.h */; }; - 62D91C241DE218A500BEFADE /* HTMLRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 62D91C211DE218A500BEFADE /* HTMLRange.h */; }; - 62D91C251DE218A500BEFADE /* HTMLRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 62D91C211DE218A500BEFADE /* HTMLRange.h */; }; - 62D91C261DE218A500BEFADE /* HTMLRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 62D91C211DE218A500BEFADE /* HTMLRange.h */; }; + 62D91C231DE218A500BEFADE /* HTMLRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 62D91C211DE218A500BEFADE /* HTMLRange.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 62D91C241DE218A500BEFADE /* HTMLRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 62D91C211DE218A500BEFADE /* HTMLRange.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 62D91C251DE218A500BEFADE /* HTMLRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 62D91C211DE218A500BEFADE /* HTMLRange.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 62D91C261DE218A500BEFADE /* HTMLRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 62D91C211DE218A500BEFADE /* HTMLRange.h */; settings = {ATTRIBUTES = (Public, ); }; }; 62D91C271DE218A500BEFADE /* HTMLRange.m in Sources */ = {isa = PBXBuildFile; fileRef = 62D91C221DE218A500BEFADE /* HTMLRange.m */; }; 62D91C281DE218A500BEFADE /* HTMLRange.m in Sources */ = {isa = PBXBuildFile; fileRef = 62D91C221DE218A500BEFADE /* HTMLRange.m */; }; 62D91C291DE218A500BEFADE /* HTMLRange.m in Sources */ = {isa = PBXBuildFile; fileRef = 62D91C221DE218A500BEFADE /* HTMLRange.m */; }; 62D91C2A1DE218A500BEFADE /* HTMLRange.m in Sources */ = {isa = PBXBuildFile; fileRef = 62D91C221DE218A500BEFADE /* HTMLRange.m */; }; + 62EC0A851E158BD80007786B /* HTMLRangeTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 62EC0A841E158BD80007786B /* HTMLRangeTests.m */; }; + 62EC0A861E158BD80007786B /* HTMLRangeTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 62EC0A841E158BD80007786B /* HTMLRangeTests.m */; }; + 62EC0A871E158BD80007786B /* HTMLRangeTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 62EC0A841E158BD80007786B /* HTMLRangeTests.m */; }; 62EC7AE71AEEAC6F0015D3BE /* HTMLKitMutationAlgorithmsTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 62EC7AE51AEEAC6F0015D3BE /* HTMLKitMutationAlgorithmsTests.m */; }; 62ECBEE11C0B69FD00AF847B /* HTMLKitErrorDomain.h in Headers */ = {isa = PBXBuildFile; fileRef = 626652F81C03D30F00C3F121 /* HTMLKitErrorDomain.h */; settings = {ATTRIBUTES = (Public, ); }; }; 62ECBEE21C0B69FD00AF847B /* HTMLInputStreamReader.h in Headers */ = {isa = PBXBuildFile; fileRef = 625A150619C78ABA00AD0C32 /* HTMLInputStreamReader.h */; settings = {ATTRIBUTES = (Private, ); }; }; @@ -534,10 +545,10 @@ 62ECBFDE1C0B6E4400AF847B /* HTML Standard.html in Resources */ = {isa = PBXBuildFile; fileRef = 624AC90D19FC702E00BD3C4A /* HTML Standard.html */; }; 62ECBFDF1C0B6E4400AF847B /* html5lib-tests in Resources */ = {isa = PBXBuildFile; fileRef = 624AC90419FBFE8A00BD3C4A /* html5lib-tests */; }; 62F658711BD83C8E0045F137 /* CSSNThExpressionSelectorTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 62F6586F1BD83C8E0045F137 /* CSSNThExpressionSelectorTests.m */; }; - 62F7E5A21DEB63F900DEF09B /* HTMLRange+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 62F7E5A01DEB63F900DEF09B /* HTMLRange+Private.h */; }; - 62F7E5A31DEB63F900DEF09B /* HTMLRange+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 62F7E5A01DEB63F900DEF09B /* HTMLRange+Private.h */; }; - 62F7E5A41DEB63F900DEF09B /* HTMLRange+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 62F7E5A01DEB63F900DEF09B /* HTMLRange+Private.h */; }; - 62F7E5A51DEB63F900DEF09B /* HTMLRange+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 62F7E5A01DEB63F900DEF09B /* HTMLRange+Private.h */; }; + 62F7E5A21DEB63F900DEF09B /* HTMLRange+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 62F7E5A01DEB63F900DEF09B /* HTMLRange+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 62F7E5A31DEB63F900DEF09B /* HTMLRange+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 62F7E5A01DEB63F900DEF09B /* HTMLRange+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 62F7E5A41DEB63F900DEF09B /* HTMLRange+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 62F7E5A01DEB63F900DEF09B /* HTMLRange+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; + 62F7E5A51DEB63F900DEF09B /* HTMLRange+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 62F7E5A01DEB63F900DEF09B /* HTMLRange+Private.h */; settings = {ATTRIBUTES = (Private, ); }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -677,6 +688,8 @@ 625EE45A1CBB171300F2CC8E /* HTMLKitTestUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HTMLKitTestUtil.m; sourceTree = ""; }; 626652F81C03D30F00C3F121 /* HTMLKitErrorDomain.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = HTMLKitErrorDomain.h; path = include/HTMLKitErrorDomain.h; sourceTree = ""; }; 626679CD1DEA3DAF004353E7 /* HTMLCharacterData+Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "HTMLCharacterData+Private.h"; sourceTree = ""; }; + 626BE1E01DF3819500C49514 /* HTMLDOMUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTMLDOMUtils.h; sourceTree = ""; }; + 626BE1E11DF3819500C49514 /* HTMLDOMUtils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HTMLDOMUtils.m; sourceTree = ""; }; 6279F87119E17DC700F12EE5 /* HTMLParserInsertionModes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = HTMLParserInsertionModes.h; path = include/HTMLParserInsertionModes.h; sourceTree = ""; }; 6279F87219E1808D00F12EE5 /* HTMLElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HTMLElement.h; path = include/HTMLElement.h; sourceTree = ""; }; 6279F87319E1808D00F12EE5 /* HTMLElement.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HTMLElement.m; sourceTree = ""; }; @@ -835,8 +848,6 @@ 6247A9421B152F4F00CCF25C /* HTMLNodeIterator.m */, 624717BA1B22009200B38302 /* HTMLTreeWalker.h */, 624717BB1B22009200B38302 /* HTMLTreeWalker.m */, - 624717161B22333200C11912 /* HTMLNodeTraversal.h */, - 624717171B22333200C11912 /* HTMLNodeTraversal.m */, 6247A9461B152F8C00CCF25C /* HTMLNodeFilter.h */, 624717B71B21FE5400B38302 /* HTMLNodeFilter.m */, 62D91C211DE218A500BEFADE /* HTMLRange.h */, @@ -996,6 +1007,10 @@ 621CC4991DEA71D800D1992A /* HTMLNodeIterator+Private.h */, 62F7E5A01DEB63F900DEF09B /* HTMLRange+Private.h */, 621CC4A31DEA721A00D1992A /* HTMLParser+Private.h */, + 624717161B22333200C11912 /* HTMLNodeTraversal.h */, + 624717171B22333200C11912 /* HTMLNodeTraversal.m */, + 626BE1E01DF3819500C49514 /* HTMLDOMUtils.h */, + 626BE1E11DF3819500C49514 /* HTMLDOMUtils.m */, ); name = Private; sourceTree = ""; @@ -1130,7 +1145,6 @@ isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 62F7E5A21DEB63F900DEF09B /* HTMLRange+Private.h in Headers */, 62ECBF181C0B6A1000AF847B /* HTMLKit.h in Headers */, 62ECBEE11C0B69FD00AF847B /* HTMLKitErrorDomain.h in Headers */, 62ECBEE21C0B69FD00AF847B /* HTMLInputStreamReader.h in Headers */, @@ -1146,6 +1160,7 @@ 62ECBEE91C0B69FD00AF847B /* HTMLCharacterToken.h in Headers */, 62ECBEEA1C0B69FD00AF847B /* HTMLCommentToken.h in Headers */, 62ECBEEB1C0B69FD00AF847B /* HTMLDOCTYPEToken.h in Headers */, + 626BE1E21DF3819500C49514 /* HTMLDOMUtils.h in Headers */, 62ECBEEC1C0B69FD00AF847B /* HTMLParseErrorToken.h in Headers */, 62ECBEED1C0B69FD00AF847B /* HTMLTagToken.h in Headers */, 62ECBEEE1C0B69FD00AF847B /* HTMLEOFToken.h in Headers */, @@ -1172,6 +1187,8 @@ 62ECBEFF1C0B69FE00AF847B /* HTMLNodeIterator.h in Headers */, 62ECBF001C0B69FF00AF847B /* HTMLTreeWalker.h in Headers */, 62ECBF011C0B69FF00AF847B /* HTMLNodeTraversal.h in Headers */, + 62F7E5A21DEB63F900DEF09B /* HTMLRange+Private.h in Headers */, + 621CC49B1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */, 62ECBF021C0B69FF00AF847B /* HTMLNodeFilter.h in Headers */, 62ECBF031C0B69FF00AF847B /* HTMLKitDOMExceptions.h in Headers */, 62ECBF041C0B69FF00AF847B /* HTMLNamespaces.h in Headers */, @@ -1188,7 +1205,6 @@ 62ECBF0F1C0B6A0100AF847B /* CSSSelector.h in Headers */, 62ECBF101C0B6A0100AF847B /* CSSSelectorBlock.h in Headers */, 62ECBF111C0B6A0200AF847B /* CSSTypeSelector.h in Headers */, - 621CC49B1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */, 62ECBF121C0B6A0200AF847B /* CSSAttributeSelector.h in Headers */, 62ECBF131C0B6A0200AF847B /* CSSPseudoClassSelector.h in Headers */, 62ECBF141C0B6A0200AF847B /* CSSNthExpressionSelector.h in Headers */, @@ -1218,6 +1234,7 @@ 62857C841D398917008DC254 /* HTMLParser.h in Headers */, 62857CDB1D3989CE008DC254 /* CSSAttributeSelector.h in Headers */, 62857C791D398907008DC254 /* HTMLEOFToken.h in Headers */, + 626BE1E51DF3819500C49514 /* HTMLDOMUtils.h in Headers */, 62857CC41D3989A9008DC254 /* CSSSelectors.h in Headers */, 62857C731D398907008DC254 /* HTMLToken.h in Headers */, 62857CC51D3989AB008DC254 /* CSSStructuralPseudoSelectors.h in Headers */, @@ -1290,6 +1307,7 @@ 62857D4E1D39A40A008DC254 /* HTMLTokenizerCharacters.h in Headers */, 62857D4D1D39A40A008DC254 /* HTMLTokenizerStates.h in Headers */, 62857D501D39A411008DC254 /* HTMLTokens.h in Headers */, + 626BE1E41DF3819500C49514 /* HTMLDOMUtils.h in Headers */, 62857D7B1D39A452008DC254 /* HTMLNamespaces.h in Headers */, 62857D581D39A416008DC254 /* HTMLParser.h in Headers */, 62857D571D39A411008DC254 /* HTMLEOFToken.h in Headers */, @@ -1346,7 +1364,6 @@ isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 62F7E5A31DEB63F900DEF09B /* HTMLRange+Private.h in Headers */, 62ECBF901C0B6D3700AF847B /* HTMLKit.h in Headers */, 62ECBF911C0B6D3700AF847B /* HTMLKitErrorDomain.h in Headers */, 62ECBF9F1C0B6D3900AF847B /* HTMLParser.h in Headers */, @@ -1386,6 +1403,9 @@ 62ECBFC41C0B6D4200AF847B /* CSSNthExpressionSelector.h in Headers */, 62ECBFC51C0B6D4200AF847B /* CSSPseudoFunctionSelector.h in Headers */, 62ECBFC61C0B6D4300AF847B /* CSSCombinatorSelector.h in Headers */, + 62F7E5A31DEB63F900DEF09B /* HTMLRange+Private.h in Headers */, + 626BE1E31DF3819500C49514 /* HTMLDOMUtils.h in Headers */, + 621CC49C1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */, 625D0F041C2717DE00D7BEB0 /* HTMLNode+Private.h in Headers */, 62ECBFC71C0B6D4300AF847B /* CSSCompoundSelector.h in Headers */, 62ECBFB11C0B6D3C00AF847B /* HTMLNodeTraversal.h in Headers */, @@ -1404,7 +1424,6 @@ 62ECBF9E1C0B6D3800AF847B /* HTMLEOFToken.h in Headers */, 62ECBFA01C0B6D3900AF847B /* HTMLStackOfOpenElements.h in Headers */, 62ECBFA11C0B6D3900AF847B /* HTMLListOfActiveFormattingElements.h in Headers */, - 621CC49C1DEA71D800D1992A /* HTMLNodeIterator+Private.h in Headers */, 62ECBFA21C0B6D3900AF847B /* HTMLElementTypes.h in Headers */, 62ECBFA31C0B6D3900AF847B /* HTMLElementAdjustment.h in Headers */, 62ECBFA41C0B6D3900AF847B /* HTMLParserInsertionModes.h in Headers */, @@ -1712,6 +1731,7 @@ 62ECBF471C0B6B7A00AF847B /* CSSCompoundSelector.m in Sources */, 62567F521C0CB5750025D458 /* HTMLDOMTokenList.m in Sources */, 624C777E1DE9D05E00DD6DFA /* HTMLCharacterData.m in Sources */, + 626BE1E61DF3819600C49514 /* HTMLDOMUtils.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1796,6 +1816,7 @@ 62857CB81D398992008DC254 /* HTMLDOMTokenList.m in Sources */, 62857C831D398912008DC254 /* HTMLEOFToken.m in Sources */, 624C77811DE9D05E00DD6DFA /* HTMLCharacterData.m in Sources */, + 626BE1E91DF3819600C49514 /* HTMLDOMUtils.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1850,6 +1871,7 @@ 62857D171D39A32A008DC254 /* HTMLDOMTokenList.m in Sources */, 62857D0A1D39A324008DC254 /* HTMLEOFToken.m in Sources */, 624C77801DE9D05E00DD6DFA /* HTMLCharacterData.m in Sources */, + 626BE1E81DF3819600C49514 /* HTMLDOMUtils.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1934,6 +1956,7 @@ 62ECBF8F1C0B6D2A00AF847B /* CSSCompoundSelector.m in Sources */, 62567F531C0CB5750025D458 /* HTMLDOMTokenList.m in Sources */, 624C777F1DE9D05E00DD6DFA /* HTMLCharacterData.m in Sources */, + 626BE1E71DF3819600C49514 /* HTMLDOMUtils.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Sources/HTMLDOMUtils.h b/Sources/HTMLDOMUtils.h new file mode 100644 index 0000000..fba89a6 --- /dev/null +++ b/Sources/HTMLDOMUtils.h @@ -0,0 +1,13 @@ +// +// HTMLDOMUtils.h +// HTMLKit +// +// Created by Iska on 03/12/16. +// Copyright © 2016 BrainCookie. All rights reserved. +// + +#import + +@interface HTMLDOMUtils : NSObject + +@end diff --git a/Sources/HTMLDOMUtils.m b/Sources/HTMLDOMUtils.m new file mode 100644 index 0000000..7ab2d01 --- /dev/null +++ b/Sources/HTMLDOMUtils.m @@ -0,0 +1,13 @@ +// +// HTMLDOMUtils.m +// HTMLKit +// +// Created by Iska on 03/12/16. +// Copyright © 2016 BrainCookie. All rights reserved. +// + +#import "HTMLDOMUtils.h" + +@implementation HTMLDOMUtils + +@end diff --git a/Sources/HTMLRange.m b/Sources/HTMLRange.m index f58ca01..8d1d77a 100644 --- a/Sources/HTMLRange.m +++ b/Sources/HTMLRange.m @@ -10,6 +10,7 @@ #import "HTMLDocument.h" #import "HTMLKitDOMExceptions.h" #import "HTMLDocument+Private.h" +#import "HTMLDOMUtils.h" @interface HTMLRange () { @@ -47,11 +48,7 @@ - (HTMLNode *)commonAncestorContainer { - HTMLNode *container = _startContainer; - while (![container containsNode:_endContainer]) { - container = container.parentNode; - } - return container; + return GetCommonAncestorContainer(_startContainer, _endContainer); } - (HTMLNode *)rootNode diff --git a/Sources/include/HTMLDOM.h b/Sources/include/HTMLDOM.h index 50eadbc..c269c14 100644 --- a/Sources/include/HTMLDOM.h +++ b/Sources/include/HTMLDOM.h @@ -14,6 +14,7 @@ #import "HTMLComment.h" #import "HTMLText.h" #import "HTMLTemplate.h" +#import "HTMLRange.h" #import "HTMLDOMTokenList.h" #import "HTMLNodeIterator.h" #import "HTMLTreeWalker.h" diff --git a/Sources/module.modulemap b/Sources/module.modulemap index 4172c3e..5f6af82 100644 --- a/Sources/module.modulemap +++ b/Sources/module.modulemap @@ -1,30 +1,37 @@ module HTMLKit { umbrella header "HTMLKit.h" - private header "CSSCodePoints.h" - private header "CSSInputStream.h" - private header "HTMLCharacterToken.h" - private header "HTMLCommentToken.h" - private header "HTMLDOCTYPEToken.h" - private header "HTMLElementAdjustment.h" - private header "HTMLElementTypes.h" - private header "HTMLEOFToken.h" - private header "HTMLInputStreamReader.h" - private header "HTMLListOfActiveFormattingElements.h" - private header "HTMLMarker.h" - private header "HTMLNode+Private.h" - private header "HTMLNodeTraversal.h" - private header "HTMLParseErrorToken.h" - private header "HTMLParserInsertionModes.h" - private header "HTMLStackOfOpenElements.h" - private header "HTMLTagToken.h" - private header "HTMLToken.h" - private header "HTMLTokenizer.h" - private header "HTMLTokenizerCharacters.h" - private header "HTMLTokenizerEntities.h" - private header "HTMLTokenizerStates.h" - private header "HTMLTokens.h" - module * { export * } export * + + explicit module Private { + header "CSSCodePoints.h" + header "CSSInputStream.h" + header "HTMLCharacterToken.h" + header "HTMLCommentToken.h" + header "HTMLDOCTYPEToken.h" + header "HTMLElementAdjustment.h" + header "HTMLElementTypes.h" + header "HTMLEOFToken.h" + header "HTMLInputStreamReader.h" + header "HTMLListOfActiveFormattingElements.h" + header "HTMLMarker.h" + header "HTMLNodeTraversal.h" + header "HTMLDOMUtils.h" + header "HTMLParseErrorToken.h" + header "HTMLParserInsertionModes.h" + header "HTMLStackOfOpenElements.h" + header "HTMLTagToken.h" + header "HTMLToken.h" + header "HTMLTokenizer.h" + header "HTMLTokenizerCharacters.h" + header "HTMLTokenizerEntities.h" + header "HTMLTokenizerStates.h" + header "HTMLTokens.h" + header "HTMLNode+Private.h" + header "HTMLCharacterData+Private.h" + header "HTMLRange+Private.h" + header "HTMLNodeIterator+Private.h" + header "HTMLParser+Private.h" + } }