Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
clean-and-itasks
clean-ide
Commits
78fea1f2
Commit
78fea1f2
authored
Mar 01, 2013
by
Jurrien Stutterheim
Browse files
s/Clopt/Cpm/g
parent
41163dd6
Changes
1
Hide whitespace changes
Inline
Side-by-side
cpm/Cpm.icl
View file @
78fea1f2
...
...
@@ -20,7 +20,7 @@ import Text
import
UtilIO
import
UtilStrictLists
::
C
lopt
Action
::
C
pm
Action
=
Project
FilePath
ProjectAction
|
Module
String
ModuleAction
|
Help
...
...
@@ -43,13 +43,13 @@ import UtilStrictLists
pNotSpace
::
CParser
Char
[
Char
]
a
pNotSpace
=
sp
(<+>
(
satisfy
(
not
o
isWhite
)))
pC
lopt
::
CParser
Char
C
lopt
Action
a
pC
lopt
=
pProject
<|>
pModule
<!>
yield
Help
pC
pm
::
CParser
Char
C
pm
Action
a
pC
pm
=
pProject
<|>
pModule
<!>
yield
Help
spstrtok
::
(
String
->
CParser
Char
[
Char
]
a
)
spstrtok
=
sptoken
o
fromString
pProject
::
CParser
Char
C
lopt
Action
a
pProject
::
CParser
Char
C
pm
Action
a
pProject
=
spstrtok
"project"
&>
pNotSpace
<&>
\
pn
->
pProjectAction
<@
Project
(
toString
pn
)
where
pProjectAction
=
spstrtok
"create"
<@
const
CreateProject
<|>
spstrtok
"show"
<@
const
ShowProject
...
...
@@ -65,7 +65,7 @@ pForce = spstrtok "--force" <@ const True <|> yield False
pIDEEnvs
::
CParser
Char
String
a
pIDEEnvs
=
spstrtok
"--envs"
&>
(<?>
(
spsymbol
'='
))
&>
pNotSpace
<@
toString
<!>
yield
EnvsFileName
pModule
::
CParser
Char
C
lopt
Action
a
pModule
::
CParser
Char
C
pm
Action
a
pModule
=
spstrtok
"module"
&>
pNotSpace
<&>
\
mn
->
pModuleAction
<@
Module
(
toString
mn
)
where
pModuleAction
=
spstrtok
"create"
<@
const
CreateModule
<!>
yield
ModuleHelp
...
...
@@ -79,17 +79,17 @@ Start world
(
ch
,
world
)
=
case
getEnvironmentVariable
"CLEAN_HOME"
world
of
(
Just
ch
,
world
)
->
(
ch
,
world
)
(_,
world
)
->
(
pwd
,
world
)
=
doC
lopt
Action
world
ch
pwd
cpm
=
doC
pm
Action
world
ch
pwd
cpm
startParse
::
[.
Char
]
->
C
lopt
Action
startParse
args
=
case
filter
(\(
xs
,
_)
->
xs
==
[])
(
begin
pC
lopt
args
)
of
startParse
::
[.
Char
]
->
C
pm
Action
startParse
args
=
case
filter
(\(
xs
,
_)
->
xs
==
[])
(
begin
pC
pm
args
)
of
[(_,
as
):_]
->
as
_
->
Help
doC
lopt
Action
::
*
World
String
String
.
C
lopt
Action
->
.
World
doC
lopt
Action
world
cleanhome
pwd
(
Project
pn
pa
)
=
doProjectAction
world
cleanhome
pwd
pn
pa
doC
lopt
Action
world
cleanhome
pwd
(
Module
mn
ma
)
=
doModuleAction
world
cleanhome
mn
ma
doC
lopt
Action
world
_
_
_
=
doC
pm
Action
::
*
World
String
String
.
C
pm
Action
->
.
World
doC
pm
Action
world
cleanhome
pwd
(
Project
pn
pa
)
=
doProjectAction
world
cleanhome
pwd
pn
pa
doC
pm
Action
world
cleanhome
pwd
(
Module
mn
ma
)
=
doModuleAction
world
cleanhome
mn
ma
doC
pm
Action
world
_
_
_
=
help
[
"CPM: Clean Project Management"
,
""
,
"Usage: cpm <action>"
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment