From b689698a7853bf8ce56a2d028e3ae47672ea090e Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Wed, 6 May 2015 23:40:20 +0200 Subject: add scan functions --- units.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/units.go b/units.go index c3da609..89abcc3 100644 --- a/units.go +++ b/units.go @@ -16,6 +16,11 @@ func (u Unit) String() string { return fmt.Sprintf("%.2f", u) } +func ScanUnit(s string) (u Unit) { + fmt.Sscanf(s, "%v", &u) + return +} + type Point struct { X, Y Unit } @@ -24,6 +29,11 @@ func (p Point) String() string { return fmt.Sprintf("%v,%v", p.X, p.Y) } +func ScanPoint(s string) (p Point) { + fmt.Sscanf(s, "%v,%v", &p.X, &p.Y) + return +} + type Triple struct { U, V, W Unit } @@ -32,6 +42,11 @@ func (t Triple) String() string { return fmt.Sprintf("%v,%v,%v", t.U, t.V, t.W) } +func ScanTriple(s string) (t Triple) { + fmt.Sscanf(s, "%v,%v,%v", &t.U, &t.V, &t.W) + return +} + type Polar struct { R, Theta Unit } -- cgit v1.2.3