FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
cli-module/module/module.go at main · code-game-project/cli-module · GitHub
Uh oh!
There was an error while loading.
Please reload this page
.
This repository was archived by the owner on Jul 22, 2026. It is now read-only.
code-game-project
/
cli-module
Public archive
Notifications
You must be signed in to change notification settings
Fork
0
Star
0
Code
Issues
0
Pull requests
0
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
cli-module
/
module
/
module.go
Copy path
More file actions
More file actions
Latest commit
History
History
History
117 lines (106 loc) · 3.11 KB
Breadcrumbs
cli-module
/
module
/
module.go
Copy path
File metadata and controls
117 lines (106 loc) · 3.11 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
package
module
import
(
"encoding/json"
"errors"
"fmt"
"os"
"github.com/code-game-project/cli-utils/feedback"
"github.com/code-game-project/cli-utils/modules"
"github.com/code-game-project/cli-utils/versions"
)
var
(
errUnsupportedAction
=
errors
.
New
(
"unsupported action"
)
errUnsupportedProjectType
=
errors
.
New
(
"unsupported project type"
)
)
type
Config
struct
{
Create
func
(
data
*
modules.
ActionCreateData
)
error
RunClient
func
(
data
*
modules.
ActionRunClientData
)
error
RunServer
func
(
data
*
modules.
ActionRunServerData
)
error
name
string
version
versions.
Version
displayName
string
libraryVersions
map
[modules.
ProjectType
][]versions.
Version
}
func
info
(
config
Config
)
error
{
var
ok
bool
libraryVersions
:=
make
(
map
[
string
][]versions.
Version
)
libraryVersions
[
"server"
],
ok
=
config
.
libraryVersions
[
modules
.
ProjectType_SERVER
]
if
!
ok
{
delete
(
libraryVersions
,
"server"
)
}
libraryVersions
[
"client"
],
ok
=
config
.
libraryVersions
[
modules
.
ProjectType_CLIENT
]
if
!
ok
{
delete
(
libraryVersions
,
"client"
)
}
projectTypes
:=
make
([]
string
,
0
,
len
(
libraryVersions
))
if
libraryVersions
[
"client"
]
!=
nil
{
projectTypes
=
append
(
projectTypes
,
"client"
)
}
if
libraryVersions
[
"server"
]
!=
nil
{
projectTypes
=
append
(
projectTypes
,
"server"
)
}
actions
:=
make
([]modules.
Action
,
0
,
5
)
actions
=
append
(
actions
,
modules
.
ActionInfo
)
if
config
.
Create
!=
nil
{
actions
=
append
(
actions
,
modules
.
ActionCreate
)
}
if
config
.
RunClient
!=
nil
{
actions
=
append
(
actions
,
modules
.
ActionRunClient
)
}
if
config
.
RunServer
!=
nil
{
actions
=
append
(
actions
,
modules
.
ActionRunServer
)
}
return
json
.
NewEncoder
(
os
.
Stdout
).
Encode
(modules.
ModuleInfo
{
Version
:
config
.
version
,
LibraryVersions
:
libraryVersions
,
ProjectTypes
:
projectTypes
,
Actions
:
actions
,
})
}
func
Run
(
langName
,
langDisplayName
string
,
moduleVersion
versions.
Version
,
libraryVersions
map
[modules.
ProjectType
][]versions.
Version
,
config
Config
,
minLogSeverity
feedback.
Severity
) {
feedback
.
Enable
(
feedback
.
NewCLIFeedback
(
minLogSeverity
))
config
.
name
=
langName
config
.
displayName
=
langDisplayName
config
.
version
=
moduleVersion
config
.
libraryVersions
=
libraryVersions
if
len
(
os
.
Args
)
!=
2
{
fmt
.
Fprintf
(
os
.
Stderr
,
"USAGE: %s <action>
\n
"
,
os
.
Args
[
0
])
os
.
Exit
(
1
)
}
var
err
error
switch
modules
.
Action
(
os
.
Args
[
1
]) {
case
modules
.
ActionInfo
:
err
=
info
(
config
)
case
modules
.
ActionCreate
:
if
config
.
Create
==
nil
{
err
=
errUnsupportedAction
}
else
{
data
:=
modules
.
GetCreateData
()
if
config
.
libraryVersions
[
data
.
ProjectType
]
==
nil
{
err
=
errUnsupportedProjectType
}
else
{
err
=
config
.
Create
(
data
)
}
}
case
modules
.
ActionRunClient
:
data
:=
modules
.
GetRunClientData
()
if
config
.
RunClient
==
nil
{
err
=
errUnsupportedAction
}
else
{
err
=
config
.
RunClient
(
data
)
}
case
modules
.
ActionRunServer
:
data
:=
modules
.
GetRunServerData
()
if
config
.
RunServer
==
nil
{
err
=
errUnsupportedAction
}
else
{
err
=
config
.
RunServer
(
data
)
}
default
:
err
=
errors
.
New
(
"unsupported action"
)
}
if
err
!=
nil
{
fmt
.
Fprintln
(
os
.
Stderr
,
err
.
Error
())
os
.
Exit
(
1
)
}
}
Back
|
FazBrowse Home
|
New Git URL