001    // Copyright 2006 Waterken Inc. under the terms of the MIT X license
002    // found at http://www.opensource.org/licenses/mit-license.html
003    package org.ref_send;
004    
005    import java.lang.annotation.ElementType;
006    import java.lang.annotation.Retention;
007    import java.lang.annotation.RetentionPolicy;
008    import java.lang.annotation.Target;
009    
010    /**
011     * Marks the deserialization constructor.
012     * <p>
013     * This annotation MUST only be put on a single {@code public} constructor of a 
014     * {@code public} class in a {@linkplain org.joe_e.IsJoeE Joe-E package}. Each
015     * parameter of the constructor MUST be {@linkplain name annotated} with the
016     * name of the corresponding {@code public final} instance field.
017     * </p>
018     */
019    @Retention(RetentionPolicy.RUNTIME)
020    @Target(ElementType.CONSTRUCTOR)
021    public @interface
022    deserializer {}