Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( PrimaryGlazeSpec = &hcldec.BlockListSpec{ TypeName: "session", MinItems: 1, MaxItems: 1, Nested: &hcldec.ObjectSpec{ "name": &hcldec.AttrSpec{ Name: "name", Type: cty.String, }, "envs": envsSpec, "commands": &hcldec.AttrSpec{ Name: "commands", Type: cty.List(cty.String), }, "hooks": hooksSpec, "starting_directory": &hcldec.ValidateSpec{ Wrapped: &hcldec.AttrSpec{ Name: "starting_directory", Type: cty.String, }, Func: func(value cty.Value) hcl.Diagnostics { return glaze.DirectoryDiagnostic("starting directory", value) }, }, "windows": &hcldec.BlockListSpec{ TypeName: "window", MinItems: 1, Nested: &hcldec.ObjectSpec{ "name": &hcldec.AttrSpec{ Name: "name", Type: cty.String, }, "envs": envsSpec, "hooks": hooksSpec, "focus": &hcldec.AttrSpec{ Name: "focus", Type: cty.Bool, }, "starting_directory": &hcldec.ValidateSpec{ Wrapped: &hcldec.AttrSpec{ Name: "starting_directory", Type: cty.String, }, Func: func(value cty.Value) hcl.Diagnostics { return glaze.DirectoryDiagnostic("starting directory", value) }, }, "layout": &hcldec.ValidateSpec{ Wrapped: &hcldec.AttrSpec{ Name: "layout", Type: cty.String, }, Func: func(value cty.Value) hcl.Diagnostics { return glaze.ContainsDiagnostic("layout", value, enums.LayoutList) }, }, "panes": &hcldec.BlockListSpec{ TypeName: "pane", MinItems: 1, Nested: &hcldec.ValidateSpec{ Wrapped: &hcldec.ObjectSpec{ "name": &hcldec.AttrSpec{ Name: "name", Type: cty.String, }, "envs": envsSpec, "hooks": hooksSpec, "focus": &hcldec.AttrSpec{ Name: "focus", Type: cty.Bool, }, "size": &hcldec.ValidateSpec{ Wrapped: &hcldec.AttrSpec{ Name: "size", Type: cty.String, }, Func: func(value cty.Value) hcl.Diagnostics { var diags hcl.Diagnostics if !value.IsNull() { input := value.AsString() matched := regexp.MustCompile(`^(\\d+|\\d+%)$`).MatchString(input) if input[len(input)-1] == '%' { input = input[:len(input)-1] } _, err := strconv.Atoi(input) if err != nil || !matched { diags = diags.Append(&hcl.Diagnostic{ Severity: hcl.DiagError, Summary: `Invalid size specified`, Detail: `The size value must be either an integer or a percentage.`, }) } } return diags }, }, "starting_directory": &hcldec.ValidateSpec{ Wrapped: &hcldec.AttrSpec{ Name: "starting_directory", Type: cty.String, }, Func: func(value cty.Value) hcl.Diagnostics { return glaze.DirectoryDiagnostic("starting directory", value) }, }, "commands": &hcldec.AttrSpec{ Name: "commands", Type: cty.List(cty.String), }, }, Func: func(value cty.Value) hcl.Diagnostics { var diags hcl.Diagnostics return diags }, }, }, }, }, }, } )
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.