Packages

Erlang code generator for Idris 2

Current section

Files

Jump to
idris2 src Idris.Idris2.Utils.Path.erl
Raw

src/Idris.Idris2.Utils.Path.erl

-module('Idris.Idris2.Utils.Path').
-compile('no_auto_import').
-compile('inline').
-compile({'inline_size',24}).
-export([
'case--case block in <.>-3881'/7,
'case--<.>-3864'/6,
'case--<.>-3838'/5,
'case--case block in case block in stripPrefix-3742'/11,
'case--case block in stripPrefix-3697'/7,
'case--stripPrefix-3687'/3,
'case--stripPrefix,stripBody-3657'/7,
'case--splitParent-3591'/2,
'case--splitFileName-3502'/2,
'case--setFileName\x{27}-3475'/3,
'case--case block in splitParent\x{27}-3431'/3,
'case--splitParent\x{27}-3391'/2,
'case--case block in case block in append\x{27}-3382'/2,
'case--case block in case block in append\x{27}-3367'/2,
'case--case block in append\x{27}-3354'/3,
'case--append\x{27}-3341'/3,
'case--case block in isAbsolute\x{27}-3314'/2,
'case--isAbsolute\x{27}-3307'/2,
'case--parse-3287'/2,
'case--parsePath-3253'/5,
'case--parsePath-3215'/5,
'case--parseBody-3143'/1,
'case--disk-3065'/2,
'case--lexPath-2780'/2,
'case--show-2635'/6,
'case--show-2613'/4,
'case--pathSeparator-2404'/1,
'case--dirSeparator-2399'/1,
'nested--4124-3637--in--un--stripBody'/4,
'nested--3929-3456--in--un--findNormal'/2,
'dn--un--tokValue_TokenKind__PathTokenKind'/2,
'dn--un--show_Show__Volume'/1,
'dn--un--show_Show__Path'/1,
'dn--un--show_Show__Body'/1,
'dn--un--showPrec_Show__Volume'/2,
'dn--un--showPrec_Show__Path'/2,
'dn--un--showPrec_Show__Body'/2,
'dn--un--__Impl_TokenKind_PathTokenKind'/0,
'dn--un--__Impl_Show_Volume'/0,
'dn--un--__Impl_Show_Path'/0,
'dn--un--__Impl_Show_Body'/0,
'dn--un--__Impl_Eq_Volume'/0,
'dn--un--__Impl_Eq_PathTokenKind'/0,
'dn--un--__Impl_Eq_Path'/0,
'dn--un--__Impl_Eq_Body'/0,
'dn--un--TokType_TokenKind__PathTokenKind'/1,
'dn--un--==_Eq__Volume'/2,
'dn--un--==_Eq__PathTokenKind'/2,
'dn--un--==_Eq__Path'/2,
'dn--un--==_Eq__Body'/2,
'dn--un--/=_Eq__Volume'/2,
'dn--un--/=_Eq__PathTokenKind'/2,
'dn--un--/=_Eq__Path'/2,
'dn--un--/=_Eq__Body'/2,
'un--verbatimUnc'/0,
'un--verbatimDisk'/0,
'un--verbatim'/0,
'un--unc'/0,
'un--stripPrefix'/2,
'un--startWith'/2,
'un--splitParent\x{27}'/1,
'un--splitParent'/1,
'un--splitFileName'/1,
'un--setFileName\x{27}'/2,
'un--setFileName'/2,
'un--pathTokenMap'/0,
'un--pathSeparator'/0,
'un--parseVolume'/0,
'un--parsePath'/0,
'un--parseBody'/0,
'un--parse'/1,
'un--parents'/1,
'un--parent\x{27}'/1,
'un--parent'/1,
'un--lexPath'/1,
'un--joinPath'/1,
'un--isRelative'/1,
'un--isAbsolute\x{27}'/1,
'un--isAbsolute'/1,
'un--fileStem'/1,
'un--fileName\x{27}'/1,
'un--fileName'/1,
'un--extension'/1,
'un--emptyPath'/0,
'un--disk'/0,
'un--dirSeparator'/0,
'un--bodySeparator'/0,
'un--append\x{27}'/2,
'un--PathToken'/0,
'un--</>'/2,
'un--<.>'/2
]).
'case--case block in <.>-3881'(V0, V1, V2, V3, V4, V5, V6) -> case V6 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V7, V8) -> ('dn--un--show_Show__Path'(('un--setFileName\x{27}'(('Idris.Idris2.Prelude.Types.Strings':'un--++'(V7, V4)), V2)))) end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--<.>-3864'(V0, V1, V2, V3, V4, V5) -> case V5 of {'Idris.Prelude.Types.Just', E0} -> (fun (V6) -> ('case--case block in <.>-3881'(V0, V1, V2, V3, V4, V6, ('un--splitFileName'(V6)))) end(E0)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> V1 end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--<.>-3838'(V0, V1, V2, V3, V4) -> case V4 of 0 -> <<""/utf8>>; 1 -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"."/utf8>>, V3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--case block in case block in stripPrefix-3742'(V0, V1, V2, V3, V4, V5, V6, V7, V8, V9, V10) -> case V10 of 0 -> {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkUnit'}}; 1 -> {'Idris.Prelude.Types.Nothing'}; _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--case block in stripPrefix-3697'(V0, V1, V2, V3, V4, V5, V6) -> case V6 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V7, V8, V9, V10) -> ('Idris.Idris2.Prelude.Types':'dn--un-->>=_Monad__Maybe'('erased', 'erased', ('case--case block in case block in stripPrefix-3742'(V0, V1, V2, V3, V4, V5, V10, V9, V8, V7, ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Prelude.Types':'dn--un--==_Eq__(Maybe $a)'('erased', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V11) -> fun (V12) -> ('dn--un--==_Eq__Volume'(V11, V12)) end end, fun (V13) -> fun (V14) -> ('dn--un--/=_Eq__Volume'(V13, V14)) end end}, V5, V7)), fun () -> ('Idris.Idris2.Prelude.EqOrd':'dn--un--==_Eq__Bool'(V4, V8)) end)))), fun (V15) -> ('Idris.Idris2.Prelude.Types':'dn--un-->>=_Monad__Maybe'('erased', 'erased', ('nested--4124-3637--in--un--stripBody'(V0, V1, V3, V9)), fun (V16) -> ('Idris.Idris2.Prelude.Types':'dn--un--pure_Applicative__Maybe'('erased', ('dn--un--show_Show__Path'({'Idris.Utils.Path.MkPath', {'Idris.Prelude.Types.Nothing'}, 1, V16, V10})))) end)) end)) end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--stripPrefix-3687'(V0, V1, V2) -> case V2 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V3, V4, V5, V6) -> ('case--case block in stripPrefix-3697'(V0, V1, V6, V5, V4, V3, ('un--parse'(V0)))) end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--stripPrefix,stripBody-3657'(V0, V1, V2, V3, V4, V5, V6) -> case V6 of 0 -> ('nested--4124-3637--in--un--stripBody'(V0, V1, V3, V5)); 1 -> {'Idris.Prelude.Types.Nothing'}; _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--splitParent-3591'(V0, V1) -> case V1 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V2, V3) -> ('Idris.Idris2.Prelude.Types':'dn--un--pure_Applicative__Maybe'('erased', {'Idris.Builtin.MkPair', ('dn--un--show_Show__Path'(V2)), ('dn--un--show_Show__Path'(V3))})) end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--splitFileName-3502'(V0, V1) -> case V1 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V2, V3) -> case V3 of [] -> {'Idris.Builtin.MkPair', V0, <<""/utf8>>}; [E2 | E3] -> (fun (V4, V5) -> case V4 of $. -> case V5 of [] -> {'Idris.Builtin.MkPair', V0, <<""/utf8>>}; _ -> {'Idris.Builtin.MkPair', ('Idris.Idris2.Prelude.Types':'un--pack'(('Idris.Idris2.Data.List':'un--reverse'('erased', V5)))), ('Idris.Idris2.Prelude.Types':'un--pack'(('Idris.Idris2.Data.List':'un--reverse'('erased', V2))))} end; _ -> {'Idris.Builtin.MkPair', ('Idris.Idris2.Prelude.Types':'un--pack'(('Idris.Idris2.Data.List':'un--reverse'('erased', V5)))), ('Idris.Idris2.Prelude.Types':'un--pack'(('Idris.Idris2.Data.List':'un--reverse'('erased', V2))))} end end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--setFileName\x{27}-3475'(V0, V1, V2) -> case V2 of 0 -> ('un--append\x{27}'(('Idris.Idris2.Data.Maybe':'un--fromMaybe'('erased', fun () -> ('un--emptyPath'()) end, ('un--parent\x{27}'(V0)))), ('un--parse'(V1)))); 1 -> ('un--append\x{27}'(V0, ('un--parse'(V1)))); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--case block in splitParent\x{27}-3431'(V0, V1, V2) -> case V0 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V3, V4, V5, V6) -> {'Idris.Utils.Path.MkPath', V3, V4, ('Idris.Idris2.Data.List':'un--init'('erased', [V1 | V2], 'erased')), 1} end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--splitParent\x{27}-3391'(V0, V1) -> case V1 of [] -> {'Idris.Prelude.Types.Nothing'}; [E0 | E1] -> (fun (V2, V3) -> begin (V8 = case V0 of {'Idris.Utils.Path.MkPath', E2, E3, E4, E5} -> (fun (V4, V5, V6, V7) -> {'Idris.Utils.Path.MkPath', V4, V5, ('Idris.Idris2.Data.List':'un--init'('erased', [V2 | V3], 'erased')), 1} end(E2, E3, E4, E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end), begin (V13 = {'Idris.Utils.Path.MkPath', {'Idris.Prelude.Types.Nothing'}, 1, [('Idris.Idris2.Data.List':'un--last'('erased', [V2 | V3], 'erased')) | []], case V0 of {'Idris.Utils.Path.MkPath', E6, E7, E8, E9} -> (fun (V9, V10, V11, V12) -> V12 end(E6, E7, E8, E9)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end}), {'Idris.Prelude.Types.Just', {'Idris.Builtin.MkPair', V8, V13}} end end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--case block in case block in append\x{27}-3382'(V0, V1) -> case V1 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V2, V3, V4, V5) -> {'Idris.Utils.Path.MkPath', V2, V3, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', case V1 of {'Idris.Utils.Path.MkPath', E4, E5, E6, E7} -> (fun (V6, V7, V8, V9) -> V8 end(E4, E5, E6, E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, case V0 of {'Idris.Utils.Path.MkPath', E8, E9, E10, E11} -> (fun (V10, V11, V12, V13) -> V12 end(E8, E9, E10, E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)), case V0 of {'Idris.Utils.Path.MkPath', E12, E13, E14, E15} -> (fun (V14, V15, V16, V17) -> V17 end(E12, E13, E14, E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end} end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--case block in case block in append\x{27}-3367'(V0, V1) -> case V0 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V2, V3, V4, V5) -> {'Idris.Utils.Path.MkPath', case V1 of {'Idris.Utils.Path.MkPath', E4, E5, E6, E7} -> (fun (V6, V7, V8, V9) -> V6 end(E4, E5, E6, E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V3, V4, V5} end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--case block in append\x{27}-3354'(V0, V1, V2) -> case V2 of 0 -> case V0 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V3, V4, V5, V6) -> {'Idris.Utils.Path.MkPath', case V1 of {'Idris.Utils.Path.MkPath', E4, E5, E6, E7} -> (fun (V7, V8, V9, V10) -> V7 end(E4, E5, E6, E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, V4, V5, V6} end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end; 1 -> case V1 of {'Idris.Utils.Path.MkPath', E8, E9, E10, E11} -> (fun (V11, V12, V13, V14) -> {'Idris.Utils.Path.MkPath', V11, V12, ('Idris.Idris2.Prelude.Types.List':'un--++'('erased', case V1 of {'Idris.Utils.Path.MkPath', E12, E13, E14, E15} -> (fun (V15, V16, V17, V18) -> V17 end(E12, E13, E14, E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end, case V0 of {'Idris.Utils.Path.MkPath', E16, E17, E18, E19} -> (fun (V19, V20, V21, V22) -> V21 end(E16, E17, E18, E19)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)), case V0 of {'Idris.Utils.Path.MkPath', E20, E21, E22, E23} -> (fun (V23, V24, V25, V26) -> V26 end(E20, E21, E22, E23)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end} end(E8, E9, E10, E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end; _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--append\x{27}-3341'(V0, V1, V2) -> case V2 of 0 -> V0; 1 -> ('case--case block in append\x{27}-3354'(V0, V1, case V0 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V3, V4, V5, V6) -> V4 end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--case block in isAbsolute\x{27}-3314'(V0, V1) -> case V1 of {'Idris.Prelude.Types.Just', E0} -> (fun (V2) -> case V2 of {'Idris.Utils.Path.UNC', E1, E2} -> (fun (V3, V4) -> 0 end(E1, E2)); {'Idris.Utils.Path.Disk', E3} -> (fun (V5) -> case V0 of {'Idris.Utils.Path.MkPath', E4, E5, E6, E7} -> (fun (V6, V7, V8, V9) -> V7 end(E4, E5, E6, E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0)); {'Idris.Prelude.Types.Nothing'} -> (fun () -> 1 end()); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--isAbsolute\x{27}-3307'(V0, V1) -> case V1 of 0 -> ('case--case block in isAbsolute\x{27}-3314'(V0, case V0 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V2, V3, V4, V5) -> V2 end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)); 1 -> case V0 of {'Idris.Utils.Path.MkPath', E4, E5, E6, E7} -> (fun (V6, V7, V8, V9) -> V7 end(E4, E5, E6, E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end; _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--parse-3287'(V0, V1) -> case V1 of {'Idris.Prelude.Types.Right', E0} -> (fun (V2) -> case V2 of {'Idris.Builtin.MkPair', E1, E2} -> (fun (V3, V4) -> V3 end(E1, E2)); _ -> ('un--emptyPath'()) end end(E0)); _ -> ('un--emptyPath'()) end.
'case--parsePath-3253'(V0, V1, V2, V3, V4) -> case V4 of [] -> []; [E0 | E1] -> (fun (V5, V6) -> [V5 | ('Idris.Idris2.Data.List':'un--delete'('erased', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V7) -> fun (V8) -> ('dn--un--==_Eq__Body'(V7, V8)) end end, fun (V9) -> fun (V10) -> ('dn--un--/=_Eq__Body'(V9, V10)) end end}, {'Idris.Utils.Path.CurDir'}, V6))] end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--parsePath-3215'(V0, V1, V2, V3, V4) -> case V4 of {'Idris.Utils.Path.Normal', E0} -> (fun (V5) -> ('Idris.Idris2.Prelude.EqOrd':'dn--un--/=_Eq__String'(('Idris.Idris2.Data.Strings':'un--ltrim'(V5)), <<""/utf8>>)) end(E0)); _ -> 0 end.
'case--parseBody-3143'(V0) -> case V0 of <<".."/utf8>> -> {'Idris.Text.Parser.Core.Empty', {'Idris.Utils.Path.ParentDir'}}; <<"."/utf8>> -> {'Idris.Text.Parser.Core.Empty', {'Idris.Utils.Path.CurDir'}}; _ -> {'Idris.Text.Parser.Core.Empty', {'Idris.Utils.Path.Normal', V0}} end.
'case--disk-3065'(V0, V1) -> case V1 of [E0 | E1] -> (fun (V2, V3) -> {'Idris.Text.Parser.Core.Empty', V2} end(E0, E1)); [] -> {'Idris.Text.Parser.Core.Fail', 1, <<"Expect Disk"/utf8>>}; _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--lexPath-2780'(V0, V1) -> case V1 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V2, V3) -> case V3 of {'Idris.Builtin.MkPair', E2, E3} -> (fun (V4, V5) -> case V5 of {'Idris.Builtin.MkPair', E4, E5} -> (fun (V6, V7) -> V2 end(E4, E5)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--show-2635'(V0, V1, V2, V3, V4, V5) -> case V5 of 0 -> V1; 1 -> <<""/utf8>>; _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--show-2613'(V0, V1, V2, V3) -> case V3 of 0 -> V1; 1 -> <<""/utf8>>; _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--pathSeparator-2404'(V0) -> case V0 of 0 -> $;; 1 -> $:; _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'case--dirSeparator-2399'(V0) -> case V0 of 0 -> $\x{5c}; 1 -> $/; _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'nested--4124-3637--in--un--stripBody'(V0, V1, V2, V3) -> case V2 of [] -> {'Idris.Prelude.Types.Just', V3}; _ -> case V3 of [] -> {'Idris.Prelude.Types.Nothing'}; _ -> case V2 of [E0 | E1] -> (fun (V4, V5) -> case V3 of [E2 | E3] -> (fun (V6, V7) -> ('case--stripPrefix,stripBody-3657'(V0, V1, V4, V5, V6, V7, ('dn--un--==_Eq__Body'(V4, V6)))) end(E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end end.
'nested--3929-3456--in--un--findNormal'(V0, V1) -> case V1 of [E0 | E1] -> (fun (V2, V3) -> case V2 of {'Idris.Utils.Path.Normal', E2} -> (fun (V4) -> {'Idris.Prelude.Types.Just', V4} end(E2)); {'Idris.Utils.Path.CurDir'} -> (fun () -> ('nested--3929-3456--in--un--findNormal'(V0, V3)) end()); _ -> {'Idris.Prelude.Types.Nothing'} end end(E0, E1)); _ -> {'Idris.Prelude.Types.Nothing'} end.
'dn--un--tokValue_TokenKind__PathTokenKind'(V0, V1) -> case V0 of {'Idris.Utils.Path.PTText'} -> (fun () -> V1 end()); {'Idris.Utils.Path.PTPunct', E0} -> (fun (V2) -> {'Idris.Builtin.MkUnit'} end(E0)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'dn--un--show_Show__Volume'(V0) -> case V0 of {'Idris.Utils.Path.UNC', E0, E1} -> (fun (V1, V2) -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"\x{5c}\x{5c}"/utf8>>, ('Idris.Idris2.Prelude.Types.Strings':'un--++'(V1, ('Idris.Idris2.Prelude.Types.Strings':'un--++'(<<"\x{5c}"/utf8>>, V2)))))) end(E0, E1)); {'Idris.Utils.Path.Disk', E2} -> (fun (V3) -> ('Idris.Idris2.Prelude.Types.Strings':'un--++'(('Idris.Idris2.Data.Strings':'un--singleton'(V3)), <<":"/utf8>>)) end(E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'dn--un--show_Show__Path'(V0) -> begin (V1 = ('Idris.Idris2.Data.Strings':'un--singleton'(('un--dirSeparator'())))), begin (V7 = ('Idris.Idris2.Data.Maybe':'un--fromMaybe'('erased', fun () -> <<""/utf8>> end, ('Idris.Idris2.Prelude.Types':'dn--un--map_Functor__Maybe'('erased', 'erased', fun (V2) -> ('dn--un--show_Show__Volume'(V2)) end, case V0 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V3, V4, V5, V6) -> V3 end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))))), begin (V12 = ('case--show-2613'(V0, V1, V7, case V0 of {'Idris.Utils.Path.MkPath', E4, E5, E6, E7} -> (fun (V8, V9, V10, V11) -> V9 end(E4, E5, E6, E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))), begin (V28 = ('Idris.Idris2.Data.String.Extra':'un--join'('erased', V1, {'Idris.Prelude.Interfaces.dn--un--__mkFoldable', fun (V13) -> fun (V14) -> fun (V15) -> fun (V16) -> fun (V17) -> ('Idris.Idris2.Prelude.Types':'dn--un--foldr_Foldable__List'('erased', 'erased', V15, V16, V17)) end end end end end, fun (V18) -> fun (V19) -> fun (V20) -> fun (V21) -> fun (V22) -> ('Idris.Idris2.Prelude.Types':'dn--un--foldl_Foldable__List'('erased', 'erased', V20, V21, V22)) end end end end end}, ('Idris.Idris2.Prelude.Types':'dn--un--map_Functor__List'('erased', 'erased', fun (V23) -> ('dn--un--show_Show__Body'(V23)) end, case V0 of {'Idris.Utils.Path.MkPath', E8, E9, E10, E11} -> (fun (V24, V25, V26, V27) -> V26 end(E8, E9, E10, E11)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))))), begin (V33 = ('case--show-2635'(V0, V1, V7, V12, V28, case V0 of {'Idris.Utils.Path.MkPath', E12, E13, E14, E15} -> (fun (V29, V30, V31, V32) -> V32 end(E12, E13, E14, E15)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end))), ('Idris.Idris2.Prelude.Types.Strings':'un--++'(V7, ('Idris.Idris2.Prelude.Types.Strings':'un--++'(V12, ('Idris.Idris2.Prelude.Types.Strings':'un--++'(V28, V33)))))) end end end end end.
'dn--un--show_Show__Body'(V0) -> case V0 of {'Idris.Utils.Path.CurDir'} -> (fun () -> <<"."/utf8>> end()); {'Idris.Utils.Path.ParentDir'} -> (fun () -> <<".."/utf8>> end()); {'Idris.Utils.Path.Normal', E0} -> (fun (V1) -> V1 end(E0)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'dn--un--showPrec_Show__Volume'(V0, V1) -> ('dn--un--show_Show__Volume'(V1)).
'dn--un--showPrec_Show__Path'(V0, V1) -> ('dn--un--show_Show__Path'(V1)).
'dn--un--showPrec_Show__Body'(V0, V1) -> ('dn--un--show_Show__Body'(V1)).
'dn--un--__Impl_TokenKind_PathTokenKind'() -> {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V0) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V0)) end, fun (V1) -> fun (V2) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V1, V2)) end end}.
'dn--un--__Impl_Show_Volume'() -> {'Idris.Prelude.Show.dn--un--__mkShow', fun (V0) -> ('dn--un--show_Show__Volume'(V0)) end, fun (V1) -> fun (V2) -> ('dn--un--showPrec_Show__Volume'(V1, V2)) end end}.
'dn--un--__Impl_Show_Path'() -> {'Idris.Prelude.Show.dn--un--__mkShow', fun (V0) -> ('dn--un--show_Show__Path'(V0)) end, fun (V1) -> fun (V2) -> ('dn--un--showPrec_Show__Path'(V1, V2)) end end}.
'dn--un--__Impl_Show_Body'() -> {'Idris.Prelude.Show.dn--un--__mkShow', fun (V0) -> ('dn--un--show_Show__Body'(V0)) end, fun (V1) -> fun (V2) -> ('dn--un--showPrec_Show__Body'(V1, V2)) end end}.
'dn--un--__Impl_Eq_Volume'() -> {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V0) -> fun (V1) -> ('dn--un--==_Eq__Volume'(V0, V1)) end end, fun (V2) -> fun (V3) -> ('dn--un--/=_Eq__Volume'(V2, V3)) end end}.
'dn--un--__Impl_Eq_PathTokenKind'() -> {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V0) -> fun (V1) -> ('dn--un--==_Eq__PathTokenKind'(V0, V1)) end end, fun (V2) -> fun (V3) -> ('dn--un--/=_Eq__PathTokenKind'(V2, V3)) end end}.
'dn--un--__Impl_Eq_Path'() -> {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V0) -> fun (V1) -> ('dn--un--==_Eq__Path'(V0, V1)) end end, fun (V2) -> fun (V3) -> ('dn--un--/=_Eq__Path'(V2, V3)) end end}.
'dn--un--__Impl_Eq_Body'() -> {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V0) -> fun (V1) -> ('dn--un--==_Eq__Body'(V0, V1)) end end, fun (V2) -> fun (V3) -> ('dn--un--/=_Eq__Body'(V2, V3)) end end}.
'dn--un--TokType_TokenKind__PathTokenKind'(V0) -> case V0 of {'Idris.Utils.Path.PTText'} -> (fun () -> {'Idris.String'} end()); {'Idris.Utils.Path.PTPunct', E0} -> (fun (V1) -> {'Idris.Builtin.Unit'} end(E0)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'dn--un--==_Eq__Volume'(V0, V1) -> case V0 of {'Idris.Utils.Path.UNC', E0, E1} -> (fun (V2, V3) -> case V1 of {'Idris.Utils.Path.UNC', E2, E3} -> (fun (V4, V5) -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Prelude.EqOrd':'dn--un--==_Eq__String'(V2, V4)), fun () -> ('Idris.Idris2.Prelude.EqOrd':'dn--un--==_Eq__String'(V4, V5)) end)) end(E2, E3)); _ -> 1 end end(E0, E1)); {'Idris.Utils.Path.Disk', E4} -> (fun (V6) -> case V1 of {'Idris.Utils.Path.Disk', E5} -> (fun (V7) -> ('Idris.Idris2.Prelude.EqOrd':'dn--un--==_Eq__Char'(V6, V7)) end(E5)); _ -> 1 end end(E4)); _ -> 1 end.
'dn--un--==_Eq__PathTokenKind'(V0, V1) -> case V0 of {'Idris.Utils.Path.PTText'} -> (fun () -> case V1 of {'Idris.Utils.Path.PTText'} -> (fun () -> 0 end()); _ -> 1 end end()); {'Idris.Utils.Path.PTPunct', E0} -> (fun (V2) -> case V1 of {'Idris.Utils.Path.PTPunct', E1} -> (fun (V3) -> ('Idris.Idris2.Prelude.EqOrd':'dn--un--==_Eq__Char'(V2, V3)) end(E1)); _ -> 1 end end(E0)); _ -> 1 end.
'dn--un--==_Eq__Path'(V0, V1) -> case V0 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V2, V3, V4, V5) -> case V1 of {'Idris.Utils.Path.MkPath', E4, E5, E6, E7} -> (fun (V6, V7, V8, V9) -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Prelude.Types':'dn--un--==_Eq__(Maybe $a)'('erased', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V10) -> fun (V11) -> ('dn--un--==_Eq__Volume'(V10, V11)) end end, fun (V12) -> fun (V13) -> ('dn--un--/=_Eq__Volume'(V12, V13)) end end}, V2, V6)), fun () -> ('Idris.Idris2.Prelude.Basics':'un--&&'(('Idris.Idris2.Prelude.EqOrd':'dn--un--==_Eq__Bool'(V3, V7)), fun () -> ('Idris.Idris2.Prelude.Types':'dn--un--==_Eq__(List $a)'('erased', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V14) -> fun (V15) -> ('dn--un--==_Eq__Body'(V14, V15)) end end, fun (V16) -> fun (V17) -> ('dn--un--/=_Eq__Body'(V16, V17)) end end}, V4, V8)) end)) end)) end(E4, E5, E6, E7)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end.
'dn--un--==_Eq__Body'(V0, V1) -> case V0 of {'Idris.Utils.Path.CurDir'} -> (fun () -> case V1 of {'Idris.Utils.Path.CurDir'} -> (fun () -> 0 end()); _ -> 1 end end()); {'Idris.Utils.Path.ParentDir'} -> (fun () -> case V1 of {'Idris.Utils.Path.ParentDir'} -> (fun () -> 0 end()); _ -> 1 end end()); {'Idris.Utils.Path.Normal', E0} -> (fun (V2) -> case V1 of {'Idris.Utils.Path.Normal', E1} -> (fun (V3) -> ('Idris.Idris2.Prelude.EqOrd':'dn--un--==_Eq__String'(V2, V3)) end(E1)); _ -> 1 end end(E0)); _ -> 1 end.
'dn--un--/=_Eq__Volume'(V0, V1) -> ('Idris.Idris2.Prelude.Basics':'un--not'(('dn--un--==_Eq__Volume'(V0, V1)))).
'dn--un--/=_Eq__PathTokenKind'(V0, V1) -> ('Idris.Idris2.Prelude.Basics':'un--not'(('dn--un--==_Eq__PathTokenKind'(V0, V1)))).
'dn--un--/=_Eq__Path'(V0, V1) -> ('Idris.Idris2.Prelude.Basics':'un--not'(('dn--un--==_Eq__Path'(V0, V1)))).
'dn--un--/=_Eq__Body'(V0, V1) -> ('Idris.Idris2.Prelude.Basics':'un--not'(('dn--un--==_Eq__Body'(V0, V1)))).
'un--verbatimUnc'() -> {'Idris.Text.Parser.Core.SeqEat', 0, ('un--verbatim'()), fun () -> fun (V0) -> {'Idris.Text.Parser.Core.SeqEat', 0, ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V1) -> fun (V2) -> ('dn--un--==_Eq__PathTokenKind'(V1, V2)) end end, fun (V3) -> fun (V4) -> ('dn--un--/=_Eq__PathTokenKind'(V3, V4)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V5) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V5)) end, fun (V6) -> fun (V7) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V6, V7)) end end}}, {'Idris.Utils.Path.PTText'})), fun () -> fun (V8) -> {'Idris.Text.Parser.Core.SeqEat', 0, ('un--bodySeparator'()), fun () -> fun (V9) -> {'Idris.Text.Parser.Core.SeqEat', 1, ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V10) -> fun (V11) -> ('dn--un--==_Eq__PathTokenKind'(V10, V11)) end end, fun (V12) -> fun (V13) -> ('dn--un--/=_Eq__PathTokenKind'(V12, V13)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V14) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V14)) end, fun (V15) -> fun (V16) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V15, V16)) end end}}, {'Idris.Utils.Path.PTText'})), fun () -> fun (V17) -> {'Idris.Text.Parser.Core.Empty', {'Idris.Utils.Path.UNC', V8, V17}} end end} end end} end end} end end}.
'un--verbatimDisk'() -> {'Idris.Text.Parser.Core.SeqEat', 0, ('un--verbatim'()), fun () -> fun (V0) -> {'Idris.Text.Parser.Core.SeqEat', 1, ('un--disk'()), fun () -> fun (V1) -> {'Idris.Text.Parser.Core.Empty', V1} end end} end end}.
'un--verbatim'() -> {'Idris.Text.Parser.Core.SeqEat', 0, ('Idris.Idris2.Text.Parser':'un--count'('erased', 'erased', ('Idris.Idris2.Text.Quantity':'un--exactly'((1 + (1 + 0)))), ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V0) -> fun (V1) -> ('dn--un--==_Eq__PathTokenKind'(V0, V1)) end end, fun (V2) -> fun (V3) -> ('dn--un--/=_Eq__PathTokenKind'(V2, V3)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V4) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V4)) end, fun (V5) -> fun (V6) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V5, V6)) end end}}, {'Idris.Utils.Path.PTPunct', $\x{5c}})))), fun () -> fun (V7) -> {'Idris.Text.Parser.Core.SeqEat', 0, ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V8) -> fun (V9) -> ('dn--un--==_Eq__PathTokenKind'(V8, V9)) end end, fun (V10) -> fun (V11) -> ('dn--un--/=_Eq__PathTokenKind'(V10, V11)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V12) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V12)) end, fun (V13) -> fun (V14) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V13, V14)) end end}}, {'Idris.Utils.Path.PTPunct', $?})), fun () -> fun (V15) -> {'Idris.Text.Parser.Core.SeqEat', 1, ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V16) -> fun (V17) -> ('dn--un--==_Eq__PathTokenKind'(V16, V17)) end end, fun (V18) -> fun (V19) -> ('dn--un--/=_Eq__PathTokenKind'(V18, V19)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V20) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V20)) end, fun (V21) -> fun (V22) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V21, V22)) end end}}, {'Idris.Utils.Path.PTPunct', $\x{5c}})), fun () -> fun (V23) -> {'Idris.Text.Parser.Core.Empty', {'Idris.Builtin.MkUnit'}} end end} end end} end end}.
'un--unc'() -> {'Idris.Text.Parser.Core.SeqEat', 0, ('Idris.Idris2.Text.Parser':'un--count'('erased', 'erased', ('Idris.Idris2.Text.Quantity':'un--exactly'((1 + (1 + 0)))), ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V0) -> fun (V1) -> ('dn--un--==_Eq__PathTokenKind'(V0, V1)) end end, fun (V2) -> fun (V3) -> ('dn--un--/=_Eq__PathTokenKind'(V2, V3)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V4) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V4)) end, fun (V5) -> fun (V6) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V5, V6)) end end}}, {'Idris.Utils.Path.PTPunct', $\x{5c}})))), fun () -> fun (V7) -> {'Idris.Text.Parser.Core.SeqEat', 0, ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V8) -> fun (V9) -> ('dn--un--==_Eq__PathTokenKind'(V8, V9)) end end, fun (V10) -> fun (V11) -> ('dn--un--/=_Eq__PathTokenKind'(V10, V11)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V12) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V12)) end, fun (V13) -> fun (V14) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V13, V14)) end end}}, {'Idris.Utils.Path.PTText'})), fun () -> fun (V15) -> {'Idris.Text.Parser.Core.SeqEat', 0, ('un--bodySeparator'()), fun () -> fun (V16) -> {'Idris.Text.Parser.Core.SeqEat', 1, ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V17) -> fun (V18) -> ('dn--un--==_Eq__PathTokenKind'(V17, V18)) end end, fun (V19) -> fun (V20) -> ('dn--un--/=_Eq__PathTokenKind'(V19, V20)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V21) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V21)) end, fun (V22) -> fun (V23) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V22, V23)) end end}}, {'Idris.Utils.Path.PTText'})), fun () -> fun (V24) -> {'Idris.Text.Parser.Core.Empty', {'Idris.Utils.Path.UNC', V15, V24}} end end} end end} end end} end end}.
'un--stripPrefix'(V0, V1) -> ('case--stripPrefix-3687'(V1, V0, ('un--parse'(V0)))).
'un--startWith'(V0, V1) -> ('Idris.Idris2.Prelude.Types':'un--elem'('erased', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V2) -> fun (V3) -> ('dn--un--==_Eq__Path'(V2, V3)) end end, fun (V4) -> fun (V5) -> ('dn--un--/=_Eq__Path'(V4, V5)) end end}, ('un--parse'(V0)), ('Idris.Idris2.Data.List':'un--iterate'('erased', fun (V6) -> ('un--parent\x{27}'(V6)) end, ('un--parse'(V1)))))).
'un--splitParent\x{27}'(V0) -> ('case--splitParent\x{27}-3391'(V0, case V0 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V1, V2, V3, V4) -> V3 end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)).
'un--splitParent'(V0) -> ('Idris.Idris2.Prelude.Types':'dn--un-->>=_Monad__Maybe'('erased', 'erased', ('un--splitParent\x{27}'(('un--parse'(V0)))), fun (V1) -> case V1 of {'Idris.Builtin.MkPair', E0, E1} -> (fun (V2, V3) -> ('Idris.Idris2.Prelude.Types':'dn--un--pure_Applicative__Maybe'('erased', {'Idris.Builtin.MkPair', ('dn--un--show_Show__Path'(V2)), ('dn--un--show_Show__Path'(V3))})) end(E0, E1)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end end)).
'un--splitFileName'(V0) -> ('case--splitFileName-3502'(V0, ('Idris.Idris2.Data.List':'un--break'('erased', fun (V1) -> ('Idris.Idris2.Prelude.EqOrd':'dn--un--==_Eq__Char'(V1, $.)) end, ('Idris.Idris2.Data.List':'un--reverse'('erased', ('Idris.Idris2.Prelude.Types':'un--unpack'(V0)))))))).
'un--setFileName\x{27}'(V0, V1) -> ('case--setFileName\x{27}-3475'(V1, V0, ('Idris.Idris2.Data.Maybe':'un--isJust'('erased', ('un--fileName\x{27}'(V1)))))).
'un--setFileName'(V0, V1) -> ('dn--un--show_Show__Path'(('un--setFileName\x{27}'(V0, ('un--parse'(V1)))))).
'un--pathTokenMap'() -> ('Idris.Idris2.Text.Lexer':'un--toTokenMap'('erased', [{'Idris.Builtin.MkPair', ('Idris.Idris2.Text.Lexer':'un--is'($/)), {'Idris.Utils.Path.PTPunct', $/}} | [{'Idris.Builtin.MkPair', ('Idris.Idris2.Text.Lexer':'un--is'($\x{5c})), {'Idris.Utils.Path.PTPunct', $\x{5c}}} | [{'Idris.Builtin.MkPair', ('Idris.Idris2.Text.Lexer':'un--is'($:)), {'Idris.Utils.Path.PTPunct', $:}} | [{'Idris.Builtin.MkPair', ('Idris.Idris2.Text.Lexer':'un--is'($?)), {'Idris.Utils.Path.PTPunct', $?}} | [{'Idris.Builtin.MkPair', ('Idris.Idris2.Text.Lexer':'un--some'(('Idris.Idris2.Text.Lexer':'un--non'(('Idris.Idris2.Text.Lexer':'un--oneOf'(<<"/\x{5c}:?"/utf8>>)))))), {'Idris.Utils.Path.PTText'}} | []]]]]])).
'un--pathSeparator'() -> ('case--pathSeparator-2404'(('Idris.Idris2.System.Info':'un--isWindows'()))).
'un--parseVolume'() -> {'Idris.Text.Parser.Core.Alt', 0, 0, ('un--verbatimUnc'()), fun () -> {'Idris.Text.Parser.Core.Alt', 0, 0, ('un--verbatimDisk'()), fun () -> {'Idris.Text.Parser.Core.Alt', 0, 0, ('un--unc'()), fun () -> ('un--disk'()) end} end} end}.
'un--parsePath'() -> {'Idris.Text.Parser.Core.SeqEmpty', 1, 1, ('Idris.Idris2.Text.Parser':'un--optional'('erased', 'erased', 0, ('un--parseVolume'()))), fun (V0) -> {'Idris.Text.Parser.Core.SeqEmpty', 1, 1, ('Idris.Idris2.Text.Parser':'un--optional'('erased', 'erased', 0, ('Idris.Idris2.Text.Parser':'un--some'('erased', 'erased', ('un--bodySeparator'()))))), fun (V1) -> {'Idris.Text.Parser.Core.SeqEmpty', 1, 1, ('Idris.Idris2.Text.Parser':'un--sepBy'('erased', 'erased', 'erased', 0, ('Idris.Idris2.Text.Parser':'un--some'('erased', 'erased', ('un--bodySeparator'()))), ('un--parseBody'()))), fun (V2) -> {'Idris.Text.Parser.Core.SeqEmpty', 1, 1, ('Idris.Idris2.Text.Parser':'un--optional'('erased', 'erased', 0, ('Idris.Idris2.Text.Parser':'un--some'('erased', 'erased', ('un--bodySeparator'()))))), fun (V3) -> begin (V6 = ('Idris.Idris2.Data.List':'un--filter'('erased', fun (V4) -> case V4 of {'Idris.Utils.Path.Normal', E0} -> (fun (V5) -> ('Idris.Idris2.Prelude.EqOrd':'dn--un--/=_Eq__String'(('Idris.Idris2.Data.Strings':'un--ltrim'(V5)), <<""/utf8>>)) end(E0)); _ -> 0 end end, V2))), begin (V13 = case V6 of [] -> []; [E1 | E2] -> (fun (V7, V8) -> [V7 | ('Idris.Idris2.Data.List':'un--delete'('erased', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V9) -> fun (V10) -> ('dn--un--==_Eq__Body'(V9, V10)) end end, fun (V11) -> fun (V12) -> ('dn--un--/=_Eq__Body'(V11, V12)) end end}, {'Idris.Utils.Path.CurDir'}, V8))] end(E1, E2)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end), {'Idris.Text.Parser.Core.Empty', {'Idris.Utils.Path.MkPath', V0, ('Idris.Idris2.Data.Maybe':'un--isJust'('erased', V1)), V13, ('Idris.Idris2.Data.Maybe':'un--isJust'('erased', V3))}} end end end} end} end} end}.
'un--parseBody'() -> {'Idris.Text.Parser.Core.SeqEat', 1, ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V0) -> fun (V1) -> ('dn--un--==_Eq__PathTokenKind'(V0, V1)) end end, fun (V2) -> fun (V3) -> ('dn--un--/=_Eq__PathTokenKind'(V2, V3)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V4) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V4)) end, fun (V5) -> fun (V6) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V5, V6)) end end}}, {'Idris.Utils.Path.PTText'})), fun () -> fun (V7) -> case V7 of <<".."/utf8>> -> {'Idris.Text.Parser.Core.Empty', {'Idris.Utils.Path.ParentDir'}}; <<"."/utf8>> -> {'Idris.Text.Parser.Core.Empty', {'Idris.Utils.Path.CurDir'}}; _ -> {'Idris.Text.Parser.Core.Empty', {'Idris.Utils.Path.Normal', V7}} end end end}.
'un--parse'(V0) -> ('case--parse-3287'(V0, ('Idris.Idris2.Text.Parser.Core':'un--parse'('erased', 'erased', 1, ('un--parsePath'()), ('un--lexPath'(V0)))))).
'un--parents'(V0) -> ('Idris.Idris2.Prelude.Types':'dn--un--map_Functor__List'('erased', 'erased', fun (V1) -> ('dn--un--show_Show__Path'(V1)) end, ('Idris.Idris2.Data.List':'un--iterate'('erased', fun (V2) -> ('un--parent\x{27}'(V2)) end, ('un--parse'(V0)))))).
'un--parent\x{27}'(V0) -> ('Idris.Idris2.Prelude.Types':'dn--un--map_Functor__Maybe'('erased', 'erased', fun (V1) -> ('Idris.Idris2.Builtin':'un--fst'('erased', 'erased', V1)) end, ('un--splitParent\x{27}'(V0)))).
'un--parent'(V0) -> ('Idris.Idris2.Prelude.Types':'dn--un--map_Functor__Maybe'('erased', 'erased', fun (V1) -> ('dn--un--show_Show__Path'(V1)) end, ('un--parent\x{27}'(('un--parse'(V0)))))).
'un--lexPath'(V0) -> ('case--lexPath-2780'(V0, ('Idris.Idris2.Text.Lexer.Core':'un--lex'('erased', ('un--pathTokenMap'()), V0)))).
'un--joinPath'(V0) -> ('Idris.Idris2.Prelude.Types':'dn--un--foldl_Foldable__List'('erased', 'erased', fun (V1) -> fun (V2) -> ('un--</>'(V1, V2)) end end, <<""/utf8>>, V0)).
'un--isRelative'(V0) -> ('Idris.Idris2.Prelude.Basics':'un--not'(('un--isAbsolute'(V0)))).
'un--isAbsolute\x{27}'(V0) -> ('case--isAbsolute\x{27}-3307'(V0, ('Idris.Idris2.System.Info':'un--isWindows'()))).
'un--isAbsolute'(V0) -> ('un--isAbsolute\x{27}'(('un--parse'(V0)))).
'un--fileStem'(V0) -> ('Idris.Idris2.Prelude.Types':'dn--un-->>=_Monad__Maybe'('erased', 'erased', ('un--fileName'(V0)), fun (V1) -> ('Idris.Idris2.Prelude.Types':'dn--un--pure_Applicative__Maybe'('erased', ('Idris.Idris2.Builtin':'un--fst'('erased', 'erased', ('un--splitFileName'(V1)))))) end)).
'un--fileName\x{27}'(V0) -> ('nested--3929-3456--in--un--findNormal'(V0, ('Idris.Idris2.Data.List':'un--reverse'('erased', case V0 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V1, V2, V3, V4) -> V3 end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)))).
'un--fileName'(V0) -> ('un--fileName\x{27}'(('un--parse'(V0)))).
'un--extension'(V0) -> ('Idris.Idris2.Prelude.Types':'dn--un-->>=_Monad__Maybe'('erased', 'erased', ('un--fileName'(V0)), fun (V1) -> ('Idris.Idris2.Prelude.Types':'dn--un--pure_Applicative__Maybe'('erased', ('Idris.Idris2.Builtin':'un--snd'('erased', 'erased', ('un--splitFileName'(V1)))))) end)).
'un--emptyPath'() -> {'Idris.Utils.Path.MkPath', {'Idris.Prelude.Types.Nothing'}, 1, [], 1}.
'un--disk'() -> {'Idris.Text.Parser.Core.SeqEat', 0, ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V0) -> fun (V1) -> ('dn--un--==_Eq__PathTokenKind'(V0, V1)) end end, fun (V2) -> fun (V3) -> ('dn--un--/=_Eq__PathTokenKind'(V2, V3)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V4) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V4)) end, fun (V5) -> fun (V6) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V5, V6)) end end}}, {'Idris.Utils.Path.PTText'})), fun () -> fun (V7) -> {'Idris.Text.Parser.Core.SeqEmpty', 1, 0, ('case--disk-3065'(V7, ('Idris.Idris2.Prelude.Types':'un--unpack'(V7)))), fun (V8) -> {'Idris.Text.Parser.Core.SeqEat', 1, ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V9) -> fun (V10) -> ('dn--un--==_Eq__PathTokenKind'(V9, V10)) end end, fun (V11) -> fun (V12) -> ('dn--un--/=_Eq__PathTokenKind'(V11, V12)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V13) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V13)) end, fun (V14) -> fun (V15) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V14, V15)) end end}}, {'Idris.Utils.Path.PTPunct', $:})), fun () -> fun (V16) -> {'Idris.Text.Parser.Core.Empty', {'Idris.Utils.Path.Disk', ('Idris.Idris2.Prelude.Types':'un--toUpper'(V8))}} end end} end} end end}.
'un--dirSeparator'() -> ('case--dirSeparator-2399'(('Idris.Idris2.System.Info':'un--isWindows'()))).
'un--bodySeparator'() -> {'Idris.Text.Parser.Core.Alt', 0, 0, ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V0) -> fun (V1) -> ('dn--un--==_Eq__PathTokenKind'(V0, V1)) end end, fun (V2) -> fun (V3) -> ('dn--un--/=_Eq__PathTokenKind'(V2, V3)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V4) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V4)) end, fun (V5) -> fun (V6) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V5, V6)) end end}}, {'Idris.Utils.Path.PTPunct', $\x{5c}})), fun () -> ('Idris.Idris2.Text.Parser':'un--match'('erased', {'Idris.Builtin.MkPair', {'Idris.Prelude.EqOrd.dn--un--__mkEq', fun (V7) -> fun (V8) -> ('dn--un--==_Eq__PathTokenKind'(V7, V8)) end end, fun (V9) -> fun (V10) -> ('dn--un--/=_Eq__PathTokenKind'(V9, V10)) end end}, {'Idris.Text.Token.dn--un--__mkTokenKind', fun (V11) -> ('dn--un--TokType_TokenKind__PathTokenKind'(V11)) end, fun (V12) -> fun (V13) -> ('dn--un--tokValue_TokenKind__PathTokenKind'(V12, V13)) end end}}, {'Idris.Utils.Path.PTPunct', $/})) end}.
'un--append\x{27}'(V0, V1) -> ('case--append\x{27}-3341'(V1, V0, ('Idris.Idris2.Prelude.Basics':'un--||'(('un--isAbsolute\x{27}'(V1)), fun () -> ('Idris.Idris2.Data.Maybe':'un--isJust'('erased', case V1 of {'Idris.Utils.Path.MkPath', E0, E1, E2, E3} -> (fun (V2, V3, V4, V5) -> V2 end(E0, E1, E2, E3)); _ -> ('erlang':'throw'("Error: Unreachable branch")) end)) end)))).
'un--PathToken'() -> {'Idris.Text.Token.Token', {'Idris.Utils.Path.PathTokenKind'}}.
'un--</>'(V0, V1) -> ('dn--un--show_Show__Path'(('un--append\x{27}'(('un--parse'(V0)), ('un--parse'(V1)))))).
'un--<.>'(V0, V1) -> begin (V2 = ('un--parse'(V0))), begin (V4 = ('Idris.Idris2.Prelude.Types':'un--pack'(('Idris.Idris2.Data.List':'un--dropWhile'('erased', fun (V3) -> ('Idris.Idris2.Prelude.EqOrd':'dn--un--==_Eq__Char'(V3, $.)) end, ('Idris.Idris2.Prelude.Types':'un--unpack'(V1))))))), begin (V5 = ('case--<.>-3838'(V1, V0, V2, V4, ('Idris.Idris2.Prelude.EqOrd':'dn--un--==_Eq__String'(('Idris.Idris2.Data.Strings':'un--ltrim'(V4)), <<""/utf8>>))))), ('case--<.>-3864'(V1, V0, V2, V4, V5, ('un--fileName\x{27}'(V2)))) end end end.