func NewField(input []string) (*Field, error) { buf, err := buffer.NewBufferByInput(input) if err != nil { return nil, err } return &Field{ buffer: buf, }, nil }
func NewStoneBase(number int, input []string) (*StoneBase, error) { buf, err := buffer.NewBufferByInput(input) if err != nil { return nil, err } rect := buf.GetRect() trimmedBuf := buf.Trim(rect) m := &StoneBase{ number: number, buffer: trimmedBuf, rect: rect, count: trimmedBuf.Count(), } m.createVariations() return m, nil }