< prev index next >

src/jdk.jcmd/share/classes/sun/tools/jstat/Expression.java

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this --- 1,7 ---- /* ! * Copyright (c) 2004, 2018, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this
*** 38,47 **** --- 38,48 ---- private boolean debug = Boolean.getBoolean("Expression.debug"); private Expression left; private Expression right; private Operator operator; private int ordinal = nextOrdinal++; + private boolean required = false; Expression() { if (debug) { System.out.println("Expression " + ordinal + " created"); }
*** 50,59 **** --- 51,61 ---- void setLeft(Expression left) { if (debug) { System.out.println("Setting left on " + ordinal + " to " + left); } this.left = left; + this.left.setRequired(required); } Expression getLeft() { return left; }
*** 61,70 **** --- 63,73 ---- void setRight(Expression right) { if (debug) { System.out.println("Setting right on " + ordinal + " to " + right); } this.right = right; + this.right.setRequired(required); } Expression getRight() { return right; }
*** 78,87 **** --- 81,104 ---- Operator getOperator() { return operator; } + void setRequired(boolean r) { + this.required = r; + if (left != null) { + left.setRequired(required); + } + if (right != null) { + right.setRequired(required); + } + } + + boolean isRequired() { + return required; + } + public String toString() { StringBuilder b = new StringBuilder(); b.append('('); if (left != null) { b.append(left.toString());
< prev index next >