Clojure

Audit IReduce usages for proper Reduced handling

Details

  • Type: Defect Defect
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Completed
  • Affects Version/s: Release 1.7
  • Fix Version/s: Release 1.7
  • Component/s: None
  • Labels:
    None
  • Patch:
    Code

Description

Rich asked that we make sure that all usages of IReduce properly handle Reduced semantics.

Approach: I did a "Find Usages" in InteliJ and updated usages of IReduce as needed.

Example: Before the patch:

user=> (transduce (take 1) conj (seq (subvec [1 2 3 4 5] 1)))
#<Reduced@13df2a8c: #<Reduced@1ebea008: #<Reduced@72d6b3ba: #<Reduced@1787f2a0: [2]>>>>

user=> (transduce (take 1) conj '(1 2 3 4))
#<Reduced@51bd8b5c: #<Reduced@7b50df34: #<Reduced@1b410b60: #<Reduced@2462cb01: [1]>>>>

Patch: clj-1537-v3.diff
Screened by: Alex Miller

  1. audit-ireduce.diff
    26/Sep/14 11:16 AM
    2 kB
    Timothy Baldridge
  2. clj-1537-gvec-ArraySeq.patch
    14/Nov/14 1:00 PM
    7 kB
    Nicola Mometto
  3. clj-1537-v2.diff
    30/Sep/14 5:59 PM
    2 kB
    Alex Miller
  4. clj-1537-v3.diff
    03/Oct/14 2:23 PM
    2 kB
    Timothy Baldridge

Activity

People

Vote (0)
Watch (2)

Dates

  • Created:
    Updated:
    Resolved: