6 <xsl:param name="tree"/> |
6 <xsl:param name="tree"/> |
7 <xsl:template match="text()"> |
7 <xsl:template match="text()"> |
8 <xsl:param name="_indent" select="0"/> |
8 <xsl:param name="_indent" select="0"/> |
9 </xsl:template> |
9 </xsl:template> |
10 <xsl:variable name="project"> |
10 <xsl:variable name="project"> |
11 <xsl:choose> |
11 <xsl:copy-of select="document('project')/project/*"/> |
12 <xsl:when test="$tree='True'"> |
|
13 <xsl:copy-of select="document('project')/project/*"/> |
|
14 </xsl:when> |
|
15 </xsl:choose> |
|
16 </xsl:variable> |
12 </xsl:variable> |
17 <xsl:variable name="stdlib"> |
13 <xsl:variable name="stdlib"> |
18 <xsl:choose> |
14 <xsl:copy-of select="document('stdlib')/stdlib/*"/> |
19 <xsl:when test="$tree='True'"> |
|
20 <xsl:copy-of select="document('stdlib')/stdlib/*"/> |
|
21 </xsl:when> |
|
22 </xsl:choose> |
|
23 </xsl:variable> |
15 </xsl:variable> |
24 <xsl:variable name="extensions"> |
16 <xsl:variable name="extensions"> |
25 <xsl:choose> |
17 <xsl:copy-of select="document('extensions')/extensions/*"/> |
26 <xsl:when test="$tree='True'"> |
|
27 <xsl:copy-of select="document('extensions')/extensions/*"/> |
|
28 </xsl:when> |
|
29 </xsl:choose> |
|
30 </xsl:variable> |
18 </xsl:variable> |
31 <xsl:template match="ppx:configuration"> |
19 <xsl:template match="ppx:configuration"> |
32 <xsl:param name="_indent" select="0"/> |
20 <xsl:param name="_indent" select="0"/> |
33 <xsl:apply-templates select="ppx:globalVars"> |
21 <xsl:apply-templates select="ppx:globalVars"> |
34 <xsl:with-param name="_indent" select="$_indent + (1) * $autoindent"/> |
22 <xsl:with-param name="_indent" select="$_indent + (1) * $autoindent"/> |
159 <xsl:template mode="var_type" match="ppx:variable"> |
147 <xsl:template mode="var_type" match="ppx:variable"> |
160 <xsl:param name="_indent" select="0"/> |
148 <xsl:param name="_indent" select="0"/> |
161 <xsl:variable name="name"> |
149 <xsl:variable name="name"> |
162 <xsl:value-of select="@name"/> |
150 <xsl:value-of select="@name"/> |
163 </xsl:variable> |
151 </xsl:variable> |
164 <xsl:value-of select="ns:AddTree($name)"/> |
152 <xsl:value-of select="ns:AddTree()"/> |
165 <xsl:apply-templates mode="var_type" select="ppx:type"> |
153 <xsl:apply-templates mode="var_type" select="ppx:type"> |
166 <xsl:with-param name="_indent" select="$_indent + (1) * $autoindent"/> |
154 <xsl:with-param name="_indent" select="$_indent + (1) * $autoindent"/> |
167 </xsl:apply-templates> |
155 </xsl:apply-templates> |
168 <xsl:value-of select="ns:AddVarToTree($name)"/> |
156 <xsl:value-of select="ns:AddVarToTree($name)"/> |
169 </xsl:template> |
157 </xsl:template> |
197 <xsl:param name="_indent" select="0"/> |
185 <xsl:param name="_indent" select="0"/> |
198 <xsl:apply-templates mode="var_type" select="ppx:baseType"> |
186 <xsl:apply-templates mode="var_type" select="ppx:baseType"> |
199 <xsl:with-param name="_indent" select="$_indent + (1) * $autoindent"/> |
187 <xsl:with-param name="_indent" select="$_indent + (1) * $autoindent"/> |
200 </xsl:apply-templates> |
188 </xsl:apply-templates> |
201 <xsl:for-each select="ppx:dimension"> |
189 <xsl:for-each select="ppx:dimension"> |
202 <xsl:value-of select="ns:AddDimension(@lower, @upper)"/> |
190 <xsl:variable name="lower"> |
|
191 <xsl:value-of select="@lower"/> |
|
192 </xsl:variable> |
|
193 <xsl:variable name="upper"> |
|
194 <xsl:value-of select="@upper"/> |
|
195 </xsl:variable> |
|
196 <xsl:value-of select="ns:AddDimension($lower, $upper)"/> |
203 </xsl:for-each> |
197 </xsl:for-each> |
204 </xsl:template> |
198 </xsl:template> |
205 <xsl:template mode="var_type" match="*[self::ppx:type or self::ppx:baseType or self::ppx:returnType]/ppx:string"> |
199 <xsl:template mode="var_type" match="*[self::ppx:type or self::ppx:baseType or self::ppx:returnType]/ppx:string"> |
206 <xsl:param name="_indent" select="0"/> |
200 <xsl:param name="_indent" select="0"/> |
207 <xsl:variable name="name"> |
201 <xsl:variable name="name"> |
223 </xsl:variable> |
217 </xsl:variable> |
224 <xsl:value-of select="ns:SetType($name)"/> |
218 <xsl:value-of select="ns:SetType($name)"/> |
225 </xsl:template> |
219 </xsl:template> |
226 <xsl:template mode="var_edit" match="*[self::ppx:type or self::ppx:baseType or self::ppx:returnType]/ppx:derived"> |
220 <xsl:template mode="var_edit" match="*[self::ppx:type or self::ppx:baseType or self::ppx:returnType]/ppx:derived"> |
227 <xsl:param name="_indent" select="0"/> |
221 <xsl:param name="_indent" select="0"/> |
228 <xsl:variable name="type_name" select="@name"/> |
222 <xsl:variable name="type_name"> |
|
223 <xsl:value-of select="@name"/> |
|
224 </xsl:variable> |
229 <xsl:variable name="pou_infos"> |
225 <xsl:variable name="pou_infos"> |
230 <xsl:copy-of select="exsl:node-set($project)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | exsl:node-set($stdlib)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | exsl:node-set($extensions)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]"/> |
226 <xsl:copy-of select="exsl:node-set($project)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | exsl:node-set($stdlib)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | exsl:node-set($extensions)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]"/> |
231 </xsl:variable> |
227 </xsl:variable> |
232 <xsl:choose> |
228 <xsl:choose> |
233 <xsl:when test="$pou_infos != ''"> |
229 <xsl:when test="$pou_infos != ''"> |