2022-10-24 23:06:49 +08:00
|
|
|
package components
|
|
|
|
|
|
|
|
type IBlock interface {
|
|
|
|
GetDirectives() []IDirective
|
|
|
|
FindDirectives(directiveName string) []IDirective
|
|
|
|
UpdateDirectives(directiveName string, directive Directive)
|
|
|
|
AddDirectives(directive Directive)
|
2022-10-28 17:04:57 +08:00
|
|
|
RemoveDirectives(names []string)
|
2022-10-24 23:06:49 +08:00
|
|
|
GetComment() string
|
|
|
|
}
|
|
|
|
|
|
|
|
type IDirective interface {
|
|
|
|
GetName() string
|
|
|
|
GetParameters() []string
|
|
|
|
GetBlock() IBlock
|
|
|
|
GetComment() string
|
|
|
|
}
|
|
|
|
|
|
|
|
type FileDirective interface {
|
|
|
|
isFileDirective()
|
|
|
|
}
|
|
|
|
|
|
|
|
type IncludeDirective interface {
|
|
|
|
FileDirective
|
|
|
|
}
|