Skip to content

Decompiler Feature Request: support UnionCaseTest expressions #3

@GoogleCodeExporter

Description

@GoogleCodeExporter
For example,

source <@ let [a;b] = [1;2] in a,b @>

produces

let patternInput = [1; 2] in if UnionCaseTest (patternInput, FSharpList`1.Cons) 
then (if UnionCaseTest (PropertyGet (Some (patternInput),
                            Microsoft.FSharp.Collections.FSharpList`1[System.Int32] Tail,
                            []), FSharpList`1.Cons) then (if UnionCaseTest (PropertyGet (Some (PropertyGet (Some (patternInput),
                                               Microsoft.FSharp.Collections.FSharpList`1[System.Int32] Tail,
                                               [])),
                            Microsoft.FSharp.Collections.FSharpList`1[System.Int32] Tail,
                            []), FSharpList`1.Empty) then (let a = patternInput.Head in let b = patternInput.Tail.Head in (a, b)) else raise (MatchFailureException("stdin", 18, 14))) else raise (MatchFailureException("stdin", 18, 14))) else raise (MatchFailureException("stdin", 18, 14))

Original issue reported on code.google.com by stephen....@gmail.com on 15 Feb 2011 at 1:29

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions