//# 0 errors, 113 messages
//#
/*
    //#TimeActionMetaType.java:1:1: class: com.dmdirc.addons.time.TimeActionMetaType$1
    //#TimeActionMetaType.java:1:1: method: com.dmdirc.addons.time.TimeActionMetaType$1.com.dmdirc.addons.time.TimeActionMetaType$1__static_init
    //#TimeActionMetaType.java:1:1: class: com.dmdirc.addons.time.TimeActionMetaType
 * Copyright (c) 2006-2009 Chris Smith, Shane Mc Cormack, Gregory Holmes
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

package com.dmdirc.addons.time;

import com.dmdirc.actions.interfaces.ActionMetaType;

import java.util.Calendar;

/**
 * Encapsulates the meta types used by the various time actions.
 * 
 * @author chris
 */
public enum TimeActionMetaType implements ActionMetaType {
    //#TimeActionMetaType.java:34: method: TimeActionMetaType[] com.dmdirc.addons.time.TimeActionMetaType.values()
    //#input(TimeActionMetaType[] values()): $VALUES
    //#input(TimeActionMetaType[] values()): $VALUES.length
    //#input(TimeActionMetaType[] values()): $VALUES[0,1]
    //#output(TimeActionMetaType[] values()): new TimeActionMetaType[](values#1) num objects
    //#output(TimeActionMetaType[] values()): return_value.length
    //#output(TimeActionMetaType[] values()): return_value[0,1]
    //#output(TimeActionMetaType[] values()): return_value
    //#new obj(TimeActionMetaType[] values()): new TimeActionMetaType[](values#1)
    //#pre[1] (TimeActionMetaType[] values()): (soft) init'ed($VALUES[0,1])
    //#post(TimeActionMetaType[] values()): return_value == &new TimeActionMetaType[](values#1)
    //#post(TimeActionMetaType[] values()): new TimeActionMetaType[](values#1) num objects == 1
    //#post(TimeActionMetaType[] values()): return_value.length == 1
    //#post(TimeActionMetaType[] values()): return_value[0,1] == One-of{$VALUES[0,1], undefined}
    //#TimeActionMetaType.java:34: end of method: TimeActionMetaType[] com.dmdirc.addons.time.TimeActionMetaType.values()
    //#TimeActionMetaType.java:34: method: TimeActionMetaType com.dmdirc.addons.time.TimeActionMetaType.valueOf(String)
    //#input(TimeActionMetaType valueOf(String)): __Descendant_Table[com/dmdirc/addons/time/TimeActionMetaType$1]
    //#input(TimeActionMetaType valueOf(String)): __Descendant_Table[com/dmdirc/addons/time/TimeActionMetaType]
    //#input(TimeActionMetaType valueOf(String)): __Descendant_Table[others]
    //#input(TimeActionMetaType valueOf(String)): name
    //#output(TimeActionMetaType valueOf(String)): return_value
    //#presumption(TimeActionMetaType valueOf(String)): java.lang.Enum:valueOf(...).__Tag@34 in {com/dmdirc/addons/time/TimeActionMetaType, com/dmdirc/addons/time/TimeActionMetaType$1}
    //#post(TimeActionMetaType valueOf(String)): init'ed(return_value)
    //#TimeActionMetaType.java:34: end of method: TimeActionMetaType com.dmdirc.addons.time.TimeActionMetaType.valueOf(String)
    //#TimeActionMetaType.java:34: method: void com.dmdirc.addons.time.TimeActionMetaType.com.dmdirc.addons.time.TimeActionMetaType(String, int)
    //#input(void com.dmdirc.addons.time.TimeActionMetaType(String, int)): Param_1
    //#input(void com.dmdirc.addons.time.TimeActionMetaType(String, int)): Param_2
    //#input(void com.dmdirc.addons.time.TimeActionMetaType(String, int)): this
    //#TimeActionMetaType.java:34: end of method: void com.dmdirc.addons.time.TimeActionMetaType.com.dmdirc.addons.time.TimeActionMetaType(String, int)
    //#TimeActionMetaType.java:34: method: void com.dmdirc.addons.time.TimeActionMetaType.com.dmdirc.addons.time.TimeActionMetaType(String, int, TimeActionMetaType$1)
    //#input(void com.dmdirc.addons.time.TimeActionMetaType(String, int, TimeActionMetaType$1)): this
    //#input(void com.dmdirc.addons.time.TimeActionMetaType(String, int, TimeActionMetaType$1)): x0
    //#input(void com.dmdirc.addons.time.TimeActionMetaType(String, int, TimeActionMetaType$1)): x1
    //#unanalyzed(void com.dmdirc.addons.time.TimeActionMetaType(String, int, TimeActionMetaType$1)): Effects-of-calling:java.lang.Enum
    //#TimeActionMetaType.java:34: end of method: void com.dmdirc.addons.time.TimeActionMetaType.com.dmdirc.addons.time.TimeActionMetaType(String, int, TimeActionMetaType$1)
    
    /** Time type. */
    TIME_TIME {
    //#TimeActionMetaType.java:37: method: void com.dmdirc.addons.time.TimeActionMetaType$1.com.dmdirc.addons.time.TimeActionMetaType$1(String, int)
    //#input(void com.dmdirc.addons.time.TimeActionMetaType$1(String, int)): Param_1
    //#input(void com.dmdirc.addons.time.TimeActionMetaType$1(String, int)): Param_2
    //#input(void com.dmdirc.addons.time.TimeActionMetaType$1(String, int)): this
    //#unanalyzed(void com.dmdirc.addons.time.TimeActionMetaType$1(String, int)): Effects-of-calling:java.lang.Enum
    //#TimeActionMetaType.java:37: end of method: void com.dmdirc.addons.time.TimeActionMetaType$1.com.dmdirc.addons.time.TimeActionMetaType$1(String, int)
    //#TimeActionMetaType.java:37: method: com.dmdirc.addons.time.TimeActionMetaType.com.dmdirc.addons.time.TimeActionMetaType__static_init
    //#output(com.dmdirc.addons.time.TimeActionMetaType__static_init): $VALUES
    //#output(com.dmdirc.addons.time.TimeActionMetaType__static_init): TIME_TIME
    //#output(com.dmdirc.addons.time.TimeActionMetaType__static_init): __Descendant_Table[com/dmdirc/addons/time/TimeActionMetaType]
    //#output(com.dmdirc.addons.time.TimeActionMetaType__static_init): __Dispatch_Table.getGroup()Ljava/lang/String;
    //#output(com.dmdirc.addons.time.TimeActionMetaType__static_init): new TimeActionMetaType$1(TimeActionMetaType__static_init#1) num objects
    //#output(com.dmdirc.addons.time.TimeActionMetaType__static_init): TIME_TIME.__Tag
    //#output(com.dmdirc.addons.time.TimeActionMetaType__static_init): new TimeActionMetaType[](TimeActionMetaType__static_init#2) num objects
    //#output(com.dmdirc.addons.time.TimeActionMetaType__static_init): $VALUES.length
    //#output(com.dmdirc.addons.time.TimeActionMetaType__static_init): $VALUES[0]
    //#new obj(com.dmdirc.addons.time.TimeActionMetaType__static_init): new TimeActionMetaType$1(TimeActionMetaType__static_init#1)
    //#new obj(com.dmdirc.addons.time.TimeActionMetaType__static_init): new TimeActionMetaType[](TimeActionMetaType__static_init#2)
    //#post(com.dmdirc.addons.time.TimeActionMetaType__static_init): $VALUES == &new TimeActionMetaType[](TimeActionMetaType__static_init#2)
    //#post(com.dmdirc.addons.time.TimeActionMetaType__static_init): TIME_TIME == &new TimeActionMetaType$1(TimeActionMetaType__static_init#1)
    //#post(com.dmdirc.addons.time.TimeActionMetaType__static_init): $VALUES[0] == &new TimeActionMetaType$1(TimeActionMetaType__static_init#1)
    //#post(com.dmdirc.addons.time.TimeActionMetaType__static_init): __Descendant_Table[com/dmdirc/addons/time/TimeActionMetaType] == &__Dispatch_Table
    //#post(com.dmdirc.addons.time.TimeActionMetaType__static_init): __Dispatch_Table.getGroup()Ljava/lang/String; == &getGroup
    //#post(com.dmdirc.addons.time.TimeActionMetaType__static_init): new TimeActionMetaType$1(TimeActionMetaType__static_init#1) num objects == 1
    //#post(com.dmdirc.addons.time.TimeActionMetaType__static_init): new TimeActionMetaType[](TimeActionMetaType__static_init#2) num objects == 1
    //#post(com.dmdirc.addons.time.TimeActionMetaType__static_init): $VALUES.length == 1
    //#post(com.dmdirc.addons.time.TimeActionMetaType__static_init): TIME_TIME.__Tag == com/dmdirc/addons/time/TimeActionMetaType$1
    //#unanalyzed(com.dmdirc.addons.time.TimeActionMetaType__static_init): Effects-of-calling:com.dmdirc.addons.time.TimeActionMetaType
    //#unanalyzed(com.dmdirc.addons.time.TimeActionMetaType__static_init): Effects-of-calling:java.lang.Enum
    //#TimeActionMetaType.java:37: end of method: com.dmdirc.addons.time.TimeActionMetaType.com.dmdirc.addons.time.TimeActionMetaType__static_init
        /** {@inheritDoc} */
        @Override
        public int getArity() { return 1; }
    //#TimeActionMetaType.java:40: method: int com.dmdirc.addons.time.TimeActionMetaType$1.getArity()
    //#output(int getArity()): return_value
    //#post(int getArity()): return_value == 1
    //#TimeActionMetaType.java:40: end of method: int com.dmdirc.addons.time.TimeActionMetaType$1.getArity()
        /** {@inheritDoc} */
        @Override
        public Class[] getArgTypes() { return new Class[]{Calendar.class}; }
    //#TimeActionMetaType.java:43: method: Class[] com.dmdirc.addons.time.TimeActionMetaType$1.getArgTypes()
    //#output(Class[] getArgTypes()): new Class[](getArgTypes#1) num objects
    //#output(Class[] getArgTypes()): return_value.length
    //#output(Class[] getArgTypes()): return_value[0]
    //#output(Class[] getArgTypes()): return_value
    //#new obj(Class[] getArgTypes()): new Class[](getArgTypes#1)
    //#post(Class[] getArgTypes()): return_value == &new Class[](getArgTypes#1)
    //#post(Class[] getArgTypes()): new Class[](getArgTypes#1) num objects == 1
    //#post(Class[] getArgTypes()): return_value.length == 1
    //#post(Class[] getArgTypes()): return_value[0] == &java.util.Calendar.__Class_Obj
    //#TimeActionMetaType.java:43: end of method: Class[] com.dmdirc.addons.time.TimeActionMetaType$1.getArgTypes()
        /** {@inheritDoc} */
        @Override
        public String[] getArgNames() { return new String[]{"Date"}; }
    //#TimeActionMetaType.java:46: method: String[] com.dmdirc.addons.time.TimeActionMetaType$1.getArgNames()
    //#output(String[] getArgNames()): new String[](getArgNames#1) num objects
    //#output(String[] getArgNames()): return_value.length
    //#output(String[] getArgNames()): return_value[0]
    //#output(String[] getArgNames()): return_value
    //#new obj(String[] getArgNames()): new String[](getArgNames#1)
    //#post(String[] getArgNames()): return_value == &new String[](getArgNames#1)
    //#post(String[] getArgNames()): new String[](getArgNames#1) num objects == 1
    //#post(String[] getArgNames()): return_value.length == 1
    //#post(String[] getArgNames()): return_value[0] == &"Date"
    //#TimeActionMetaType.java:46: end of method: String[] com.dmdirc.addons.time.TimeActionMetaType$1.getArgNames()
    };
        
    /** {@inheritDoc} */
    @Override
    public String getGroup() {
        return "Time Events";
    //#TimeActionMetaType.java:52: method: String com.dmdirc.addons.time.TimeActionMetaType.getGroup()
    //#output(String getGroup()): return_value
    //#post(String getGroup()): return_value == &"Time Events"
    //#TimeActionMetaType.java:52: end of method: String com.dmdirc.addons.time.TimeActionMetaType.getGroup()
    }    
    
}
    //#output(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): __Descendant_Table[com/dmdirc/addons/time/TimeActionMetaType$1]
    //#output(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): __Dispatch_Table.getArgNames()[Ljava/lang/String;
    //#output(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): __Dispatch_Table.getArgTypes()[Ljava/lang/Class;
    //#output(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): __Dispatch_Table.getArity()I
    //#output(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): __Dispatch_Table.getGroup()Ljava/lang/String;
    //#output(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): com/dmdirc/addons/time/TimeActionMetaType.__Descendant_Table[com/dmdirc/addons/time/TimeActionMetaType$1]
    //#post(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): __Descendant_Table[com/dmdirc/addons/time/TimeActionMetaType$1] == &__Dispatch_Table
    //#post(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): com/dmdirc/addons/time/TimeActionMetaType.__Descendant_Table[com/dmdirc/addons/time/TimeActionMetaType$1] == &__Dispatch_Table
    //#post(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): __Dispatch_Table.getArgNames()[Ljava/lang/String; == &getArgNames
    //#post(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): __Dispatch_Table.getArgTypes()[Ljava/lang/Class; == &getArgTypes
    //#post(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): __Dispatch_Table.getArity()I == &getArity
    //#post(com.dmdirc.addons.time.TimeActionMetaType$1__static_init): __Dispatch_Table.getGroup()Ljava/lang/String; == &com/dmdirc/addons/time/TimeActionMetaType.getGroup
    //#TimeActionMetaType.java:: end of method: com.dmdirc.addons.time.TimeActionMetaType$1.com.dmdirc.addons.time.TimeActionMetaType$1__static_init
    //#TimeActionMetaType.java:: end of class: com.dmdirc.addons.time.TimeActionMetaType$1
    //#TimeActionMetaType.java:: end of class: com.dmdirc.addons.time.TimeActionMetaType
