Documentation
¶
Index ¶
- func DevContainer_IsComponent(x interface{}) *bool
- func DevContainer_IsConstruct(x interface{}) *bool
- func NewDevContainer_Override(d DevContainer, project projen.Project, options *DevContainerOptions)
- func NewVsCodeLaunchConfig_Override(v VsCodeLaunchConfig, vscode VsCode)
- func NewVsCodeRecommendedExtensions_Override(v VsCodeRecommendedExtensions, vscode VsCode)
- func NewVsCodeSettings_Override(v VsCodeSettings, vscode VsCode)
- func NewVsCode_Override(v VsCode, project projen.Project)
- func VsCodeLaunchConfig_IsComponent(x interface{}) *bool
- func VsCodeLaunchConfig_IsConstruct(x interface{}) *bool
- func VsCodeRecommendedExtensions_IsComponent(x interface{}) *bool
- func VsCodeRecommendedExtensions_IsConstruct(x interface{}) *bool
- func VsCodeSettings_IsComponent(x interface{}) *bool
- func VsCodeSettings_IsConstruct(x interface{}) *bool
- func VsCode_IsComponent(x interface{}) *bool
- func VsCode_IsConstruct(x interface{}) *bool
- type Console
- type DevContainer
- type DevContainerFeature
- type DevContainerOptions
- type IDevContainerEnvironment
- type InternalConsoleOptions
- type Presentation
- type ServerReadyAction
- type VsCode
- type VsCodeLaunchConfig
- type VsCodeLaunchConfigurationEntry
- type VsCodeRecommendedExtensions
- type VsCodeSettings
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DevContainer_IsComponent ¶ added in v0.76.9
func DevContainer_IsComponent(x interface{}) *bool
Test whether the given construct is a component. Experimental.
func DevContainer_IsConstruct ¶ added in v0.76.9
func DevContainer_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`. Experimental.
func NewDevContainer_Override ¶
func NewDevContainer_Override(d DevContainer, project projen.Project, options *DevContainerOptions)
Experimental.
func NewVsCodeLaunchConfig_Override ¶
func NewVsCodeLaunchConfig_Override(v VsCodeLaunchConfig, vscode VsCode)
Experimental.
func NewVsCodeRecommendedExtensions_Override ¶
func NewVsCodeRecommendedExtensions_Override(v VsCodeRecommendedExtensions, vscode VsCode)
Experimental.
func NewVsCodeSettings_Override ¶
func NewVsCodeSettings_Override(v VsCodeSettings, vscode VsCode)
Experimental.
func VsCodeLaunchConfig_IsComponent ¶ added in v0.76.9
func VsCodeLaunchConfig_IsComponent(x interface{}) *bool
Test whether the given construct is a component. Experimental.
func VsCodeLaunchConfig_IsConstruct ¶ added in v0.76.9
func VsCodeLaunchConfig_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`. Experimental.
func VsCodeRecommendedExtensions_IsComponent ¶ added in v0.76.9
func VsCodeRecommendedExtensions_IsComponent(x interface{}) *bool
Test whether the given construct is a component. Experimental.
func VsCodeRecommendedExtensions_IsConstruct ¶ added in v0.76.9
func VsCodeRecommendedExtensions_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`. Experimental.
func VsCodeSettings_IsComponent ¶ added in v0.76.9
func VsCodeSettings_IsComponent(x interface{}) *bool
Test whether the given construct is a component. Experimental.
func VsCodeSettings_IsConstruct ¶ added in v0.76.9
func VsCodeSettings_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`. Experimental.
func VsCode_IsComponent ¶ added in v0.76.9
func VsCode_IsComponent(x interface{}) *bool
Test whether the given construct is a component. Experimental.
func VsCode_IsConstruct ¶ added in v0.76.9
func VsCode_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`. Experimental.
Types ¶
type Console ¶
type Console string
Controls where to launch the debug target Source: https://code.visualstudio.com/docs/editor/debugging#_launchjson-attributes. Experimental.
type DevContainer ¶
type DevContainer interface {
projen.Component
IDevContainerEnvironment
// Direct access to the devcontainer configuration (escape hatch).
// Experimental.
Config() interface{}
// The tree node.
// Experimental.
Node() constructs.Node
// Experimental.
Project() projen.Project
// Add a custom Docker image or Dockerfile for the container.
// Experimental.
AddDockerImage(image projen.DevEnvironmentDockerImage)
// Adds a list of VSCode features that should be automatically installed in the container.
// Experimental.
AddFeatures(features ...*DevContainerFeature)
// Adds ports that should be exposed (forwarded) from the container.
// Experimental.
AddPorts(ports ...*string)
// Adds tasks to run when the container starts.
//
// Tasks will be run in sequence.
// Experimental.
AddTasks(tasks ...projen.Task)
// Adds a list of VSCode extensions that should be automatically installed in the container.
// Experimental.
AddVscodeExtensions(extensions ...*string)
// Called after synthesis.
//
// Order is *not* guaranteed.
// Experimental.
PostSynthesize()
// Called before synthesis.
// Experimental.
PreSynthesize()
// Synthesizes files to the project output directory.
// Experimental.
Synthesize()
// Returns a string representation of this construct.
// Experimental.
ToString() *string
}
A development environment running VSCode in a container;
used by GitHub codespaces. Experimental.
func NewDevContainer ¶
func NewDevContainer(project projen.Project, options *DevContainerOptions) DevContainer
Experimental.
type DevContainerFeature ¶
type DevContainerFeature struct {
// feature name.
// Experimental.
Name *string `field:"required" json:"name" yaml:"name"`
// feature version.
// Default: latest.
//
// Experimental.
Version *string `field:"optional" json:"version" yaml:"version"`
}
devcontainer features options. See: https://containers.dev/implementors/features/#devcontainer-json-properties
Experimental.
type DevContainerOptions ¶
type DevContainerOptions struct {
// A Docker image or Dockerfile for the container.
// Experimental.
DockerImage projen.DevEnvironmentDockerImage `field:"optional" json:"dockerImage" yaml:"dockerImage"`
// An array of ports that should be exposed from the container.
// Experimental.
Ports *[]*string `field:"optional" json:"ports" yaml:"ports"`
// An array of tasks that should be run when the container starts.
// Experimental.
Tasks *[]projen.Task `field:"optional" json:"tasks" yaml:"tasks"`
// An array of extension IDs that specify the extensions that should be installed inside the container when it is created.
// Experimental.
VscodeExtensions *[]*string `field:"optional" json:"vscodeExtensions" yaml:"vscodeExtensions"`
// An array of VSCode features that specify the features that should be installed inside the container when it is created.
// Experimental.
Features *[]*DevContainerFeature `field:"optional" json:"features" yaml:"features"`
}
Constructor options for the DevContainer component.
The default docker image used for GitHub Codespaces is defined here:. See: https://github.com/microsoft/vscode-dev-containers/tree/master/containers/codespaces-linux
Experimental.
type IDevContainerEnvironment ¶
type IDevContainerEnvironment interface {
projen.IDevEnvironment
// Adds a list of VSCode features that should be automatically installed in the container.
// Experimental.
AddFeatures(features ...*DevContainerFeature)
}
Experimental.
type InternalConsoleOptions ¶
type InternalConsoleOptions string
Controls the visibility of the VSCode Debug Console panel during a debugging session Source: https://code.visualstudio.com/docs/editor/debugging#_launchjson-attributes. Experimental.
const ( // Experimental. InternalConsoleOptions_NEVER_OPEN InternalConsoleOptions = "NEVER_OPEN" // Experimental. InternalConsoleOptions_OPEN_ON_FIRST_SESSION_START InternalConsoleOptions = "OPEN_ON_FIRST_SESSION_START" // Experimental. InternalConsoleOptions_OPEN_ON_SESSION_START InternalConsoleOptions = "OPEN_ON_SESSION_START" )
type Presentation ¶
type Presentation struct {
// Experimental.
Group *string `field:"required" json:"group" yaml:"group"`
// Experimental.
Hidden *bool `field:"required" json:"hidden" yaml:"hidden"`
// Experimental.
Order *float64 `field:"required" json:"order" yaml:"order"`
}
VSCode launch configuration Presentation interface "using the order, group, and hidden attributes in the presentation object you can sort, group, and hide configurations and compounds in the Debug configuration dropdown and in the Debug quick pick." Source: https://code.visualstudio.com/docs/editor/debugging#_launchjson-attributes. Experimental.
type ServerReadyAction ¶
type ServerReadyAction struct {
// Experimental.
Action *string `field:"required" json:"action" yaml:"action"`
// Experimental.
Pattern *string `field:"optional" json:"pattern" yaml:"pattern"`
// Experimental.
UriFormat *string `field:"optional" json:"uriFormat" yaml:"uriFormat"`
}
VSCode launch configuration ServerReadyAction interface "if you want to open a URL in a web browser whenever the program under debugging outputs a specific message to the debug console or integrated terminal." Source: https://code.visualstudio.com/docs/editor/debugging#_launchjson-attributes. Experimental.
type VsCode ¶
type VsCode interface {
projen.Component
// Experimental.
Extensions() VsCodeRecommendedExtensions
// Experimental.
LaunchConfiguration() VsCodeLaunchConfig
// The tree node.
// Experimental.
Node() constructs.Node
// Experimental.
Project() projen.Project
// Experimental.
Settings() VsCodeSettings
// Called after synthesis.
//
// Order is *not* guaranteed.
// Experimental.
PostSynthesize()
// Called before synthesis.
// Experimental.
PreSynthesize()
// Synthesizes files to the project output directory.
// Experimental.
Synthesize()
// Returns a string representation of this construct.
// Experimental.
ToString() *string
}
Experimental.
type VsCodeLaunchConfig ¶
type VsCodeLaunchConfig interface {
projen.Component
// Experimental.
File() projen.JsonFile
// The tree node.
// Experimental.
Node() constructs.Node
// Experimental.
Project() projen.Project
// Adds a VsCodeLaunchConfigurationEntry (e.g. a node.js debugger) to `.vscode/launch.json. Each configuration entry has following mandatory fields: type, request and name. See https://code.visualstudio.com/docs/editor/debugging#_launchjson-attributes for details.
// Experimental.
AddConfiguration(cfg *VsCodeLaunchConfigurationEntry)
// Called after synthesis.
//
// Order is *not* guaranteed.
// Experimental.
PostSynthesize()
// Called before synthesis.
// Experimental.
PreSynthesize()
// Synthesizes files to the project output directory.
// Experimental.
Synthesize()
// Returns a string representation of this construct.
// Experimental.
ToString() *string
}
VSCode launch configuration file (launch.json), useful for enabling in-editor debugger. Experimental.
func NewVsCodeLaunchConfig ¶
func NewVsCodeLaunchConfig(vscode VsCode) VsCodeLaunchConfig
Experimental.
type VsCodeLaunchConfigurationEntry ¶
type VsCodeLaunchConfigurationEntry struct {
// Experimental.
Name *string `field:"required" json:"name" yaml:"name"`
// Experimental.
Request *string `field:"required" json:"request" yaml:"request"`
// Experimental.
Type *string `field:"required" json:"type" yaml:"type"`
// Experimental.
Args *[]*string `field:"optional" json:"args" yaml:"args"`
// Experimental.
Console Console `field:"optional" json:"console" yaml:"console"`
// Experimental.
Cwd *string `field:"optional" json:"cwd" yaml:"cwd"`
// Experimental.
DebugServer *float64 `field:"optional" json:"debugServer" yaml:"debugServer"`
// Experimental.
DisableOptimisticBPs *bool `field:"optional" json:"disableOptimisticBPs" yaml:"disableOptimisticBPs"`
// Set value to `false` to unset an existing environment variable.
// Experimental.
Env *map[string]interface{} `field:"optional" json:"env" yaml:"env"`
// Experimental.
EnvFile *string `field:"optional" json:"envFile" yaml:"envFile"`
// Experimental.
InternalConsoleOptions InternalConsoleOptions `field:"optional" json:"internalConsoleOptions" yaml:"internalConsoleOptions"`
// Experimental.
OutFiles *[]*string `field:"optional" json:"outFiles" yaml:"outFiles"`
// Experimental.
Port *float64 `field:"optional" json:"port" yaml:"port"`
// Experimental.
PostDebugTask *string `field:"optional" json:"postDebugTask" yaml:"postDebugTask"`
// Experimental.
PreLaunchTask *string `field:"optional" json:"preLaunchTask" yaml:"preLaunchTask"`
// Experimental.
Presentation *Presentation `field:"optional" json:"presentation" yaml:"presentation"`
// Experimental.
Program *string `field:"optional" json:"program" yaml:"program"`
// Experimental.
RuntimeArgs *[]*string `field:"optional" json:"runtimeArgs" yaml:"runtimeArgs"`
// Experimental.
ServerReadyAction *ServerReadyAction `field:"optional" json:"serverReadyAction" yaml:"serverReadyAction"`
// Experimental.
SkipFiles *[]*string `field:"optional" json:"skipFiles" yaml:"skipFiles"`
// Experimental.
StopOnEntry *bool `field:"optional" json:"stopOnEntry" yaml:"stopOnEntry"`
// Experimental.
Url *string `field:"optional" json:"url" yaml:"url"`
// Experimental.
WebRoot *string `field:"optional" json:"webRoot" yaml:"webRoot"`
}
Options for a 'VsCodeLaunchConfigurationEntry' Source: https://code.visualstudio.com/docs/editor/debugging#_launchjson-attributes. Experimental.
type VsCodeRecommendedExtensions ¶
type VsCodeRecommendedExtensions interface {
projen.Component
// Experimental.
File() projen.JsonFile
// The tree node.
// Experimental.
Node() constructs.Node
// Experimental.
Project() projen.Project
// Adds a list of VS Code extensions as recommendations for this workspace.
// Experimental.
AddRecommendations(extensions ...*string)
// Marks a list of VS Code extensions as unwanted recommendations for this workspace.
//
// VS Code should not be recommend these extensions for users of this workspace.
// Experimental.
AddUnwantedRecommendations(extensions ...*string)
// Called after synthesis.
//
// Order is *not* guaranteed.
// Experimental.
PostSynthesize()
// Called before synthesis.
// Experimental.
PreSynthesize()
// Synthesizes files to the project output directory.
// Experimental.
Synthesize()
// Returns a string representation of this construct.
// Experimental.
ToString() *string
}
VS Code Workspace recommended extensions Source: https://code.visualstudio.com/docs/editor/extension-marketplace#_workspace-recommended-extensions. Experimental.
func NewVsCodeRecommendedExtensions ¶
func NewVsCodeRecommendedExtensions(vscode VsCode) VsCodeRecommendedExtensions
Experimental.
type VsCodeSettings ¶
type VsCodeSettings interface {
projen.Component
// Experimental.
File() projen.JsonFile
// The tree node.
// Experimental.
Node() constructs.Node
// Experimental.
Project() projen.Project
// Adds a workspace setting.
// Experimental.
AddSetting(setting *string, value interface{}, language *string)
// Adds a workspace setting.
// Experimental.
AddSettings(settings *map[string]interface{}, languages interface{})
// Called after synthesis.
//
// Order is *not* guaranteed.
// Experimental.
PostSynthesize()
// Called before synthesis.
// Experimental.
PreSynthesize()
// Synthesizes files to the project output directory.
// Experimental.
Synthesize()
// Returns a string representation of this construct.
// Experimental.
ToString() *string
}
VS Code Workspace settings Source: https://code.visualstudio.com/docs/getstarted/settings#_workspace-settings. Experimental.
Source Files
¶
- Console.go
- DevContainer.go
- DevContainerFeature.go
- DevContainerOptions.go
- DevContainer__checks.go
- IDevContainerEnvironment.go
- IDevContainerEnvironment__checks.go
- InternalConsoleOptions.go
- Presentation.go
- ServerReadyAction.go
- VsCode.go
- VsCodeLaunchConfig.go
- VsCodeLaunchConfig__checks.go
- VsCodeLaunchConfigurationEntry.go
- VsCodeRecommendedExtensions.go
- VsCodeRecommendedExtensions__checks.go
- VsCodeSettings.go
- VsCodeSettings__checks.go
- VsCode__checks.go
- main.go