~ubuntu-branches/ubuntu/natty/aspectj/natty

« back to all changes in this revision

Viewing changes to org.aspectj/modules/docs/sandbox/ubc-design-patterns/src/ca/ubc/cs/spl/aspectPatterns/examples/interpreter/aspectj/NotExpression.java

  • Committer: Bazaar Package Importer
  • Author(s): Damien Raude-Morvan
  • Date: 2009-10-04 16:37:23 UTC
  • mfrom: (1.1.3 upstream) (3.1.3 sid)
  • Revision ID: james.westby@ubuntu.com-20091004163723-ck4y7j7fhjxskkie
Tags: 1.6.6+dfsg-1
* New upstream release.
  - Update 02_use_gjdoc.diff patch
* Update my email address

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
package ca.ubc.cs.spl.aspectPatterns.examples.interpreter.aspectj;
2
 
 
3
 
/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
4
 
 *
5
 
 * This file is part of the design patterns project at UBC
6
 
 *
7
 
 * The contents of this file are subject to the Mozilla Public License
8
 
 * Version 1.1 (the "License"); you may not use this file except in
9
 
 * compliance with the License. You may obtain a copy of the License at
10
 
 * either http://www.mozilla.org/MPL/ or http://aspectj.org/MPL/.
11
 
 *
12
 
 * Software distributed under the License is distributed on an "AS IS" basis,
13
 
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
14
 
 * for the specific language governing rights and limitations under the
15
 
 * License.
16
 
 *
17
 
 * The Original Code is ca.ubc.cs.spl.aspectPatterns.
18
 
 * 
19
 
 * For more details and the latest version of this code, please see:
20
 
 * http://www.cs.ubc.ca/labs/spl/projects/aodps.html
21
 
 *
22
 
 * Contributor(s):   
23
 
 */
24
 
 
25
 
/**
26
 
 * Implements negation for booleans expressions. This is a concrete boolean
27
 
 * <i>NonterminalExpression</i>
28
 
 *
29
 
 * @author  Jan Hannemann
30
 
 * @author  Gregor Kiczales
31
 
 * @version 1.1, 02/11/04
32
 
 */
33
 
 
34
 
public class NotExpression implements BooleanExpression {
35
 
 
36
 
    /** 
37
 
     * the <i>Expression</i> this <i>Expression</i> negates
38
 
     */
39
 
     
40
 
        protected BooleanExpression exp = null;
41
 
        
42
 
        /**
43
 
         * Creates a new NOT <i>Expression</i> negating the argument expression   
44
 
         *
45
 
         * @param exp the <i>Expression</i> to negate  
46
 
         */
47
 
 
48
 
        public NotExpression(BooleanExpression exp) {
49
 
                this.exp = exp;
50
 
        }
51
 
        
52
 
    /**
53
 
     * Evaluates this <i>Expression</i> in the given 
54
 
     * <i>Context</i>
55
 
     *
56
 
     * @param c the context to evaluate the <i>Expression</i> in
57
 
     * @return the boolean value of the <i>Expression</i>
58
 
     */
59
 
 
60
 
        public boolean evaluate(VariableContext c) {
61
 
                return (! exp.evaluate(c)); 
62
 
        }
63
 
}
 
 
b'\\ No newline at end of file'