6. Editor Services

6.1. Main.esv

main:

module Main

imports Syntax Analysis

language

  extensions : calc

  provider : target/metaborg/stratego.ctree
  //provider : target/metaborg/stratego.jar
  provider : target/metaborg/stratego-javastrat.jar

6.2. Syntax.esv

syntax configuration:

module Syntax

imports

  libspoofax/color/default
  completion/colorer/Calc-cc-esv

language

  table         : target/metaborg/sdf-new.tbl
  start symbols : Program

  line comment  : "//"
  block comment : "/*" * "*/"
  fences        : [ ] ( ) { }

menus

  menu: "Syntax" (openeditor)

    action: "Format"          = editor-format (source)
    action: "Show parsed AST" = debug-show-aterm (source)

views

  outline view: editor-outline (source)
    expand to level: 3

6.3. Transformation.esv

transformation configuration:

module Transformation

menus

  menu: "Desugar" (openeditor)

    action: "Desugar" = desugar-pp (source)
    action: "Desugar (AST)" = desugar-aterm (source)

6.4. Analysis.esv

analysis configuration:

module Analysis

imports

  nabl2/Menus
  nabl2/References

language

  observer : editor-analyze (constraint)