From af67d08746d7a90f5a1b4e6cc92002c661cd3964 Mon Sep 17 00:00:00 2001 From: Chinmay Garde Date: Tue, 23 Jun 2015 13:58:44 -0700 Subject: [PATCH] Minor: Add result types for known failure cases --- packages/cassowary/lib/cassowary.dart | 1 + packages/cassowary/lib/result.dart | 29 +++++++++++++++++++++++++++ packages/cassowary/lib/solver.dart | 28 +++++++++++++------------- 3 files changed, 44 insertions(+), 14 deletions(-) create mode 100644 packages/cassowary/lib/result.dart diff --git a/packages/cassowary/lib/cassowary.dart b/packages/cassowary/lib/cassowary.dart index 1666b0dd446..40f58941e68 100644 --- a/packages/cassowary/lib/cassowary.dart +++ b/packages/cassowary/lib/cassowary.dart @@ -14,3 +14,4 @@ part 'solver.dart'; part 'symbol.dart'; part 'row.dart'; part 'utils.dart'; +part 'result.dart'; diff --git a/packages/cassowary/lib/result.dart b/packages/cassowary/lib/result.dart new file mode 100644 index 00000000000..20aee96b5b2 --- /dev/null +++ b/packages/cassowary/lib/result.dart @@ -0,0 +1,29 @@ +// Copyright (c) 2015 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +part of cassowary; + +class Result { + final bool error; + final String message; + + const Result(this.message, this.error); + + static final Result success = const Result("Success", false); + static final Result unimplemented = const Result("Unimplemented", true); + static final Result duplicateConstraint = + const Result("Duplicate Constraint", true); + static final Result unsatisfiableConstraint = + const Result("Unsatisfiable Constraint", true); + static final Result unknownConstraint = + const Result("Unknown Constraint", true); + static final Result duplicateEditVariable = + const Result("Duplicate Edit Variable", true); + static final Result badRequiredStrength = + const Result("Bad Required Strength", true); + static final Result unknownEditVariable = + const Result("Unknown Edit Variable", true); + static final Result internalSolverError = + const Result("Internal Solver Error", true); +} diff --git a/packages/cassowary/lib/solver.dart b/packages/cassowary/lib/solver.dart index 3d9c91ab667..e4a20863ce4 100644 --- a/packages/cassowary/lib/solver.dart +++ b/packages/cassowary/lib/solver.dart @@ -13,32 +13,32 @@ class Solver { final Row _objective = new Row(); final Row _artificial = new Row(); - bool addConstraint(Constraint c) { - return false; + Result addConstraint(Constraint c) { + return Result.unimplemented; } - bool removeContraint(Constraint c) { - return false; + Result removeContraint(Constraint c) { + return Result.unimplemented; } - bool hasConstraint(Constraint c) { - return false; + Result hasConstraint(Constraint c) { + return Result.unimplemented; } - bool addEditVariable(Variable v, double priority) { - return false; + Result addEditVariable(Variable v, double priority) { + return Result.unimplemented; } - bool removeEditVariable(Variable v) { - return false; + Result removeEditVariable(Variable v) { + return Result.unimplemented; } - bool hasEditVariable(Variable v) { - return false; + Result hasEditVariable(Variable v) { + return Result.unimplemented; } - bool suggestVariable(Variable v, double value) { - return false; + Result suggestVariable(Variable v, double value) { + return Result.unimplemented; } void updateVariable() {}