|
- 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, " ")
- }
|