Bläddra i källkod

ft: 参数选项优化

master
SisMaker 1 vecka sedan
förälder
incheckning
cff0c3462c
1 ändrade filer med 11 tillägg och 6 borttagningar
  1. +11
    -6
      src/eMake.erl

+ 11
- 6
src/eMake.erl Visa fil

@ -13,7 +13,7 @@
-define(MakeOpts, [noexec, load, netload, noload]). -define(MakeOpts, [noexec, load, netload, noload]).
-define(EMakefile, "./Emakefile"). -define(EMakefile, "./Emakefile").
-define(OnceCnt, 1).
-define(OnceCnt, 16).
main(Args) -> main(Args) ->
MapArgs = parseArgs(Args), MapArgs = parseArgs(Args),
@ -47,12 +47,17 @@ parseArgs([], Ret) -> Ret;
parseArgs([Flag | Rest], Ret) -> parseArgs([Flag | Rest], Ret) ->
case Flag of case Flag of
[$-, $n | Left] -> [$-, $n | Left] ->
[Value | LRest] = Rest,
case Value of
[$- | _] ->
case Rest of
[] ->
parseArgs(Rest, Ret#{Left => true}); parseArgs(Rest, Ret#{Left => true});
_ -> _ ->
parseArgs(LRest, Ret#{LRest => Value})
[Value | LRest] = Rest,
case Value of
[$- | _] ->
parseArgs(Rest, Ret#{Left => true});
_ ->
parseArgs(LRest, Ret#{LRest => Value})
end
end; end;
[$-, $s | Left] -> [$-, $s | Left] ->
[Value | LRest] = Rest, [Value | LRest] = Rest,
@ -70,7 +75,7 @@ parseArgs([Flag | Rest], Ret) ->
[Value | LRest] = Rest, [Value | LRest] = Rest,
parseArgs(LRest, Ret#{Left => list_to_binary(Value)}); parseArgs(LRest, Ret#{Left => list_to_binary(Value)});
_ -> _ ->
parseArgs(Rest, Ret)
parseArgs(Rest, Ret#{Flag => true})
end. end.
eMakeFile() -> eMakeFile() ->

Laddar…
Avbryt
Spara