Child pages
  • Scripting IDE for DSL awareness
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »

Non-PSI infrastructure


runner runnerClass:"a.b.C"

          defaultRunnerParams:["a","b",...] {

  location type: File,Class

              nameFiler: e -> ...


debugger {


//todo support dynamically-named methods resolve&completion
//todo set types for things that exist in code but with no type specified (closure parameters, etc.)

mix foo.StringUtils intoClass:java.lang.String
mix xxx.GantScript intoScript:"gant"
mix foo.MyPreciousClass { whereClass.hasAnnotation "foo.Precious" }

mix com.intellij.groovy.DslScript intoScript:"gdsl"
mix com.intellij.groovy.ValuePredicates intoClass:groovy.lang.Closure { 
  methodParameter "com.intellij.groovy.DslScript", "mix", "where"

class DslScript {
  void mix(category, map, Closure where) {}
  //todo refine existing method declaration, specify parameters name&type
  //todo refine existing field declaration, specify type

class ClassPredicates {
  boolean hasAnnotation(String qname) {}

class ValuePredicates {
  ClassPreicates getWhereClass() {}
  boolean methodParameter(String cls, String method, String param) {}
  • No labels