mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-03 21:08:25 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			50 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package version
 | 
						|
 | 
						|
import (
 | 
						|
	"strings"
 | 
						|
)
 | 
						|
 | 
						|
type Constraint struct {
 | 
						|
	operator string
 | 
						|
	version  string
 | 
						|
}
 | 
						|
 | 
						|
// Return a new Constrain and sets operator and version to compare
 | 
						|
func NewConstrain(operator, version string) *Constraint {
 | 
						|
	constraint := new(Constraint)
 | 
						|
	constraint.SetOperator(operator)
 | 
						|
	constraint.SetVersion(version)
 | 
						|
 | 
						|
	return constraint
 | 
						|
}
 | 
						|
 | 
						|
// Sets operator to compare
 | 
						|
func (self *Constraint) SetOperator(operator string) {
 | 
						|
	self.operator = operator
 | 
						|
}
 | 
						|
 | 
						|
// Get operator to compare
 | 
						|
func (self *Constraint) GetOperator() string {
 | 
						|
	return self.operator
 | 
						|
}
 | 
						|
 | 
						|
// Sets version to compare
 | 
						|
func (self *Constraint) SetVersion(version string) {
 | 
						|
	self.version = version
 | 
						|
}
 | 
						|
 | 
						|
// Get version to compare
 | 
						|
func (self *Constraint) GetVersion() string {
 | 
						|
	return self.version
 | 
						|
}
 | 
						|
 | 
						|
// Match a given version againts the constraint
 | 
						|
func (self *Constraint) Match(version string) bool {
 | 
						|
	return Compare(version, self.version, self.operator)
 | 
						|
}
 | 
						|
 | 
						|
// Return a string representation
 | 
						|
func (self *Constraint) String() string {
 | 
						|
	return strings.Trim(self.operator+" "+self.version, " ")
 | 
						|
}
 |