samples/ydl2idl.ysl2
author Volker Birk <vb@pep.foundation>
Wed, 29 Aug 2018 23:53:10 +0200
changeset 20 c936066cff62
parent 0 76005e62091d
permissions -rw-r--r--
keywords as values in decl parameters
0
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
     1
include yslt.yml2
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
     2
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
     3
tstylesheet {
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
     4
    template "module" {
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
     5
        | module «name(*)» {
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
     6
        apply "*/interface";
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
     7
        | };
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
     8
    }
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
     9
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    10
    template "interface" {
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    11
        | interface «name(*)» {
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    12
        apply "*/*", mode="func";
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    13
        | };
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    14
    }
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    15
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    16
    template "*", mode="func"
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    17
        | «name(.)» «name(*)»(`apply "*/*", mode="parms";`);
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    18
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    19
    template "*", mode="parms" {
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    20
        > «name(.)» «name(*)» «name(*/*)»
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    21
        if "position() != last()" > , 
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    22
    }
76005e62091d initial commit
Volker Birk <vb@pep-project.org>
parents:
diff changeset
    23
}