#

## Index

### Symbols

.chk, Description of the Check language
.xpt, Template files and encoding
*.ext, Xtend files

### A

Advice, Aspect-Oriented Programming in Xtend
AdviceContext, Proceeding
AOP, Aspect-Oriented Programming in Xtend, Aspect-Oriented Programming in Xpand
  Join point, Join Point and Point Cut Syntax
  Point cut, Join Point and Point Cut Syntax
  Workflow, Workflow File
  Xpand, Example for using Aspect-Oriented Programming in Xpand
AROUND, Aspect-Oriented Programming in Xpand, Templates, More Aspect Orientation
Aspect-Oriented Programming, Aspect-Oriented Programming in Xtend

### B

Boolean type, Simple types (Data types)
Built-in type, Built-In Types
  Collection types, Collection types
  Object, Object, Object
  Simple type, Simple types (Data types)
  Void, Void, Object

### C

cached, Cached Extensions
cartridge, Aspect-Oriented Programming in Xpand
Casting, Casting
CEND, PROTECT
Check
  File extension, Description of the Check language
  Language, Checking Constraints with the Check Language, Description of the Check language
Classpath, EXTENSION
collect, collect, Shorthand for collect (and more than that)
Collection, Collection types, FOREACH
Collection type, Collection Type Names
collection type, FOR vs. FOREACH
Constraint, Defining the constraint, Description of the Check language
create, Create Extensions (Model Transformation)
Create extension, The transformation
CSTART, PROTECT

### D

DEFINE, DEFINE
DirectoryCleaner, Defining the workflow
Dynamic EMF, Using Dynamic EMF

### E

EClassifiers, Type Names
ELSEIF, IF
EMF, Getting Started
EmfMetaModel, Templates, Type Names, The EMF Metamodel (org.eclipse.xtend.typesystem.emf.EmfMetaModel)
  metaModelPackage, Using Dynamic EMF
EMF metamodel, Using different Metamodel implementations (also known as Meta-Metamodels)
EMF project, Creating an EMF project
EmfRegistryMetaModel, The EMF Registry Metamodel (org.eclipse.xtend.typesystem.emf.EmfRegistryMetaModel)
EMF UML2 XMI, Generating Code
Encoding, Setting up the generator project (see File encoding)
ENDIF, IF
Enumeration
  Literal, StaticProperty literals
Enumeration (UML2), Profile Support
EPackages, Type Names
ERROR, ERROR
ExecutionContext, IExecutionContextAware
exists, exists
EXPAND, EXPAND, Metamodel
Expression, Expressions
  cached, Create Extensions (Model Transformation)
  call, Calling Extensions From Java
  chain, Chain expression
  create, The transformation
  if, if expression
  new, new expression
  separator, Specifying a Separator
  switch, switch expression
Expression language, Expressions
Extension, Extensions, Extension Import Statement
  caching, Cached Extensions
  create, Create Extensions (Model Transformation), The transformation
  invocation, Extension Invocation
  Java, Java Extensions
  private, Private Extensions
  recursion, Recursion
EXTENSION, EXTENSION

### F

FILE, FILE
File encoding
  encoding, Template files and encoding, Encoding, Output configuration
File extension
  .xpt, Template files and encoding
FOR, FOR vs. FOREACH
forAll, forAll
FOREACH, FOR vs. FOREACH

### G

Generator
  fileEncoding property, Encoding
  Metamodel configuration, Metamodel
  Workflow component, Generator Workflow Component
Genmodel, Generating the EMF tooling
GLOBALVAR, 'GLOBALVAR' expression
Global variables, Using GLOBALVARS to configure workflows
Guard conditions, Guard Conditions
Guillemet, Templates, Xpand2, Encoding

### I

IExecutionContextAware, IExecutionContextAware
IF, IF
import, Import Statements
IMPORT, IMPORT
Integer type, Simple types (Data types)
ITERATOR, FOREACH

### J

JavaBeansMetaModel, Calling Extensions From Java
JavaBeansStrategy, Calling Extensions From Java
JavaBeautifier, JavaBeautifier
Java extension, Java Extensions, Java Extensions
JavaMetaModel, Example JavaMetaModel, The Java Metamodel (org.eclipse.internal.xtend.type.impl.java.JavaMetaModel), Calling Extensions From Java
Join point, Join Point and Point Cut Syntax, Workflow configuration, Join Point and Point Cut Syntax
join point, Templates

### K

Keyword
  Property, Xpand keywords and metamodel properties

### L

LET, LET
List, Collection types
Literals, Literals and special operators for built-in types

### M

meta-metamodel, Generating the EMF tooling
MetaModel, Type Names
Metamodel, Eclipse IDE MetaModelContributors, Using different Metamodel implementations (also known as Meta-Metamodels), Metamodel Reference
  (non-invasive) extension, Xtend
  EMF, The EMF Metamodel (org.eclipse.xtend.typesystem.emf.EmfMetaModel)
  EMF Registry, The EMF Registry Metamodel (org.eclipse.xtend.typesystem.emf.EmfRegistryMetaModel)
  Implementing metamodels, Implementing Your Own Metamodel
  Java, The Java Metamodel (org.eclipse.internal.xtend.type.impl.java.JavaMetaModel)
  UML2, The UML2 Metamodel (org.eclipse.xtend.typesystem.uml2.UML2MetaModel), The UML2 Profile Metamodel (org.eclipse.xtend.typesystem.uml2.profile.ProfileMetaModel)
  XSD, The XSD Metamodel (org.eclipse.xtend.typesystem.xsd.XSDMetaModel)
MetamodelContributor, Eclipse IDE MetaModelContributors
Metamodel contributor, Setting up the project
Metamodel implementation, Metamodel Implementations (also known as Meta-Metamodels)
Model-to-model transformation, Model-to-Model transformation with Xtend
Model transformation, Create Extensions (Model Transformation)
Multiple dispatching, Multi methods (multiple dispatch)

### N

Namespace
  Import, Names
Newline, Controlling generation of whitespace
NoChangesVetoStrategy, VetoStrategy

### O

OCL, Expressions
ONFILECLOSE, Lazy evaluation
Operation, Metamodel Implementations (also known as Meta-Metamodels)
Outlet, FILE, Output configuration

### P

Point cut, Join Point and Point Cut Syntax, Join Point and Point Cut Syntax
Polymorphism, Type Inference, DEFINE
PostProcessor, PostProcessor
private, Private Extensions
proceed, Proceeding
ProfileMetaModel, The UML2 Profile Metamodel (org.eclipse.xtend.typesystem.uml2.profile.ProfileMetaModel)
property, Metamodel Implementations (also known as Meta-Metamodels)
PROTECT, PROTECT
Protected region, PROTECT, Protected Region Configuration
  Disable, PROTECT
  Enable, PROTECT
prSrcPaths, Protected Region Configuration

### R

Real type, Simple types (Data types)
Recursive extensions, Recursion
Reexport, Reexporting Extensions
reject, reject
REM, Comments
Return type, Type Inference

### S

select, select
SEPARATOR, Specifying a Separator
Set type, Collection types
SlotCopier, SlotCopier
SlotListAdder, SlotListAdder
SlotPrinter, SlotPrinter
sortBy, sortBy
Stereotype, Profile Support
String type, Simple types (Data types)
SystemCommand, SystemCommand

### T

Tagged value, Profile Support
Template
  File, Template files and encoding, DEFINE
  Polymorphism, DEFINE
Transformation, The transformation
Type
  Data type, Type System
  Operation, Features
  Parameter, Parameter Types
  Parameterized type, Type System
  Property, Features
  Static property, Features, StaticProperty literals
Type inference, Type Inference
typeSelect, typeSelect , Metamodel

### U

UML2, Setting up Eclipse
UML2MetaModel, The UML2 Metamodel (org.eclipse.xtend.typesystem.uml2.UML2MetaModel), Defining the workflow

### V

VetoStrategy, VetoStrategy

### W

Weaving advices, Aspect-Oriented Programming in Xtend
Whitespace
  Omit, Controlling generation of whitespace
WorkflowComponent, WorkflowComponent

### X

XMI, Defining the (meta)model
XMIReader, The XMI reader (org.eclipse.xtend.typesystem.uml2.profile.ProfilingExtensions.XmiReader)
XmiReader, Defining the workflow
XMI reader, The XMI reader (org.eclipse.xtend.typesystem.uml2.profile.ProfilingExtensions.XmiReader)
Xpand
  Comments, Comments
  Expression statements, Expression Statement
  Language, Xpand2
XpandException, ERROR
XSDMetaModel, The XSD Metamodel (org.eclipse.xtend.typesystem.xsd.XSDMetaModel)
Xtend, EXTENSION
  Comments, Comments
  File extension, Xtend files
  Language, Xtend
XtendComponent, WorkflowComponent
  Advices, Workflow configuration
XtendFacade, Calling Extensions From Java