1 /*
2 * Copyright (c) 2008 Texas Instruments and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors:
9 * Texas Instruments - initial implementation
10 *
11 * */
12 /*
13 * ======== Script.xdc ========
14 */
15 package xdc.bld;
16
17 /*!
18 * ======== Script ========
19 * Model of a script
20 */
21 metaonlymodule Script {
22 /*!
23 * ======== Attrs ========
24 * Optional attributes for a script instance.
25 *
26 * @field(releases) This array contains releases that will contain the
27 * script. Thus, a single script can be part of any set of
28 * releases. Each script is always added to the package's
29 * "default release" in addition to any releases specified in
30 * the releases array.
31 *
32 * @field(hasMain) This script defines a `main()` function. This
33 * function is called after the capsule is loaded. If the
34 * script does not define `main()`, it must contain statements
35 * that will run script as part of loading the script.
36 *
37 * @field(exportSrc) Scripts are added to the default release
38 * unless this flag is set to `false`.
39 *
40 * @see #attrs
41 */
42 struct Attrs {
43 Bool hasMain; /*! if true, this script defines main() */
44 Bool exportSrc; /*! if false, don't add to default release */
45 Release.Instance releases[]; /*! releases this script is a part of */
46 };
47
48 instance:
49 /*!
50 * ======== create ========
51 * @_nodoc 52 * Instances should only be created via PackageContents.addScript()
53 */
54 create();
55
56 config String name;
57
58 /*!
59 * ======== attrs ========
60 * Optional attributes for this test instance.
61 *
62 */
63 config Script.Attrs attrs;
64
65 /*!
66 * ======== addTest ========
67 * Add specified test to script
68 *
69 * A test encapsulates a script and a set of arguments passed to
70 * the script when it is run.
71 *
72 * Tests are run by naming the goal "<test_name>.test" on the xdc
73 * command line; <test_name> is the test's name.
74 *
75 * Multiple tests may have the same name; in this case, it is possible
76 * to run all tests using the single goal "<test_name>.test"
77 *
78 * @param(testAttrs) optional test attrs object
79 * (`{@link xdc.bld.Test#Attrs}`)
80 *
81 * @a(returns) Returns the `{@link xdc.bld.Test}` instance object
82 * created.
83 *
84 * @a(throws) `Error` exceptions are thrown for fatal errors.
85 *
86 * @see xdc.bld.Test
87 * @see xdc.bld.Test#Attrs
88 */
89 Test.Instance addTest(Test.Attrs testAttrs = {});
90 }
91 /*
92 * @(#) xdc.bld; 1, 0, 2,389; 9-20-2012 15:01:53; /db/ztree/library/trees/xdc/xdc-y36x/src/packages/
93 */
94