annotate dwtx/jface/util/Assert.d @ 4:c87617952847

some JFace modules
author Frank Benoit <benoit@tionex.de>
date Fri, 28 Mar 2008 17:08:33 +0100
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
1 /*******************************************************************************
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
2 * Copyright (c) 2000, 2006 IBM Corporation and others.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
3 * All rights reserved. This program and the accompanying materials
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
4 * are made available under the terms of the Eclipse Public License v1.0
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
5 * which accompanies this distribution, and is available at
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
6 * http://www.eclipse.org/legal/epl-v10.html
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
7 *
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
8 * Contributors:
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
9 * IBM Corporation - initial API and implementation
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
10 * Port to the D programming language:
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
11 * Frank Benoit <benoit@tionex.de>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
12 *******************************************************************************/
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
13 module dwtx.jface.util.Assert;
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
14
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
15 import dwt.dwthelper.utils;
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
16
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
17 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
18 * <code>Assert</code> is useful for for embedding runtime sanity checks
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
19 * in code. The static predicate methods all test a condition and throw some
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
20 * type of unchecked exception if the condition does not hold.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
21 * <p>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
22 * Assertion failure exceptions, like most runtime exceptions, are
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
23 * thrown when something is misbehaving. Assertion failures are invariably
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
24 * unspecified behavior; consequently, clients should never rely on
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
25 * these being thrown (or not thrown). <b>If you find yourself in the
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
26 * position where you need to catch an assertion failure, you have most
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
27 * certainly written your program incorrectly.</b>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
28 * </p>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
29 * <p>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
30 * Note that an <code>assert</code> statement is slated to be added to the
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
31 * Java language in JDK 1.4, rending this class obsolete.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
32 *
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
33 * @deprecated As of 3.3, replaced by {@link dwtx.core.runtime.Assert}
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
34 * </p>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
35 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
36 public final class Assert {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
37
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
38 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
39 * <code>AssertionFailedException</code> is a runtime exception thrown
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
40 * by some of the methods in <code>Assert</code>.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
41 * <p>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
42 * This class is not declared public to prevent some misuses; programs that catch
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
43 * or otherwise depend on assertion failures are susceptible to unexpected
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
44 * breakage when assertions in the code are added or removed.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
45 * </p>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
46 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
47 private static class AssertionFailedException : RuntimeException {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
48
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
49 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
50 * Generated serial version UID for this class.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
51 * @since 3.1
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
52 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
53 private static final long serialVersionUID = 3257852073508024376L;
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
54
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
55 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
56 * Constructs a new exception.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
57 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
58 public this() {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
59 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
60
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
61 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
62 * Constructs a new exception with the given message.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
63 * @param detail the detail message
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
64 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
65 public this(String detail) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
66 super(detail);
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
67 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
68 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
69
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
70 /* This class is not intended to be instantiated. */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
71 private this() {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
72 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
73
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
74 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
75 * Asserts that an argument is legal. If the given bool is
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
76 * not <code>true</code>, an <code>IllegalArgumentException</code>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
77 * is thrown.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
78 *
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
79 * @param expression the outcome of the check
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
80 * @return <code>true</code> if the check passes (does not return
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
81 * if the check fails)
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
82 * @exception IllegalArgumentException if the legality test failed
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
83 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
84 public static bool isLegal(bool expression) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
85 // succeed as quickly as possible
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
86 if (expression) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
87 return true;
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
88 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
89 return isLegal(expression, "");//$NON-NLS-1$
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
90 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
91
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
92 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
93 * Asserts that an argument is legal. If the given bool is
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
94 * not <code>true</code>, an <code>IllegalArgumentException</code>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
95 * is thrown.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
96 * The given message is included in that exception, to aid debugging.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
97 *
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
98 * @param expression the outcome of the check
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
99 * @param message the message to include in the exception
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
100 * @return <code>true</code> if the check passes (does not return
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
101 * if the check fails)
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
102 * @exception IllegalArgumentException if the legality test failed
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
103 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
104 public static bool isLegal(bool expression, String message) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
105 if (!expression) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
106 throw new IllegalArgumentException("assertion failed; " ~ message); //$NON-NLS-1$
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
107 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
108 return expression;
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
109 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
110
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
111 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
112 * Asserts that the given object is not <code>null</code>. If this
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
113 * is not the case, some kind of unchecked exception is thrown.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
114 * <p>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
115 * As a general rule, parameters passed to API methods must not be
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
116 * <code>null</code> unless <b>explicitly</b> allowed in the method's
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
117 * specification. Similarly, results returned from API methods are never
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
118 * <code>null</code> unless <b>explicitly</b> allowed in the method's
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
119 * specification. Implementations are encouraged to make regular use of
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
120 * <code>Assert.isNotNull</code> to ensure that <code>null</code>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
121 * parameters are detected as early as possible.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
122 * </p>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
123 *
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
124 * @param object the value to test
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
125 * @exception AssertionFailedException an unspecified unchecked exception if the object
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
126 * is <code>null</code>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
127 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
128 public static void isNotNull(Object object) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
129 // succeed as quickly as possible
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
130 if (object !is null) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
131 return;
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
132 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
133 isNotNull(object, "");//$NON-NLS-1$
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
134 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
135
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
136 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
137 * Asserts that the given object is not <code>null</code>. If this
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
138 * is not the case, some kind of unchecked exception is thrown.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
139 * The given message is included in that exception, to aid debugging.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
140 * <p>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
141 * As a general rule, parameters passed to API methods must not be
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
142 * <code>null</code> unless <b>explicitly</b> allowed in the method's
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
143 * specification. Similarly, results returned from API methods are never
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
144 * <code>null</code> unless <b>explicitly</b> allowed in the method's
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
145 * specification. Implementations are encouraged to make regular use of
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
146 * <code>Assert.isNotNull</code> to ensure that <code>null</code>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
147 * parameters are detected as early as possible.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
148 * </p>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
149 *
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
150 * @param object the value to test
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
151 * @param message the message to include in the exception
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
152 * @exception AssertionFailedException an unspecified unchecked exception if the object
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
153 * is <code>null</code>
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
154 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
155 public static void isNotNull(Object object, String message) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
156 if (object is null) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
157 throw new AssertionFailedException("null argument;" ~ message);//$NON-NLS-1$
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
158 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
159 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
160
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
161 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
162 * Asserts that the given bool is <code>true</code>. If this
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
163 * is not the case, some kind of unchecked exception is thrown.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
164 *
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
165 * @param expression the outcome of the check
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
166 * @return <code>true</code> if the check passes (does not return
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
167 * if the check fails)
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
168 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
169 public static bool isTrue(bool expression) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
170 // succeed as quickly as possible
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
171 if (expression) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
172 return true;
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
173 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
174 return isTrue(expression, "");//$NON-NLS-1$
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
175 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
176
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
177 /**
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
178 * Asserts that the given bool is <code>true</code>. If this
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
179 * is not the case, some kind of unchecked exception is thrown.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
180 * The given message is included in that exception, to aid debugging.
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
181 *
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
182 * @param expression the outcome of the check
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
183 * @param message the message to include in the exception
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
184 * @return <code>true</code> if the check passes (does not return
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
185 * if the check fails)
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
186 */
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
187 public static bool isTrue(bool expression, String message) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
188 if (!expression) {
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
189 throw new AssertionFailedException("Assertion failed: " ~ message);//$NON-NLS-1$
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
190 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
191 return expression;
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
192 }
c87617952847 some JFace modules
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
193 }