ObjFW  History of src/OFXMLParser.m of 06251136e541cf9c

History of file src/OFXMLParser.m at check-in 06251136e541cf9c

2024-04-03
02:16
Change license to LGPLv3 only file: [28790f1d96] check-in: [7413a728a7] user: js, branch: trunk, size: 28112 [annotate] [blame] [check-ins using] [diff]
2024-01-02
17:17
Update copyright file: [70a137d545] check-in: [26ddd2e4e4] user: js, branch: trunk, size: 27904 [annotate] [blame] [check-ins using] [diff]
2023-01-06
09:04
Update copyright file: [d3addaaa2c] check-in: [8939cbdb52] user: js, branch: trunk, size: 27904 [annotate] [blame] [check-ins using] [diff]
2022-09-04
13:17
OFXMLElement: Remove defaultNamespace property file: [7be6fc7234] check-in: [eed200181b] user: js, branch: trunk, size: 27904 [annotate] [blame] [check-ins using] [diff]
2022-08-29
20:35
OFXMLProcessingInstruction: Rename data -> text file: [ece1af7f25] check-in: [fbcbf30be7] user: js, branch: trunk, size: 27903 [annotate] [blame] [check-ins using] [diff]
2022-02-12
07:46
Update copyright file: [beb767fa68] check-in: [1a86b8175b] user: js, branch: trunk, size: 27903 [annotate] [blame] [check-ins using] [diff]
2021-04-30
21:09
OFXMLParser: Make state enum private file: [885a5c6d01] check-in: [3e5e97315c] user: js, branch: trunk, size: 27903 [annotate] [blame] [check-ins using] [diff]
2021-04-25
11:05
A few last renames file: [a4ea06f928] check-in: [27103855c2] user: js, branch: new-naming-convention, size: 28076 [annotate] [blame] [check-ins using] [diff]
2021-04-17
22:45
Rename of_(re)alloc and add OFFreeMemory file: [a3895b5d8d] check-in: [498074dab9] user: js, branch: new-naming-convention, size: 28082 [annotate] [blame] [check-ins using] [diff]
18:36
Rename all remaining enums file: [d255848201] check-in: [aa74e85220] user: js, branch: new-naming-convention, size: 28069 [annotate] [blame] [check-ins using] [diff]
14:13
Always prefix functions with the type file: [d9e7407eb2] check-in: [eb0cfa6ff9] user: js, branch: new-naming-convention, size: 28001 [annotate] [blame] [check-ins using] [diff]
02:10
of_string_encoding_t -> OFStringEncoding file: [0ad1be565e] check-in: [255f21fb3d] user: js, branch: new-naming-convention, size: 28001 [annotate] [blame] [check-ins using] [diff]
01:24
OF_NOT_FOUND -> OFNotFound file: [fa0c6522c4] check-in: [83dc0fe6e5] user: js, branch: new-naming-convention, size: 28012 [annotate] [blame] [check-ins using] [diff]
00:14
of_comparison_result_t -> OFComparisonResult file: [ca14e0fa24] check-in: [61fc389aee] user: js, branch: new-naming-convention, size: 28014 [annotate] [blame] [check-ins using] [diff]
2021-04-09
01:28
Split XML processing instructions into target/data file: [02a95773a3] check-in: [d4b3f8ea70] user: js, branch: trunk, size: 28016 [annotate] [blame] [check-ins using] [diff]
2021-03-07
20:25
*.m: Fold methods into one line where it fits file: [e395ba83dc] check-in: [1b82d3bf4f] user: js, branch: trunk, size: 27690 [annotate] [blame] [check-ins using] [diff]
2021-01-02
22:04
Update copyright file: [08bf6cc4f2] check-in: [374e1a1bfa] user: js, branch: trunk, size: 27750 [annotate] [blame] [check-ins using] [diff]
2020-12-29
13:11
Let OFXMLElement take a stream instead of a file file: [495894cd91] check-in: [6b21acb1a9] user: js, branch: trunk, size: 27839 [annotate] [blame] [check-ins using] [diff]
2020-12-25
20:39
Remove superfluous parenthesis file: [a0e17680fe] check-in: [06349e3d84] user: js, branch: trunk, size: 28055 [annotate] [blame] [check-ins using] [diff]
2020-11-14
12:23
Rename of_malloc and of_calloc

The new names should be more accurate. file: [0dd447c3c4] check-in: [627511b032] user: js, branch: trunk, size: 28057 [annotate] [blame] [check-ins using] [diff]

2020-11-05
00:24
Avoid -[allocMemoryWithSize:] for temporary memory

-[allocMemoryWithSize:] has book keeping overhead that is unnecessary
for temporary memory. file: [8b036ac867] check-in: [0ddaac3f5b] user: js, branch: trunk, size: 28058 [annotate] [blame] [check-ins using] [diff]

2020-11-01
11:35
OFString: Add -[substring{From,To}Index:] file: [ff15f62058] check-in: [4bbac7ab17] user: js, branch: trunk, size: 28085 [annotate] [blame] [check-ins using] [diff]
2020-06-27
13:30
OFXMLParser: Make private methods static functions file: [51abbe68ac] check-in: [218c819b39] user: js, branch: trunk, size: 28110 [annotate] [blame] [check-ins using] [diff]
2020-04-19
10:02
Clean up which exception is used when a little file: [7ad1f08170] check-in: [3356b9940c] user: js, branch: trunk, size: 24909 [annotate] [blame] [check-ins using] [diff]
2020-01-02
01:51
Update copyright file: [d4fd816fdb] check-in: [c7f0229795] user: js, branch: trunk, size: 24689 [annotate] [blame] [check-ins using] [diff]
2019-04-08
15:54
OFXMLParser: Minor style improvement file: [14fda2b858] check-in: [5fe20406aa] user: js, branch: trunk, size: 24686 [annotate] [blame] [check-ins using] [diff]
2019-03-08
00:35
Use dot syntax file: [e97aaf5fcc] check-in: [bceb7ed4c9] user: js, branch: trunk, size: 24685 [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
Update copyright file: [f6e5cef596] check-in: [0509d7a844] user: js, branch: trunk, size: 24743 [annotate] [blame] [check-ins using] [diff]
2018-10-13
13:43
OFData+MessagePackValue: More precise exceptions file: [543440cf05] check-in: [f28731c106] user: js, branch: trunk, size: 24737 [annotate] [blame] [check-ins using] [diff]
2018-06-16
14:36
OFXML*: Remember delimiter of attributes

This means that if OFXMLParser parsed double-quoted attributes,
OFXMLElement will emit them with double-quotes again. file: [a92d1baa88] check-in: [0ec6f9c1d9] user: js, branch: trunk, size: 24762 [annotate] [blame] [check-ins using] [diff]

14:21
OFXMLElement: Add a few extra type checks file: [3d72b3b75b] check-in: [3af65b5d98] user: js, branch: trunk, size: 24661 [annotate] [blame] [check-ins using] [diff]
2018-03-18
00:28
Add support for parsing XML property lists file: [b2f6d860ce] check-in: [db0bf9d5a7] user: js, branch: trunk, size: 24636 [annotate] [blame] [check-ins using] [diff]
2018-01-03
19:49
Update copyright notice file: [9e54ac8837] check-in: [7e5c81e186] user: js, branch: trunk, size: 24604 [annotate] [blame] [check-ins using] [diff]
2017-10-17
00:33
Do not use implicit method return types

Instead, explicitly declare them, as OF_ASSUME_NONNULL_{BEGIN,END} does
not apply to implicit return types. This means that after this commit,
all init methods have a nonnull return type, as they should have. file: [b473f5b8df] check-in: [2f4e0df8be] user: js, branch: trunk, size: 24581 [annotate] [blame] [check-ins using] [diff]

2017-10-01
21:06
Fix compilation with GCC file: [c940e346a8] check-in: [f97084d9c3] user: js, branch: trunk, size: 24567 [annotate] [blame] [check-ins using] [diff]
2017-09-28
23:02
Enable -Wnullable-to-nonnull-conversion and adjust file: [8522ee412a] check-in: [2de9660312] user: js, branch: trunk, size: 24025 [annotate] [blame] [check-ins using] [diff]
2017-07-22
23:04
OFFile: Simplify mode

This removes "b" for binary and always uses binary, as there is no good
reason to not use binary. file: [913f851c54] check-in: [23e57c5040] user: js, branch: trunk, size: 23892 [annotate] [blame] [check-ins using] [diff]

20:50
Split OFDataArray into OFData and OFMutableData file: [dec1e593aa] check-in: [c8f7b90082] user: js, branch: trunk, size: 23893 [annotate] [blame] [check-ins using] [diff]
2017-06-03
18:37
Properly check for sys/types.h file: [b19418ed62] check-in: [4ec0948b1b] user: js, branch: trunk, size: 23898 [annotate] [blame] [check-ins using] [diff]
2017-05-21
21:28
Prefix private methods with of_ instead of OF_

This matches Apple's style. file: [9b8cdb5bf4] check-in: [6b77a5dd8b] user: js, branch: trunk, size: 24012 [annotate] [blame] [check-ins using] [diff]

2017-05-08
21:37
Add OF_DESIGNATED_INITIALIZER & OF_METHOD_FAMILY file: [f6cfcd55b0] check-in: [469a496cd2] user: js, branch: trunk, size: 24012 [annotate] [blame] [check-ins using] [diff]
2017-05-07
20:10
Small code style change

Casts are now written like types in variable declarations. file: [829d513f17] check-in: [4af49a13c3] user: js, branch: trunk, size: 24013 [annotate] [blame] [check-ins using] [diff]

2017-01-18
03:45
Move parsing of encoding names to a single place file: [3771da0801] check-in: [4c8d02cc0d] user: js, branch: trunk, size: 24004 [annotate] [blame] [check-ins using] [diff]
2017-01-17
03:23
Add ISO-8859-2 file: [72d9697aa5] check-in: [7a27ce7b0b] user: js, branch: trunk, size: 25404 [annotate] [blame] [check-ins using] [diff]
01:20
Allow iso_8859-* spellings for encoding file: [a54e16b4ae] check-in: [238d47a1d6] user: js, branch: trunk, size: 25260 [annotate] [blame] [check-ins using] [diff]
2017-01-15
04:32
Add codepage 858

This only differs from codepage 850 by a single code point. file: [469c7272f8] check-in: [adbf31f2f9] user: js, branch: trunk, size: 25175 [annotate] [blame] [check-ins using] [diff]

2017-01-11
04:44
Accept cp* and cp-* as encoding name file: [5a770f7e7b] check-in: [bbe91438b1] user: js, branch: trunk, size: 25038 [annotate] [blame] [check-ins using] [diff]
04:22
Add Windows-1251 encoding file: [d432f9b587] check-in: [0f88ccfb04] user: js, branch: trunk, size: 24610 [annotate] [blame] [check-ins using] [diff]
2017-01-10
23:23
Add Mac OS Roman encoding file: [ab4dd1b1f9] check-in: [0832fcf579] user: js, branch: trunk, size: 24504 [annotate] [blame] [check-ins using] [diff]
2017-01-09
17:36
Update copyright

Forgot to add 2017, even though I already did quite some changes in
2017. file: [8d14cdf4ec] check-in: [44f45c2e35] user: js, branch: trunk, size: 24404 [annotate] [blame] [check-ins using] [diff]

2016-02-21
15:37
Make use of C99-style for loops file: [0b91cb99ed] check-in: [e0b9167693] user: js, branch: trunk, size: 24398 [annotate] [blame] [check-ins using] [diff]
2016-01-03
00:43
Update copyright

While at it, also update the mail address. file: [e8dbae18f9] check-in: [cec0f072f8] user: js, branch: 0.8, size: 24611 [annotate] [blame] [check-ins using] [diff]

00:41
Update copyright

While at it, also update the mail address. file: [497caa1df6] check-in: [2a27cf3000] user: js, branch: trunk, size: 24409 [annotate] [blame] [check-ins using] [diff]

2015-11-29
11:43
Make properties a requirement and clean up code

This increases the required GCC version from 4.0 to 4.6 (exception:
Apple GCC, which already supports this with >= 4.0 starting with OS X
10.5). Since even GCC 4.6 is really old by now, there is no point in
still supporting something even older and making the code ugly because
of that. While some hardware and OS support was dropped from GCC 4.6
compared to GCC 4.0, there is nothing in there that would be an
interesting target with the exception of BeOS maybe - but a port to BeOS
can also be achieved using the Haiku support. The other dropped OSes are
mostly old versions of OSes while newer ones are still being supported
(and those newer versions of those OSes still support the same
hardware). file: [6625a4f5d5] check-in: [48980f2297] user: js, branch: trunk, size: 24405 [annotate] [blame] [check-ins using] [diff]

2015-05-03
11:34
Check <= SSIZE_MAX before assignign to ssize_t file: [3e706b5d43] check-in: [daf78156a7] user: js, branch: trunk, size: 24607 [annotate] [blame] [check-ins using] [diff]
2015-01-03
20:57
Update copyright file: [d18eed8a23] check-in: [cfd374b906] user: js, branch: trunk, size: 24477 [annotate] [blame] [check-ins using] [diff]
2014-07-07
22:05
Add OFUnknownXMLEntityException

Additionally, OFXMLParser now uses OFMalformedXMLException instead of
OFInvalidFormatException on invalid entities. file: [7ca3cc1d6a] check-in: [6e5a920567] user: js, branch: trunk, size: 24471 [annotate] [blame] [check-ins using] [diff]

2014-06-21
21:43
Move all macros from OFObject.h to macros.h

This means that OFObject.h imports macros.h now, making it unnecessary
to manually import macros.h in almost every file. And while at it, also
import autorelease.h in OFObject.h, so that this doesn't need to be
manually imported in almost every file as well. file: [006e6e5905] check-in: [13ee56edf3] user: js, branch: trunk, size: 24323 [annotate] [blame] [check-ins using] [diff]

2014-06-16
15:06
Make return type of -[OFArray objects] const

After all, this might (and does for OFArray_adjacent!) return an
internal representation that must not be changed, so changes should be
prevented at compile-time. file: [75261e507a] check-in: [68d32a92c1] user: js, branch: trunk, size: 24361 [annotate] [blame] [check-ins using] [diff]

2014-02-10
19:29
Move OFBigDataArray out to its own files file: [e7da32bd09] check-in: [af7e24f9ab] user: js, branch: trunk, size: 24349 [annotate] [blame] [check-ins using] [diff]
2014-01-09
00:01
Add --disable-files configure flag. file: [d85afd1c0b] check-in: [f89edd8ed9] user: js, branch: trunk, size: 24346 [annotate] [blame] [check-ins using] [diff]
2014-01-04
00:24
Update copyright. file: [6af927da7d] check-in: [3b97fc3cd9] user: js, branch: trunk, size: 24289 [annotate] [blame] [check-ins using] [diff]
2013-12-05
17:48
Make coding style consistent.

A file documenting the coding style will be written soon. This will
hopefully prevent conflicts in the future, such as whether static
functions are written in camelCase or_with_underscores, like was the
case here. file: [b80861f91e] check-in: [fa6496efc7] user: js, branch: trunk, size: 24283 [annotate] [blame] [check-ins using] [diff]

2013-08-01
23:07
OFXMLParser: Improve handling of whitespaces. file: [86a5942568] check-in: [a69e13fa8d] user: js, branch: trunk, size: 24293 [annotate] [blame] [check-ins using] [diff]
22:12
OFXMLParser: Fix parsing of <![CDATA[x]]]>. file: [a08464f480] check-in: [66cb66e6d8] user: js, branch: trunk, size: 23769 [annotate] [blame] [check-ins using] [diff]
2013-06-22
12:12
Rework exceptions.

This mostly removes the argument for the class in which the exception
occurred. As backtraces were recently added for all platforms, the
passed class does not give any extra information on where the exception
occurred anymore.

This also removes a few other arguments which were not too helpful. In
the past, the idea was to pass as many arguments as possible so that it
is easier to find the origin of the exception. However, as backtraces
are a much better way to find the origin, those are not useful anymore
and just make the exception more cumbersome to use. The rule is now to
only pass arguments that might help in recovering from the exception or
provide information that is otherwise not easily accessible. file: [c5cbe08edf] check-in: [3d16a30f41] user: js, branch: trunk, size: 23947 [annotate] [blame] [check-ins using] [diff]

2013-06-16
20:03
Split OFUnboundNamespaceException.

OFUnboundNamespaceException is now only used when the namespace is not
bound. If the prefix is not bound, OFUnboundPrefixException is used now. file: [12e7c5b831] check-in: [457e0e82af] user: js, branch: trunk, size: 24490 [annotate] [blame] [check-ins using] [diff]

2013-06-14
22:59
Clean up OFXMLParser a little. file: [bf41f38598] check-in: [568ec65e80] user: js, branch: trunk, size: 24436 [annotate] [blame] [check-ins using] [diff]
2013-04-12
07:47
OFXMLParser: Skip BOM. file: [3bb79c6f6f] check-in: [9b1f138b09] user: js, branch: trunk, size: 26521 [annotate] [blame] [check-ins using] [diff]
2013-04-10
16:48
OFXMLParser: Require version in prolog. file: [3a91a054b9] check-in: [1efd40d895] user: js, branch: trunk, size: 26019 [annotate] [blame] [check-ins using] [diff]
2013-03-04
17:20
Replace BOOL with bool.

The only places where BOOL is left are those where they are required by
the ABI. file: [a389df28b8] check-in: [c5ef582958] user: js, branch: trunk, size: 25947 [annotate] [blame] [check-ins using] [diff]

2013-02-18
22:00
Rename OFXMLParser's _cache to _buffer. file: [a35aa2dad5] check-in: [265a0928ca] user: js, branch: trunk, size: 25900 [annotate] [blame] [check-ins using] [diff]
2013-02-12
18:22
Prefix all ivars with an underscore. file: [ca4fab60df] check-in: [e40729d406] user: js, branch: trunk, size: 25782 [annotate] [blame] [check-ins using] [diff]
2013-01-09
22:24
Update copyright. file: [b0c5452c32] check-in: [813c00ccf0] user: js, branch: trunk, size: 25455 [annotate] [blame] [check-ins using] [diff]
2012-12-29
14:29
OFXMLParser: OFMutableString -> OFString.

There was no point in having it mutable here. file: [6860431168] check-in: [036c487137] user: js, branch: trunk, size: 25449 [annotate] [blame] [check-ins using] [diff]

2012-12-26
14:10
Add OFSystemInfo. file: [e91c2714f2] check-in: [4b637f8516] user: js, branch: trunk, size: 25486 [annotate] [blame] [check-ins using] [diff]
2012-12-20
16:42
Remove dummy implementations for formal protocols. file: [6b0673d037] check-in: [89177dcd09] user: js, branch: trunk, size: 25423 [annotate] [blame] [check-ins using] [diff]
2012-12-15
17:52
OFDataArray: Improve API. file: [4543342dd4] check-in: [c85ff8d35a] user: js, branch: trunk, size: 25351 [annotate] [blame] [check-ins using] [diff]
2012-12-12
18:40
Coding style. file: [c33143cf90] check-in: [6ad5d3d8d6] user: js, branch: trunk, size: 25390 [annotate] [blame] [check-ins using] [diff]
2012-12-03
01:17
OFXMLParser: Add configurable depth limit.

The default is 32. file: [9e2d46e499] check-in: [ed4e64fd32] user: js, branch: trunk, size: 25397 [annotate] [blame] [check-ins using] [diff]

2012-10-09
15:07
Make use of instancetype. file: [ca01c9a5ad] check-in: [fb515e8e24] user: js, branch: trunk, size: 25105 [annotate] [blame] [check-ins using] [diff]
2012-10-03
15:41
Move definition of restricted to OFObject.h. file: [2183cd8116] check-in: [7239333455] user: js, branch: trunk, size: 25091 [annotate] [blame] [check-ins using] [diff]
2012-09-16
15:27
Prefix all private methods with OF_. file: [f9b1934552] check-in: [c137da5e5b] user: js, branch: trunk, size: 25072 [annotate] [blame] [check-ins using] [diff]
2012-08-10
20:08
Directly use the runtime's autorelease pools.

This greatly improves performance, as it gets rid of the overhead of
OFAutoreleasePool. file: [5b68538ff6] check-in: [1255f3a11a] user: js, branch: trunk, size: 25000 [annotate] [blame] [check-ins using] [diff]

2012-07-12
01:28
Don't access isa directly. file: [c329ebfb71] check-in: [8892ae9fcc] user: js, branch: trunk, size: 25231 [annotate] [blame] [check-ins using] [diff]
2012-07-04
22:50
Rename -[{upper,lower}] to -[{upper,lower}case]. file: [4119684e10] check-in: [8e995a13e7] user: js, branch: trunk, size: 25065 [annotate] [blame] [check-ins using] [diff]
2012-06-07
12:03
Rework OFStream API. file: [a3d968177a] check-in: [0d4059306a] user: js, branch: trunk, size: 25061 [annotate] [blame] [check-ins using] [diff]
2012-06-06
17:16
Rename -[OFXMLParser parseBuffer:withLength:].

It's -[parseBuffer:length:] now. file: [c6d94e0ddb] check-in: [7a42ee8f11] user: js, branch: trunk, size: 25060 [annotate] [blame] [check-ins using] [diff]

13:09
Rework OFDataArray API.

Also adds more checks. file: [2619682154] check-in: [d5ddb2cb48] user: js, branch: trunk, size: 25074 [annotate] [blame] [check-ins using] [diff]

2012-03-16
17:32
OFXMLParser: Don't recreate "attributes" all the time. file: [8f2d46a92b] check-in: [4a080857a2] user: js, branch: trunk, size: 25066 [annotate] [blame] [check-ins using] [diff]
2012-03-12
11:54
OFArray: +[arrayWithCArray:length:] -> +[arrayWithObjects:count:].

This is required for the new array literals. file: [a8f0eceb0e] check-in: [008be86a16] user: js, branch: trunk, size: 25101 [annotate] [blame] [check-ins using] [diff]

2012-01-31
13:59
Add -[removeAllObjects] and -[removeAllItems]. file: [768dfa63ad] check-in: [d1572ef036] user: js, branch: trunk, size: 25094 [annotate] [blame] [check-ins using] [diff]
2012-01-25
20:11
Don't treat \f as whitespace in XML. file: [14f7ba420b] check-in: [1c9c536749] user: js, branch: trunk, size: 25198 [annotate] [blame] [check-ins using] [diff]
2012-01-05
00:56
Update copyright. file: [90301d3556] check-in: [ce70e17b38] user: js, branch: trunk, size: 25412 [annotate] [blame] [check-ins using] [diff]
2011-10-24
18:28
Don't retain delegates to prevent reference cycles. file: [6cac706d3c] check-in: [87cd99ff88] user: js, branch: trunk, size: 25406 [annotate] [blame] [check-ins using] [diff]
2011-10-11
22:21
More OFXMLParser optimizations.

With the last few commits, OFXMLParser is now twice as fast as before. file: [e2b24f34eb] check-in: [8953d826b4] user: js, branch: trunk, size: 25478 [annotate] [blame] [check-ins using] [diff]

22:13
Small optimization in OFXMLParser. file: [7b02ea3041] check-in: [8523d20555] user: js, branch: trunk, size: 25215 [annotate] [blame] [check-ins using] [diff]
2011-09-22
23:25
Exceptions are now autoreleased.

This is safe as an "exception loop" can't happen, since if allocating
an exception fails, it throws an OFAllocFailedException which is
preallocated and can always be thrown.

So, the worst case would be that an autorelease of an exception fails,
triggering an OFOutOfMemoryException for which there is no memory,
resulting in an OFAllocFailedException to be thrown. file: [8741247447] check-in: [e1e7ffa903] user: js, branch: trunk, size: 25324 [annotate] [blame] [check-ins using] [diff]

2011-09-12
19:57
Rename -[cString] to -[UTF8String]. file: [4039ac2894] check-in: [e6fd39d11e] user: js, branch: trunk, size: 25239 [annotate] [blame] [check-ins using] [diff]
2011-09-11
00:09
Remove blocks support in OFXMLParser as it was useless. file: [3bdc0c658c] check-in: [9975294bb1] user: js, branch: trunk, size: 25212 [annotate] [blame] [check-ins using] [diff]
2011-09-10
20:24
Treat \f as whitespace. file: [2217f932b7] check-in: [7eff7e3918] user: js, branch: trunk, size: 27065 [annotate] [blame] [check-ins using] [diff]
2011-08-07
16:57
Add -[makeImmutable] to all mutable classes and use it. file: [e1a9a7f1bc] check-in: [927dbf6e7d] user: js, branch: trunk, size: 26871 [annotate] [blame] [check-ins using] [diff]
2011-08-04
16:48
Get rid of -[*FromIndex:toIndex:]. file: [a92b6c9809] check-in: [f977192a23] user: js, branch: trunk, size: 26886 [annotate] [blame] [check-ins using] [diff]
2011-07-17
01:55
Define __NO_EXT_QNX in files using unistd.h or fcntl.h.

Without this, the headers try to declare functions that use __block as
an argument name and thus fail to compile when using -fblocks. file: [327f362f7a] check-in: [59e52af26d] user: js, branch: 0.5, size: 25387 [annotate] [blame] [check-ins using] [diff]

01:55
Define __NO_EXT_QNX in files using unistd.h or fcntl.h.

Without this, the headers try to declare functions that use __block as
an argument name and thus fail to compile when using -fblocks. file: [b84b15abc4] check-in: [da2701ad14] user: js, branch: trunk, size: 26901 [annotate] [blame] [check-ins using] [diff]

2011-07-09
14:34
Use OFDataArray instead of OFMutableString for cache in OFXMLParser. file: [b3a828e74d] check-in: [bbe98ea6c2] user: js, branch: trunk, size: 26897 [annotate] [blame] [check-ins using] [diff]
2011-07-08
20:13
Rename -[deleteLeadingAndTrailingWhitespaces]. file: [d41280c3bf] check-in: [7c66260ead] user: js, branch: trunk, size: 26047 [annotate] [blame] [check-ins using] [diff]
2011-06-17
00:35
Add -[removeLastItem] and -[removeLastObject]. file: [c97fda3f99] check-in: [5a127a0804] user: js, branch: trunk, size: 26065 [annotate] [blame] [check-ins using] [diff]
2011-06-04
13:56
Also set finishedParsing if the root element is in short form. file: [58a072789b] check-in: [4f6d13223e] user: js, branch: 0.5, size: 25383 [annotate] [blame] [check-ins using] [diff]
13:56
Also set finishedParsing if the root element is in short form. file: [2ab7767e17] check-in: [1bcc25c6fd] user: js, branch: trunk, size: 26068 [annotate] [blame] [check-ins using] [diff]
2011-05-12
19:47
Also set finishedParsing if the root element is in short form. file: [fb389d051f] check-in: [05c29433ac] user: js, branch: 0.5, size: 25327 [annotate] [blame] [check-ins using] [diff]
19:45
Also set finishedParsing if the root element is in short form. file: [86dfdc1dc5] check-in: [73aaf87867] user: js, branch: trunk, size: 26012 [annotate] [blame] [check-ins using] [diff]
2011-05-08
17:33
Get rid of appendCStringWithoutUTF8Checking:encoding:length:]. file: [c68cb5d129] check-in: [1eedeefc72] user: js, branch: trunk, size: 25954 [annotate] [blame] [check-ins using] [diff]
2011-04-27
16:14
Small string optimization. file: [b060def371] check-in: [50a6d34eff] user: js, branch: trunk, size: 25975 [annotate] [blame] [check-ins using] [diff]
2011-04-25
16:57
OFXMLParser: Add support for different encodings and other improvements. file: [852bd85a55] check-in: [b2dd4f049b] user: js, branch: trunk, size: 26575 [annotate] [blame] [check-ins using] [diff]
2011-04-23
22:26
Minor style improvements. file: [267ee48789] check-in: [a0f0c381b2] user: js, branch: trunk, size: 26106 [annotate] [blame] [check-ins using] [diff]
21:19
Get rid of useless variables. file: [ae63c6543c] check-in: [01f12ed5e2] user: js, branch: trunk, size: 26113 [annotate] [blame] [check-ins using] [diff]
00:11
More style improvements. file: [130441ad5f] check-in: [d8c31454b4] user: js, branch: trunk, size: 26157 [annotate] [blame] [check-ins using] [diff]
2011-04-11
00:37
A few readability improvements. file: [f51f5629f8] check-in: [e52ccc8d45] user: js, branch: trunk, size: 25258 [annotate] [blame] [check-ins using] [diff]
2011-04-09
20:05
Parse XML processing instructions. file: [669b34c861] check-in: [bf45e02951] user: js, branch: trunk, size: 25269 [annotate] [blame] [check-ins using] [diff]
15:43
OFXMLParser: Allow processing instructions after the document. file: [1c1c18bcbe] check-in: [2d7725aa27] user: js, branch: trunk, size: 23494 [annotate] [blame] [check-ins using] [diff]
15:41
OFXMLParser: Don't allow character data before the document. file: [3ea5992642] check-in: [0cc997a1d7] user: js, branch: trunk, size: 23476 [annotate] [blame] [check-ins using] [diff]
2011-03-24
21:29
Pass the parser for OFMalformedXMLExceptions. file: [e1f46dcc8c] check-in: [3a9a5001cf] user: js, branch: trunk, size: 23445 [annotate] [blame] [check-ins using] [diff]
19:42
Get rid of OFExceptions.h. file: [cfc14f4098] check-in: [cda44767f4] user: js, branch: trunk, size: 23145 [annotate] [blame] [check-ins using] [diff]
2011-03-23
01:06
Make more use of the OFObject protocol. file: [6d04013cc2] check-in: [23acf38456] user: js, branch: trunk, size: 23048 [annotate] [blame] [check-ins using] [diff]
2011-03-22
20:57
Rename remove to delete in OFMutableString. file: [776ba5ef40] check-in: [c9e2f6b548] user: js, branch: trunk, size: 23023 [annotate] [blame] [check-ins using] [diff]
2011-02-26
19:40
Use class swizzling as an optimization. file: [69044e1809] check-in: [06f539766f] user: js, branch: trunk, size: 23023 [annotate] [blame] [check-ins using] [diff]
2011-01-29
19:16
Use %@ where it is useful. file: [c1d0bcacb5] check-in: [d0eace5cd1] user: js, branch: trunk, size: 22334 [annotate] [blame] [check-ins using] [diff]
2011-01-01
20:19
Change license. file: [8fc69896c1] check-in: [da6b3d26cb] user: js, branch: trunk, size: 22365 [annotate] [blame] [check-ins using] [diff]
2010-12-20
15:51
OFXMLParser: Allow comments after the document root. file: [e8e4fcea92] check-in: [f40092db22] user: js, branch: trunk, size: 22109 [annotate] [blame] [check-ins using] [diff]
2010-12-09
23:45
Add -[lineNumber] to OFXMLParser. file: [d446a92ae5] check-in: [1e64693064] user: js, branch: trunk, size: 21959 [annotate] [blame] [check-ins using] [diff]
19:40
Add -[finishedParsing] to OFXMLParser. file: [8a551b940b] check-in: [58a72fc69b] user: js, branch: trunk, size: 21656 [annotate] [blame] [check-ins using] [diff]
19:19
Add -[parseStream] to OFXMLParser. file: [e24ed84b06] check-in: [964b6c41f0] user: js, branch: trunk, size: 21333 [annotate] [blame] [check-ins using] [diff]
2010-11-21
20:30
OFXMLParser: Correctly handle spaces in attributes. file: [d31bdbf69b] check-in: [aba290270b] user: js, branch: trunk, size: 21258 [annotate] [blame] [check-ins using] [diff]
00:34
OFXMLParser: Parse processing instructions. file: [d8c5285da7] check-in: [b31d5c02df] user: js, branch: trunk, size: 21118 [annotate] [blame] [check-ins using] [diff]
00:03
There is no compiler supporting blocks but not properties.
This allows us to always use properties for blocks.
file: [aa41ccd975] check-in: [aaf4e02cb8] user: js, branch: trunk, size: 20416 [annotate] [blame] [check-ins using] [diff]
2010-11-17
22:35
Add -[parseString:] and -[parseFile:] to OFXMLParser. file: [bcc7e9f4bd] check-in: [08fcb79a9b] user: js, branch: trunk, size: 21428 [annotate] [blame] [check-ins using] [diff]
2010-11-15
08:21
Reduce the number of states and correctly handle \t in OFXMLParser. file: [e26bece34a] check-in: [e23674756b] user: js, branch: trunk, size: 20848 [annotate] [blame] [check-ins using] [diff]
2010-11-14
23:49
Handle <!DOCTYPE> in OFXMLParser. file: [bafad23096] check-in: [2d28a0fda4] user: js, branch: trunk, size: 22640 [annotate] [blame] [check-ins using] [diff]
2010-11-12
13:37
Improve autoreleasing blocks. file: [686f9660a5] check-in: [09d6e5b6da] user: js, branch: trunk, size: 22033 [annotate] [blame] [check-ins using] [diff]
2010-10-25
23:03
Clean up a lot of code (mostly init methods) and fix a missing rethrow. file: [54f1adaa82] check-in: [8a7ca573c4] user: js, branch: trunk, size: 22488 [annotate] [blame] [check-ins using] [diff]
2010-10-24
23:31
Compare blocks to NULL instead of nil. Some old clang revs require this. file: [38257f6427] check-in: [39f8e079ef] user: js, branch: trunk, size: 22498 [annotate] [blame] [check-ins using] [diff]
2010-10-20
18:45
OFXMLParser uses a lookup table now and code readability was improved. file: [1eee225668] check-in: [2c0579cc0b] user: js, branch: trunk, size: 22489 [annotate] [blame] [check-ins using] [diff]
2010-10-05
19:59
Add support for blocks to OFXMLParser. file: [5826d56f73] check-in: [b5d7201385] user: js, branch: trunk, size: 19741 [annotate] [blame] [check-ins using] [diff]
2010-09-08
21:17
Fix Objective C++ compatibility. file: [f70ec8d4db] check-in: [9d6716470e] user: js, branch: trunk, size: 16354 [annotate] [blame] [check-ins using] [diff]
2010-09-05
23:19
Replace OFObject* with id in many places.

We assume now that every object understands retain, release, etc. so
that we can weaken the type from OFObject* to id. This makes it
possible to use different root object classes. file: [156503de2d] check-in: [e2b06423e0] user: js, branch: trunk, size: 16375 [annotate] [blame] [check-ins using] [diff]

2010-07-29
19:32
Comply with section 6.2 of XML namespaces.

More specifically to this:
"The namespace name for an unprefixed attribute name always has no
value." file: [0ff2c07a09] check-in: [ed63c0fdc1] user: js, branch: trunk, size: 16373 [annotate] [blame] [check-ins using] [diff]

2010-07-08
18:49
Resolve attribute namespaces after all attributes have been parsed. file: [86d4782143] check-in: [4c57833cfa] user: js, branch: trunk, size: 16543 [annotate] [blame] [check-ins using] [diff]
08:57
Don't retain + autorelease objects returned from collections.

This increases performance and should not need to be handled by the
programmer in most cases. file: [bc650a7105] check-in: [d4b379485a] user: js, branch: trunk, size: 15829 [annotate] [blame] [check-ins using] [diff]

2010-07-03
17:15
Skip over the prolog in OFXMLParser. Will be parsed someday. file: [f763218ad7] check-in: [e7801f415e] user: js, branch: trunk, size: 15827 [annotate] [blame] [check-ins using] [diff]
2010-07-02
21:05
Rename +[xmlParser] to +[parser]. file: [6520243b50] check-in: [c1f392e534] user: js, branch: trunk, size: 15581 [annotate] [blame] [check-ins using] [diff]
2010-06-16
19:54
Rename a methods in OFXMLParserDelegate and add -[parser:foundCDATA]. file: [b05b5824cd] check-in: [c53d661daf] user: js, branch: trunk, size: 15584 [annotate] [blame] [check-ins using] [diff]
2010-06-12
20:47
Move a few classes and categories so they have their own files. file: [86523e53cd] check-in: [67917b918a] user: js, branch: trunk, size: 15504 [annotate] [blame] [check-ins using] [diff]
19:47
Several OFXMLParser improvements. See details.

* found* renamed to didFind*.
* Support for parsing CDATA.
* Handle comments with - correctly.
* Don't strip leading and trailing whitespaces in comments.
* Rename a few states for more clarity.
* More OFXMLParser tests. file: [379d043fd1] check-in: [9d79d92d9a] user: js, branch: trunk, size: 18855 [annotate] [blame] [check-ins using] [diff]

2010-06-06
23:31
Fix a warning with Apple GCC 4.0.1. file: [04405d22e4] check-in: [889f63ab01] user: js, branch: trunk, size: 16299 [annotate] [blame] [check-ins using] [diff]
22:38
Fix partial parsing when only half of an UTF-8 char has been received. file: [11560d2f92] check-in: [b236334eaa] user: js, branch: trunk, size: 16270 [annotate] [blame] [check-ins using] [diff]
22:08
Correctly handle section 2.10 and 2.11 of XML 1.0. file: [20f13b2456] check-in: [bbbb105f5f] user: js, branch: trunk, size: 16032 [annotate] [blame] [check-ins using] [diff]
20:04
Support for namespaces in OFXMLElement and OFXMLParser. HUGE diff! file: [bab72d15ac] check-in: [e8c8d5a894] user: js, branch: trunk, size: 15993 [annotate] [blame] [check-ins using] [diff]
2010-05-13
18:27
Better handling of \n and \r in OFXMLParser. file: [cd6f6b17e5] check-in: [7aa0a50f2f] user: js, branch: trunk, size: 14120 [annotate] [blame] [check-ins using] [diff]
2010-04-30
14:16
Branch for 0.3. file: [a0c5faabf6] check-in: [7c4399b41c] user: js, branch: 0.3, size: 3834 [annotate] [blame] [check-ins using] [diff]
12:56
We can't use isUTF8 here as it might be an OFConstString. file: [e53641c3ce] check-in: [0166740a39] user: js, branch: trunk, size: 13904 [annotate] [blame] [check-ins using] [diff]
2010-04-17
22:27
New ivar naming convention.

ivars are now named like this: thisIsAnIVar. If an accessor exists for
the ivar, the ivar is named like the accessor. This is required for
@property to work. file: [3568485abb] check-in: [37db8f0fb3] user: js, branch: trunk, size: 13765 [annotate] [blame] [check-ins using] [diff]

15:46
Don't return self where not necessary, return void or something useful. file: [6ad29027d7] check-in: [062a052b50] user: js, branch: trunk, size: 13779 [annotate] [blame] [check-ins using] [diff]
2010-03-05
11:52
Merge a few changesets from the default branch into the 0.2 branch.

Changesets:
* b95fcaa6d694
* 804c68d222b4
* da8cd738da3d
* 1109d5ce3419
* d03f5c1ca95d
* 2a7017722165
* 4fccdc79eeb7
* d228149fbc04
* 8782d412a4a6 file: [005f6b607e] check-in: [b91a8283fe] user: js, branch: 0.2, size: 3673 [annotate] [blame] [check-ins using] [diff]

2010-02-19
16:36
Update copyright. file: [d44a79d5fd] check-in: [42886185fd] user: js, branch: trunk, size: 13772 [annotate] [blame] [check-ins using] [diff]
2010-02-02
18:58
Rename OFMacros.h to macros.h, as it's not a class. file: [b0986c8ab9] check-in: [832188d759] user: js, branch: trunk, size: 13772 [annotate] [blame] [check-ins using] [diff]
2010-01-30
21:07
Create 0.2 branch and remove unfinished XML stuff from it. file: [8d3fcc8d6d] check-in: [9a9211e963] user: js, branch: 0.2, size: 3673 [annotate] [blame] [check-ins using] [diff]
2010-01-16
15:05
Reduce dependencies between headers. file: [08dd8b2077] check-in: [1433aef0d0] user: js, branch: trunk, size: 13774 [annotate] [blame] [check-ins using] [diff]
14:43
Remove mutation methods from immutable classes' interfaces. file: [0e60b78004] check-in: [1348a32d47] user: js, branch: trunk, size: 13733 [annotate] [blame] [check-ins using] [diff]
2009-12-21
17:02
Create 0.1 branch and remove unfinished XML stuff from it. file: [5cb302c78f] check-in: [b3c14e1dfa] user: js, branch: 0.1, size: 3632 [annotate] [blame] [check-ins using] [diff]
2009-11-09
22:45
Rename libobjfw to ObjFW. file: [a671740547] check-in: [a3cc34b139] user: js, branch: trunk, size: 13702 [annotate] [blame] [check-ins using] [diff]
2009-10-06
12:29
Fix bug in decoding of lowercase &#xab;. file: [48540ae306] check-in: [1882b31eec] user: js, branch: trunk, size: 13705 [annotate] [blame] [check-ins using] [diff]
2009-10-04
12:45
Add of_unichar_t type. file: [adee3ee3bc] check-in: [8b162c7122] user: js, branch: trunk, size: 13705 [annotate] [blame] [check-ins using] [diff]
2009-10-03
21:24
Fix OFXMLParser so it passes indexes relative to Unicode characters. file: [3bf4893784] check-in: [a81bd93b41] user: js, branch: trunk, size: 13701 [annotate] [blame] [check-ins using] [diff]
21:12
Fix setting of is_utf8. file: [50080689c1] check-in: [f01153154d] user: js, branch: trunk, size: 13708 [annotate] [blame] [check-ins using] [diff]
13:29
Set variables to nil to prevent double-free. file: [3727e76ca7] check-in: [7a3968b9a3] user: js, branch: trunk, size: 13468 [annotate] [blame] [check-ins using] [diff]
2009-09-15
14:17
+[stringWithCString:length:] requires a \0 at the end of the string. file: [3c38909dd1] check-in: [16db39752c] user: js, branch: trunk, size: 13387 [annotate] [blame] [check-ins using] [diff]
2009-09-01
11:32
Rename -[length] to -[cStringLength] in OFString. file: [c146e3c2d9] check-in: [3ed599fe98] user: js, branch: trunk, size: 13374 [annotate] [blame] [check-ins using] [diff]
2009-08-27
17:52
Add -[removeCharactersFromIndex:toIndex:] to OFMutableString. file: [7614e5646f] check-in: [a9ff126697] user: js, branch: trunk, size: 13339 [annotate] [blame] [check-ins using] [diff]
2009-08-26
15:00
Add support for comments to OFXMLParser. file: [a3249dff8b] check-in: [6f61176375] user: js, branch: trunk, size: 13367 [annotate] [blame] [check-ins using] [diff]
14:24
Add default implementation for OFXMLParserDelegate. file: [dc40641988] check-in: [280071188d] user: js, branch: trunk, size: 12267 [annotate] [blame] [check-ins using] [diff]
2009-08-14
01:14
Remove leading and trailing whitespaces in XML data. file: [841823e28f] check-in: [164d9d84f2] user: js, branch: trunk, size: 11694 [annotate] [blame] [check-ins using] [diff]
2009-08-12
16:55
New way for handling and storing XML attributes. file: [eb5533890d] check-in: [6f001b8016] user: js, branch: trunk, size: 11478 [annotate] [blame] [check-ins using] [diff]
2009-08-10
18:37
More checking for malformed/invalid XML. file: [c9bc88e2c8] check-in: [a70d90b09e] user: js, branch: trunk, size: 10959 [annotate] [blame] [check-ins using] [diff]
2009-07-21
16:08
Fix wrong order of retain / release. file: [ee7d38a3f9] check-in: [a7b6d69e14] user: js, branch: trunk, size: 10443 [annotate] [blame] [check-ins using] [diff]
2009-07-19
20:39
Add -[xmlParser:foundUnknownEntityNamed:] to OFXMLParserDelegate. file: [8b1f567d63] check-in: [83c351c9fd] user: js, branch: trunk, size: 10431 [annotate] [blame] [check-ins using] [diff]
14:05
Rename andFoo: to foo: in all methods. file: [47f877a838] check-in: [4eae61a78f] user: js, branch: trunk, size: 10166 [annotate] [blame] [check-ins using] [diff]
2009-07-17
17:17
Two minor changes. file: [9cf8e5058f] check-in: [5eae1c66bc] user: js, branch: trunk, size: 10225 [annotate] [blame] [check-ins using] [diff]
15:16
Initial OFXMLParser implementation. There's still a LOT missing.

Missing stuff includes proper namespace handling, handling of comments,
handling of <?xml ...?>, error handling and much more. file: [2e574ba290] check-in: [8f4d7a5b74] user: js, branch: trunk, size: 10219 [annotate] [blame] [check-ins using] [diff]

2009-07-14
21:58
Also parse &#NNNN; and &#xHHHH; in -[stringByXMLUnescaping]. file: [8929707b71] check-in: [a80e9b948d] user: js, branch: trunk, size: 3673 [annotate] [blame] [check-ins using] [diff]
18:57
Added: Add OFString (OFXMLUnescaping) category and API for OFXMLParser. file: [b77468664e] check-in: [d8684fc232] user: js, branch: trunk, size: 2439 [annotate] [blame] [check-ins using]