Basic getter & setter support

This commit is contained in:
Mathieu Acthernoene
2017-01-11 15:39:51 +01:00
parent b3b9aec439
commit 0ce8ebe54b
3 changed files with 88 additions and 52 deletions

View File

@@ -11,35 +11,37 @@ import {{. | replace "/" "_" | trimSuffix ".proto" }}_pb from '../{{. | trimSuff
{{- end}}
{{range .File.EnumType}}
export type {{.Name}} = {
export type {{.Name}} = {|
{{- range .Value}}
{{.Name}}?: {{.Number}};
{{.Name}}: {{.Number}};
{{- end}}
};
|};
{{- end}}
{{- range .File.MessageType}}
{{- $MessageType := .Name}}
{{range .EnumType}}
export type {{$MessageType}}${{.Name}} = {
export type {{$MessageType}}${{.Name}} = {|
{{- range .Value}}
{{.Name}}?: {{.Number}};
{{.Name}}: {{.Number}};
{{- end}}
};
|};
{{- end}}
{{range .NestedType}}
export type {{$MessageType}}${{.Name}} = {
{{- range .Field}}
{{.Name}}?: {{. | jsType}};
{{.Name | getter}}: () => {{. | jsType}};
{{.Name | setter}}: ({{.Name}}: {{. | jsType}}) => void;
{{- end}}
};
{{- end}}
export type {{.Name}} = {
{{- range .Field}}
{{.Name}}?: {{. | jsType}};
{{.Name | getter}}: () => {{. | jsType}};
{{.Name | setter}}: ({{.Name}}: {{. | jsType}}) => void;
{{- end}}
};