Xtend User Guide

  1. Getting Started
    1. Introduction
    2. Hello World
    3. The Movies Example
      1. The Data
      2. Parsing The Data
      3. Answering Some Questions
        1. Question 1 : What Is The Number Of Action Movies?
        2. Question 2 : What Is The Year The Best Movie From The 80's Was Released?
        3. Question 3 : What Is The The Sum Of All Votes Of The Top Two Movies?
  2. Reference Documentation
    1. Java Interoperability
      1. Type Inference
      2. Conversion Rules
      3. Interoperability with Java
    2. Classes and Members
      1. Package Declaration
      2. Imports
      3. Class Declaration
      4. Constructors
      5. Fields
      6. Methods
        1. Abstract Methods
        2. Overriding Methods
        3. Declared Exceptions
        4. Inferred Return Types
        5. Generic Methods
        6. Dispatch Methods
          1. Dispatch Methods and Inheritance
          2. Static Dispatch Methods
      7. Annotations
      8. Extension Methods
        1. Extensions from the Library
        2. Local Extension Methods
        3. Extension Imports
        4. Extension Provider
      9. Interface Declaration
      10. Annotation Type Declaration
      11. Enum Type Declaration
    3. Expressions
      1. Literals
        1. String Literals
        2. Character Literals
        3. Number Literals
        4. Boolean Literals
        5. Null Literal
        6. Type Literals
        7. Collection Literals
        8. Arrays
      2. Type Casts
      3. Infix Operators and Operator Overloading
        1. Short-Circuit Boolean Operators
        2. Defined Operators in The Library
          1. Equality Operators
          2. Comparison Operators
          3. Arithmetic Operators
          4. Elvis Operator
          5. With Operator
          6. Range Operators
          7. Pair Operator
        3. Assignments
          1. Setting Properties
      4. Blocks
      5. Variable Declarations
        1. Typing
      6. Field Access and Method Invocation
        1. Property Access
        2. Implicit Variables this and it
        3. Static Access
        4. Null-Safe Feature Call
      7. Constructor Call
      8. Lambda Expressions
        1. Typing
      9. If Expression
      10. Switch Expression
        1. Type guards
      11. For Loop
      12. While Loop
      13. Do-While Loop
      14. Return Expression
      15. Throwing Exceptions
      16. Try, Catch, Finally
      17. Template Expressions
        1. Conditions in Templates
        2. Loops in Templates
        3. Typing
        4. White Space Handling
    4. Active Annotations
      1. Annotation Processor
        1. Phase 1: Register Globals
        2. Phase 2: Transformation
        3. Phase 3: Code Generation
      2. On Expressions and Statements
        1. Generating Blackbox Java Code
        2. Assigning Expressions
      3. Custom Compiler Checks
      4. Class Path Setup and Testing
        1. Testing
        2. Wrap Up
      5. Existing Active Annotations
      6. @Property
      7. @Data