Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CommonComponents ¶
type CommonVendors ¶
type ComponentName ¶
type ComponentName = string
abstract ComponentName useful for mapping real packages to one Component.
type Components ¶
type Components interface { Reference() models.Reference // describe Component packages properties Map() map[ComponentName]Component }
type Dependencies ¶
type Dependencies interface { Reference() models.Reference // Dependencies map between Components and DependencyRule`s Map() map[ComponentName]DependencyRule }
type DependencyRule ¶
type DependencyRule interface { Reference() models.Reference // List of Component names, that can by imported to described component MayDependOn() []speca.Referable[string] // List of Vendor names, that can by imported to described component CanUse() []speca.Referable[string] // described component can import any other local namespace packages AnyProjectDeps() speca.Referable[bool] // described component can import any other vendor namespace packages AnyVendorDeps() speca.Referable[bool] // override deepScan global option DeepScan() speca.Referable[bool] }
type Document ¶
type Document interface { Reference() models.Reference // Spec Version Version() speca.Referable[int] // Spec relative WorkingDirectory to root, prepend this to all path's from spec WorkingDirectory() speca.Referable[string] // Global spec Options Options() Options // ExcludedDirectories from analyze, each contain relative directory name ExcludedDirectories() ExcludedDirectories // ExcludedFilesRegExp from analyze, each project file will by matched with this regexp rules ExcludedFilesRegExp() ExcludedFilesRegExp // Map of Vendors Vendors() Vendors // List of Vendors that can by imported to any project package CommonVendors() CommonVendors // Map of Components Components() Components // List of Components that can by imported to any project package CommonComponents() CommonComponents // Dependencies map between Components and DependencyRule`s Dependencies() Dependencies }
type ExcludedDirectories ¶
type ExcludedFilesRegExp ¶
type Options ¶
type Options interface { Reference() models.Reference // allow all project code depend on any third party vendor lib // analyze will not check imports with not local namespace's IsDependOnAnyVendor() speca.Referable[bool] // use advanced AST linter // this is default behavior since v3+ configs DeepScan() speca.Referable[bool] }
type VendorName ¶
type VendorName = string
abstract VendorName useful for mapping real vendor packages to one Vendor.
Click to show internal directories.
Click to hide internal directories.