LightJason - AgentSpeak(L++)
IAnnotation.java
Go to the documentation of this file.
1
/*
2
* @cond LICENSE
3
* ######################################################################################
4
* # LGPL License #
5
* # #
6
* # This file is part of the LightJason AgentSpeak(L++) #
7
* # Copyright (c) 2015-19, LightJason (info@lightjason.org) #
8
* # This program is free software: you can redistribute it and/or modify #
9
* # it under the terms of the GNU Lesser General Public License as #
10
* # published by the Free Software Foundation, either version 3 of the #
11
* # License, or (at your option) any later version. #
12
* # #
13
* # This program is distributed in the hope that it will be useful, #
14
* # but WITHOUT ANY WARRANTY; without even the implied warranty of #
15
* # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
16
* # GNU Lesser General Public License for more details. #
17
* # #
18
* # You should have received a copy of the GNU Lesser General Public License #
19
* # along with this program. If not, see http://www.gnu.org/licenses/ #
20
* ######################################################################################
21
* @endcond
22
*/
23
24
package
org.lightjason.agentspeak.language.instantiable.plan.annotation;
25
26
27
import
org
.
lightjason
.
agentspeak
.
language
.
IAssignable
;
28
import
org
.
lightjason
.
agentspeak
.
language
.
variable
.
IVariable
;
29
30
import
javax.annotation.Nonnull;
31
import
javax.annotation.Nullable;
32
import
java.util.stream.Stream;
33
34
40
public
interface
IAnnotation
<T>
extends
IAssignable
<T>
41
{
47
@Nonnull
48
EType
id
();
49
55
@Nullable
56
<N> N
value
();
57
63
@Nonnull
64
Stream<IVariable<?>>
variables
();
65
66
70
enum
EType
71
{
72
CONSTANT
(
"@Constant"
),
73
ATOMIC
(
"@Atomic"
),
74
PARALLEL
(
"@Parallel"
);
75
79
private
final
String
m_name
;
80
86
EType
(
final
String p_name )
87
{
88
m_name = p_name;
89
}
90
91
@Override
92
public
final
String
toString
()
93
{
94
return
m_name;
95
}
96
}
97
98
}
org.lightjason.agentspeak
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation.EType.ATOMIC
ATOMIC
Definition:
IAnnotation.java:73
org.lightjason.agentspeak.language.variable.IVariable
variable defintion
Definition:
IVariable.java:39
org.lightjason
org.lightjason.agentspeak.language
Definition:
language/CCommon.java:24
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation.EType.toString
final String toString()
Definition:
IAnnotation.java:92
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation.EType.EType
EType(final String p_name)
ctor
Definition:
IAnnotation.java:86
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation.value
< N > N value()
returns the data of the annotation if exists
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation.variables
Stream< IVariable<?> > variables()
returns a stream of variables
org
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation.EType.CONSTANT
CONSTANT
Definition:
IAnnotation.java:72
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation.EType.PARALLEL
PARALLEL
Definition:
IAnnotation.java:74
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation.id
EType id()
returns the type of the annotation
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation.EType.m_name
final String m_name
text name of the enum
Definition:
IAnnotation.java:79
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation.EType
annotation types
Definition:
IAnnotation.java:70
org.lightjason.agentspeak.language.IAssignable
interface of assignable structures
Definition:
IAssignable.java:33
org.lightjason.agentspeak.language.instantiable.plan.annotation.IAnnotation
annotation interface
Definition:
IAnnotation.java:40
org.lightjason.agentspeak.language.variable
Definition:
CConstant.java:24
src
main
java
org
lightjason
agentspeak
language
instantiable
plan
annotation
IAnnotation.java
Generated by
1.8.13