1e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount/*
2e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * Copyright (C) 2015 The Android Open Source Project
3e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount *
4e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * Licensed under the Apache License, Version 2.0 (the "License");
5e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * you may not use this file except in compliance with the License.
6e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * You may obtain a copy of the License at
7e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount *
8e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount *      http://www.apache.org/licenses/LICENSE-2.0
9e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount *
10e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * Unless required by applicable law or agreed to in writing, software
11e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * distributed under the License is distributed on an "AS IS" BASIS,
12e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * See the License for the specific language governing permissions and
14e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * limitations under the License.
15e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount */
16e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mountpackage android.databinding;
17e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount
18c9a5d6f140f732ca0ff279a4b1ee315072e1c422George Mountimport android.view.LayoutInflater;
19c9a5d6f140f732ca0ff279a4b1ee315072e1c422George Mountimport android.view.View;
20c9a5d6f140f732ca0ff279a4b1ee315072e1c422George Mountimport android.view.ViewGroup;
21c9a5d6f140f732ca0ff279a4b1ee315072e1c422George Mount
22e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount/**
23e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * This interface is generated during compilation to contain getters for all used instance
24e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * BindingAdapters. When a BindingAdapter is an instance method, an instance of the class
25e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * implementing the method must be instantiated. This interface will be generated with a getter
26e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * for each class with the name get* where * is simple class name of the declaring BindingAdapter
27e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * class/interface. Name collisions will be resolved by adding a numeric suffix to the getter.
28e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * <p>
29e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * An instance of this class may also be passed into static or instance BindingAdapters as the
30e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * first parameter.
31e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * <p>
32c9a5d6f140f732ca0ff279a4b1ee315072e1c422George Mount * If using Dagger 2, the developer should extend this interface and annotate the extended interface
33e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount * as a Component.
34c9a5d6f140f732ca0ff279a4b1ee315072e1c422George Mount *
35c9a5d6f140f732ca0ff279a4b1ee315072e1c422George Mount * @see DataBindingUtil#setDefaultComponent(DataBindingComponent)
36c9a5d6f140f732ca0ff279a4b1ee315072e1c422George Mount * @see DataBindingUtil#inflate(LayoutInflater, int, ViewGroup, boolean, DataBindingComponent)
37c9a5d6f140f732ca0ff279a4b1ee315072e1c422George Mount * @see DataBindingUtil#bind(View, DataBindingComponent)
38e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount */
39e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mountpublic interface DataBindingComponent {
40e4cd38824a6627b9fef229c549c636e35ad63b5fGeorge Mount}
41