Home | History | Annotate | Download | only in 1.0
      1 /*
      2  * Copyright (C) 2016 The Android Open Source Project
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *      http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  * See the License for the specific language governing permissions and
     14  * limitations under the License.
     15  */
     16 
     17 package android.hardware.tests.expression@1.0;
     18 
     19 import IExpression;
     20 
     21 interface IExpressionExt {
     22 
     23     enum NewEnum : int32_t {
     24         ENUM_GOOD = Constants:CONST_BAR,
     25         ENUM_BETTER = IExpression.Constants:CONST_BAR,
     26         ENUM_BEST = android.hardware.tests.expression@1.0::IExpression.Constants:CONST_BAR,
     27     };
     28 
     29     typedef Constants AlsoConstants;
     30 
     31     typedef Color[((Constants:MAX_ARRAY_SIZE << 1) - (AlsoConstants:CONST_FOO + 1)*8) >> 1] SixteenColors;
     32     struct ArrayOfColors {
     33         Color[(Constants:MAX_ARRAY_SIZE << 1) - (Constants:CONST_FOO + 1)*8] my32Colors; // 32
     34     };
     35     struct AnotherArrayOfColors {
     36         SixteenColors my16Colors;
     37     };
     38 
     39     @callflow(key=@1.0::IExpression.Constants:MAX_ARRAY_SIZE)
     40     foo3(int32_t[IExpression.Constants:MAX_ARRAY_SIZE] array);
     41     foo2(SixteenColors array);
     42     foo1(int32_t[Constants:CONST_FOO + 5] array);
     43 };
     44