objc: Added a way to truncate descriptions of long data descriptors.#4
Open
abarnert wants to merge 1 commit intomattneub:masterfrom
Open
objc: Added a way to truncate descriptions of long data descriptors.#4abarnert wants to merge 1 commit intomattneub:masterfrom
abarnert wants to merge 1 commit intomattneub:masterfrom
Conversation
- Added one method, `+[AEMObjectRenderer setDataDescriptionTruncation:]`. When set to `maxBytes`, this affects the description of any descriptor that describes as hex bytes, so that only the first `maxBytes` will be displayed, followed by an ellipsis. - This is primarily useful when debugging AE interfaces that send large hunks of binary data around, such as iTunes cover art. The first few bytes of the artwork's data object are enough to tell whether you're getting a PNG or a PICT; the remaining 200K chars do nothing but make the logs harder to read and search. - Since the data descriptor may be embedded in some other object, the most reasonable place to put the truncation is inside its `description` (or, rather, in `+[formatObject:indent:result:]`, the recursive function that does the actual formatting underlying `description`). - Truncation is off by default, because sometimes you _do_ want all 200K (e.g., so you can parse the logs, unhexlify the bytes, save them as a file, and see if they're the PICT you expected).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
+[AEMObjectRenderer setDataDescriptionTruncation:].When set to
maxBytes, this affects the description of any descriptorthat describes as hex bytes, so that only the first
maxByteswill bedisplayed, followed by an ellipsis.
large hunks of binary data around, such as iTunes cover art. The
first few bytes of the artwork's data object are enough to tell
whether you're getting a PNG or a PICT; the remaining 200K chars do
nothing but make the logs harder to read and search.
most reasonable place to put the truncation is inside its
description(or, rather, in+[formatObject:indent:result:], therecursive function that does the actual formatting underlying
description).200K (e.g., so you can parse the logs, unhexlify the bytes, save
them as a file, and see if they're the PICT you expected).