2021-05-14 12:26:26 -07:00
|
|
|
package main
|
|
|
|
|
|
|
|
type dart struct {
|
2021-12-03 11:19:57 -08:00
|
|
|
language
|
2021-05-14 12:26:26 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
func (d *dart) string() string {
|
2022-01-22 10:46:56 -08:00
|
|
|
segmentTemplate := d.language.props.getString(SegmentTemplate, "")
|
|
|
|
if len(segmentTemplate) == 0 {
|
|
|
|
return d.language.string()
|
|
|
|
}
|
|
|
|
return d.language.renderTemplate(segmentTemplate, d)
|
2021-05-14 12:26:26 -07:00
|
|
|
}
|
|
|
|
|
2022-01-01 11:09:52 -08:00
|
|
|
func (d *dart) init(props Properties, env Environment) {
|
2021-12-03 11:19:57 -08:00
|
|
|
d.language = language{
|
2021-05-14 12:26:26 -07:00
|
|
|
env: env,
|
|
|
|
props: props,
|
|
|
|
extensions: []string{"*.dart", "pubspec.yaml", "pubspec.yml", "pubspec.lock", ".dart_tool"},
|
|
|
|
commands: []*cmd{
|
|
|
|
{
|
|
|
|
executable: "dart",
|
|
|
|
args: []string{"--version"},
|
|
|
|
regex: `Dart SDK version: (?P<version>((?P<major>[0-9]+).(?P<minor>[0-9]+).(?P<patch>[0-9]+)))`,
|
|
|
|
},
|
|
|
|
},
|
2022-01-23 09:48:55 -08:00
|
|
|
versionURLTemplate: "https://dart.dev/guides/language/evolution#dart-{{ .Major }}{{ .Minor }}",
|
2021-05-14 12:26:26 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (d *dart) enabled() bool {
|
|
|
|
return d.language.enabled()
|
|
|
|
}
|