1e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin/*
2e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * Copyright (C) 2009 Google Inc.
3e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin *
4e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * Licensed under the Apache License, Version 2.0 (the "License");
5e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * you may not use this file except in compliance with the License.
6e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * You may obtain a copy of the License at
7e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin *
8e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * http://www.apache.org/licenses/LICENSE-2.0
9e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin *
10e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * Unless required by applicable law or agreed to in writing, software
11e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * distributed under the License is distributed on an "AS IS" BASIS,
12e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * See the License for the specific language governing permissions and
14e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * limitations under the License.
15e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin */
16e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin
17e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffinpackage com.google.caliper.api;
18e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin
19e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffinimport com.google.common.annotations.Beta;
20e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin
21e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffinimport java.lang.annotation.ElementType;
22e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffinimport java.lang.annotation.Retention;
23e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffinimport java.lang.annotation.RetentionPolicy;
24e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffinimport java.lang.annotation.Target;
25e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin
26e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin/**
27e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * An annotation applied to a benchmark that specifies flags to be applied to the VM. These flags
28e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * are applied before those specified on the command-line and thus are not guaranteed to be applied.
29e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin *
30e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin * <p>This API is likely to change.
31e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin */
32e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin// TODO(gak): Support platform (e.g. Android and Jvm) specific options.
33e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin@Retention(RetentionPolicy.RUNTIME)
34e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin@Target(ElementType.TYPE)
35e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin@Beta
36e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffinpublic @interface VmOptions {
37e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin  String[] value() default {};
38e236301e5fc778bffe1748ed80d7936e6c807012Paul Duffin}
39