001/*
002 * Copyright (C) 2012 Facebook, Inc.
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License"); you may
005 * not use this file except in compliance with the License. You may obtain
006 * a copy of the License at
007 *
008 *     http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
012 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
013 * License for the specific language governing permissions and limitations
014 * under the License.
015 */
016package com.facebook.swift.codec.internal.coercion;
017
018import java.lang.annotation.Documented;
019import java.lang.annotation.Retention;
020import java.lang.annotation.Target;
021
022import static java.lang.annotation.ElementType.METHOD;
023import static java.lang.annotation.RetentionPolicy.RUNTIME;
024
025/**
026 * Marks a method as being a conversion from a native Thrift type to a Java Type.  A method with
027 * this annotation must be public, static, with a single parameter of a native Thrift type, and can
028 * return any Java type other than void.
029 */
030@Documented
031@Retention(RUNTIME)
032@Target({METHOD})
033public @interface FromThrift
034{
035}