Documentation
¶
Overview ¶
Package est provides the Encore Syntax Tree (EST).
It is an Encore-specific syntax tree that represents the higher-level representation of the application that Encore understands.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccessType ¶
type AccessType string
const ( Public AccessType = "public" Private AccessType = "private" // Auth is like public but requires authentication. Auth AccessType = "auth" )
type Application ¶
type Application struct {
ModulePath string
Packages []*Package
Services []*Service
CronJobs []*CronJob
PubSubTopics []*PubSubTopic
Decls []*schema.Decl
AuthHandler *AuthHandler
}
type AuthHandler ¶
type AuthHandler struct {
Svc *Service
Name string
Doc string
Func *ast.FuncDecl
File *File
Params *schema.Type // builtin string or named type
// AuthData is the custom auth data type the app may specify
// as part of the returns from the auth handler.
// It is nil if no such auth data type is specified.
AuthData *Param
}
type CronJob ¶ added in v0.19.0
type CronJob struct {
ID string
Title string
Doc string
Schedule string
RPC *RPC
DeclFile *File
AST *ast.Ident
}
func (*CronJob) AllowOnlyParsedUsage ¶ added in v1.3.0
func (*CronJob) Type ¶ added in v1.3.0
func (cj *CronJob) Type() ResourceType
type PubSubGuarantee ¶ added in v1.3.0
type PubSubGuarantee int
const ( AtLeastOnce PubSubGuarantee = iota ExactlyOnce )
type PubSubPublisher ¶ added in v1.3.0
type PubSubPublisher struct {
DeclFile *File // The file the publisher is declared in
}
type PubSubSubscriber ¶ added in v1.3.0
type PubSubSubscriber struct {
Name string // The unique name of the subscriber
Topic *PubSubTopic // The topic the subscriber is registered against
CallSite ast.Node // The AST node representing the creation of the subscriber
Func ast.Node // The function that is the subscriber (either a *ast.FuncLit or a *ast.FuncDecl)
FuncFile *File // The file the subscriber function is declared in
DeclFile *File // The file that the subscriber is defined in
IdentAST *ast.Ident // The AST node representing the value this topic is bound against
AckDeadline time.Duration
MessageRetention time.Duration
MinRetryBackoff time.Duration
MaxRetryBackoff time.Duration
MaxRetries int64 // number of attempts
}
func (*PubSubSubscriber) AllowOnlyParsedUsage ¶ added in v1.3.0
func (p *PubSubSubscriber) AllowOnlyParsedUsage() bool
func (*PubSubSubscriber) File ¶ added in v1.3.0
func (p *PubSubSubscriber) File() *File
func (*PubSubSubscriber) Ident ¶ added in v1.3.0
func (p *PubSubSubscriber) Ident() *ast.Ident
func (*PubSubSubscriber) NodeType ¶ added in v1.3.0
func (p *PubSubSubscriber) NodeType() NodeType
func (*PubSubSubscriber) Type ¶ added in v1.3.0
func (p *PubSubSubscriber) Type() ResourceType
type PubSubTopic ¶ added in v1.3.0
type PubSubTopic struct {
Name string // The unique name of the pub sub topic
Doc string // The documentation on the pub sub topic
DeliveryGuarantee PubSubGuarantee // What guarantees does the pub sub topic have?
OrderingKey string // What field in the message type should be used to ensure First-In-First-Out (FIFO) for messages with the same key
DeclFile *File // What file the topic is declared in
MessageType *Param // The message type of the pub sub topic
IdentAST *ast.Ident // The AST node representing the value this topic is bound against
Subscribers []*PubSubSubscriber
Publishers []*PubSubPublisher
}
func (*PubSubTopic) AllowOnlyParsedUsage ¶ added in v1.3.0
func (p *PubSubTopic) AllowOnlyParsedUsage() bool
func (*PubSubTopic) File ¶ added in v1.3.0
func (p *PubSubTopic) File() *File
func (*PubSubTopic) Ident ¶ added in v1.3.0
func (p *PubSubTopic) Ident() *ast.Ident
func (*PubSubTopic) NodeType ¶ added in v1.3.0
func (p *PubSubTopic) NodeType() NodeType
func (*PubSubTopic) Type ¶ added in v1.3.0
func (p *PubSubTopic) Type() ResourceType
type ResourceType ¶ added in v0.17.2
type ResourceType int
const ( SQLDBResource ResourceType = iota + 1 CronJobResource PubSubTopicResource PubSubSubscriptionResource )
func (ResourceType) String ¶ added in v0.17.2
func (i ResourceType) String() string
Click to show internal directories.
Click to hide internal directories.