14b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet/* 24b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * Copyright (C) 2011 The Android Open Source Project 34b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * 44b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * Licensed under the Apache License, Version 2.0 (the "License"); 54b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * you may not use this file except in compliance with the License. 64b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * You may obtain a copy of the License at 74b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * 84b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * http://www.apache.org/licenses/LICENSE-2.0 94b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * 104b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * Unless required by applicable law or agreed to in writing, software 114b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * distributed under the License is distributed on an "AS IS" BASIS, 124b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 134b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * See the License for the specific language governing permissions and 144b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * limitations under the License. 154b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet */ 164b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet 174b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohetpackage com.android.tools.layoutlib.create.dataclass; 184b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet 194b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohetimport com.android.tools.layoutlib.create.DelegateClassAdapterTest; 204b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet 214b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet/** 224b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * Test class with an inner class. 234b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * 244b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet * Used by {@link DelegateClassAdapterTest}. 254b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet */ 264b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohetpublic class OuterClass { 274b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet private int mOuterValue = 1; 284b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet public OuterClass() { 294b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet } 304b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet 314b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet // Outer.get returns 1 + a + b 324b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet // Note: it's good to have a long or double for testing parameters since they take 334b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet // 2 slots in the stack/locals maps. 344b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet public int get(int a, long b) { 354b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet return mOuterValue + a + (int) b; 364b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet } 374b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet 384b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet public class InnerClass { 394b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet public InnerClass() { 404b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet } 414b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet 42865c3bef54228a353fd449a093b0c8d155618296Raphael Moll // Inner.get returns 2 + 1 + a + b 434b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet public int get(int a, long b) { 444b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet return 2 + mOuterValue + a + (int) b; 454b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet } 464b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet } 47865c3bef54228a353fd449a093b0c8d155618296Raphael Moll 48865c3bef54228a353fd449a093b0c8d155618296Raphael Moll @SuppressWarnings("unused") 49865c3bef54228a353fd449a093b0c8d155618296Raphael Moll private String privateMethod() { 50865c3bef54228a353fd449a093b0c8d155618296Raphael Moll return "outerPrivateMethod"; 51865c3bef54228a353fd449a093b0c8d155618296Raphael Moll } 524b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet} 534b52ec49fee79b0488d6a9eaaa4ea5d74ce90905Xavier Ducrohet 54