2021-05-14 04:39:49 -07:00
|
|
|
package main
|
|
|
|
|
|
|
|
type crystal struct {
|
2021-12-03 11:19:57 -08:00
|
|
|
language
|
2021-05-14 04:39:49 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
func (c *crystal) string() string {
|
|
|
|
return c.language.string()
|
|
|
|
}
|
|
|
|
|
2021-11-26 01:37:33 -08:00
|
|
|
func (c *crystal) init(props properties, env environmentInfo) {
|
2021-12-03 11:19:57 -08:00
|
|
|
c.language = language{
|
2021-05-14 04:39:49 -07:00
|
|
|
env: env,
|
|
|
|
props: props,
|
|
|
|
extensions: []string{"*.cr", "shard.yml"},
|
|
|
|
commands: []*cmd{
|
|
|
|
{
|
|
|
|
executable: "crystal",
|
|
|
|
args: []string{"--version"},
|
|
|
|
regex: `Crystal (?P<version>((?P<major>[0-9]+).(?P<minor>[0-9]+).(?P<patch>[0-9]+)))`,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
versionURLTemplate: "[%s](https://github.com/crystal-lang/crystal/releases/tag/%s.%s.%s)",
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (c *crystal) enabled() bool {
|
|
|
|
return c.language.enabled()
|
|
|
|
}
|