001 /**
002 * Closed parenthesis token singleton
003 *
004 * @author Mathias Ricken
005 */
006 package sysModel.parser;
007
008 /**
009 * Closing parenthesis token.
010 *
011 * @author Mathias Ricken
012 */
013 public final class CloseToken implements IToken {
014 /**
015 * Singleton instance.
016 */
017 private static CloseToken _instance;
018
019 /**
020 * Return singleton instance.
021 *
022 * @return instance
023 */
024 public static synchronized CloseToken instance() {
025 if (null == _instance) {
026 _instance = new CloseToken();
027 }
028 return _instance;
029 }
030
031 /**
032 * Private singleton constructor.
033 */
034 private CloseToken() {
035 }
036
037 /**
038 * Execute visitor.
039 *
040 * @param v visitor
041 * @return visitor-specific return value
042 */
043 public Object execute(ITokenVisitor v) {
044 return v.closeCase();
045 }
046 }
047