Documentation
¶
Index ¶
- Variables
- func Forward(p string) string
- func GetLabel(dir, referencePath, repoRoot string) (label.Label, error)
- type AnyElement
- type DirectoryInfo
- type FileGroup
- type Import
- type Item
- type ItemGroup
- type NugetSpec
- type NugetVer
- type PackageReference
- type Project
- func (p *Project) CollectFiles(dir *DirectoryInfo, rel string)
- func (p *Project) Evaluate(s string) string
- func (p *Project) GenerateRule(f *rule.File) *rule.Rule
- func (p *Project) GetFileGroup(key string) *FileGroup
- func (p *Project) GetUnsupported() []string
- func (p *Project) ProcessItemGroup(fgKey string, getItems func(ig *ItemGroup) []*Item)
- func (p *Project) SetFileAttributes()
- func (p *Project) SetProperties()
- type ProjectReference
- type Property
- type PropertyGroup
- type Protobuf
- type SrcsMode
- type Unsupported
- type Version
Constants ¶
This section is empty.
Variables ¶
View Source
var SpecialProperties = map[string]bool{ "TargetFramework": true, "OutputType": true, }
Functions ¶
Types ¶
type AnyElement ¶
type DirectoryInfo ¶
type FileGroup ¶
type FileGroup struct { ItemType string BazelAttribute string Explicit []bzl.Expr Globs []bzl.Expr IncludeGlobs []bzl.Expr Filters []string Comments []bzl.Comment }
func (*FileGroup) IncludeGlob ¶
func (*FileGroup) IsExcluded ¶
type Import ¶
type Import struct { XMLName xml.Name `xml:"Import"` Project string `xml:"Project,attr"` Unsupported }
type Item ¶
type ItemGroup ¶
type ItemGroup struct { Compile []*Item `xml:"Compile"` Content []*Item `xml:"Content"` ProjectReferences []*ProjectReference `xml:"ProjectReference"` PackageReferences []*PackageReference `xml:"PackageReference"` Protobuf []*Protobuf `xml:"Protobuf"` // None items are completely ignored None []*Item `xml:"None"` Unsupported }
type NugetVer ¶
type NugetVer struct { Raw string // contains filtered or unexported fields }
func ParseVersion ¶
parseVersion makes a lazy attempt at parsing a probably semver version any number parts are extracted for precise comparison any non-alpha suffix is stored as a raw string and will be alphabetically sorted. suffix comparison is not intended to be accurate, only deterministic
type PackageReference ¶
type PackageReference struct { XMLName xml.Name Include string `xml:"Include,attr"` Version string `xml:"Version,attr"` VersionEl *Version `xml:"Version"` Unsupported }
func (*PackageReference) Evaluate ¶
func (r *PackageReference) Evaluate(proj *Project)
type Project ¶
type Project struct { XMLName xml.Name `xml:"Project"` Sdk string `xml:"Sdk,attr"` PropertyGroups []*PropertyGroup `xml:"PropertyGroup"` ItemGroups []*ItemGroup `xml:"ItemGroup"` Imports []*Import `xml:"Import"` Unsupported Properties map[string]string AssemblyName string TargetFramework string PackageId string IsExe bool IsWeb bool IsTest bool LangExt string Files map[string]*FileGroup Data []string // Rel is the workspace relative path to the csproj file // Other projects will import this project with this path Rel string Name string FileLabel *label.Label Rule *rule.Rule Deps []interface{} Directory *DirectoryInfo Ext string Protos []string // contains filtered or unexported fields }
func (*Project) CollectFiles ¶
func (p *Project) CollectFiles(dir *DirectoryInfo, rel string)
func (*Project) GetFileGroup ¶
func (*Project) GetUnsupported ¶
func (*Project) ProcessItemGroup ¶
func (*Project) SetFileAttributes ¶
func (p *Project) SetFileAttributes()
func (*Project) SetProperties ¶
func (p *Project) SetProperties()
todo: delete this when I decide to not re-introduce msbuild_properties
type ProjectReference ¶
type ProjectReference struct { XMLName xml.Name Include string `xml:",attr"` Unsupported }
func (*ProjectReference) Evaluate ¶
func (i *ProjectReference) Evaluate(p *Project)
type Property ¶
type Property struct { XMLName xml.Name Value string `xml:",chardata"` Unsupported }
type PropertyGroup ¶
type PropertyGroup struct { Properties []Property `xml:",any"` Unsupported }
type Unsupported ¶
type Unsupported struct { UnsupportedAttrs []xml.Attr `xml:",attr,any"` UnsupportedElements []AnyElement `xml:",any"` }
Click to show internal directories.
Click to hide internal directories.