plcopen/pou_variables.ysl2
changeset 3868 e9807c28a788
parent 3802 8616ffd7c29d
equal deleted inserted replaced
3867:a070a9681961 3868:e9807c28a788
   168             with "class" > program
   168             with "class" > program
   169             with "type" > «@typeName»
   169             with "type" > «@typeName»
   170         }
   170         }
   171     }
   171     }
   172     
   172     
       
   173     template "*[self::ppx:type or self::ppx:baseType]/*", mode="var_class" {
       
   174         param "default_class";
       
   175         value "$default_class";
       
   176     }
       
   177   
   173     template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_class" {
   178     template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_class" {
   174         param "default_class";
   179         param "default_class";
   175         variable "type_name", "@name";
   180         variable "type_name", "@name";
   176         variable "pou_infos", "$all_types/ppx:pous/ppx:pou[@name=$type_name]";
   181         variable "pou_infos", "$all_types/ppx:pous/ppx:pou[@name=$type_name]";
   177         choose {
   182         choose {
   186     
   191     
   187     template "ppx:pou", mode="var_class" {
   192     template "ppx:pou", mode="var_class" {
   188         value "@pouType";
   193         value "@pouType";
   189     }
   194     }
   190     
   195     
   191     template "*[self::ppx:type or self::ppx:baseType]/*", mode="var_class", priority="-1.0" {
   196     template "*[self::ppx:type or self::ppx:baseType]/*", mode="var_type" {
   192         param "default_class";
   197         > «local-name()»
   193         value "$default_class";
   198     }
   194     }
   199     
   195   
       
   196     template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_type" {
   200     template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_type" {
   197         > «@name»
   201         > «@name»
   198     }
   202     }
   199     
   203     
   200     template "*[self::ppx:type or self::ppx:baseType]/ppx:array", mode="var_type" {
   204     template "*[self::ppx:type or self::ppx:baseType]/ppx:array", mode="var_type" {
   212   
   216   
   213     template "*[self::ppx:type or self::ppx:baseType]/ppx:wstring", mode="var_type" {
   217     template "*[self::ppx:type or self::ppx:baseType]/ppx:wstring", mode="var_type" {
   214         > WSTRING
   218         > WSTRING
   215     }
   219     }
   216   
   220   
   217     template "*[self::ppx:type or self::ppx:baseType]/*", mode="var_type", priority="-1.0" {
   221     template "*[self::ppx:type or self::ppx:baseType]/*", mode="var_edit" {
   218         > «local-name()»
   222         > false
   219     }
   223     }
   220     
   224     
   221     template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_edit" {
   225     template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_edit" {
   222         variable "type_name", "@name";
   226         variable "type_name", "@name";
   223         variable "pou_infos", "$project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]";
   227         variable "pou_infos", "$project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]";
   229     
   233     
   230     template "*[self::ppx:type or self::ppx:baseType]/ppx:array", mode="var_edit" {
   234     template "*[self::ppx:type or self::ppx:baseType]/ppx:array", mode="var_edit" {
   231         apply "ppx:baseType", mode="var_edit";
   235         apply "ppx:baseType", mode="var_edit";
   232     }
   236     }
   233     
   237     
   234     template "*[self::ppx:type or self::ppx:baseType]/*", mode="var_edit", priority="-1.0" {
   238     template "*[self::ppx:type or self::ppx:baseType]/*", mode="var_debug" {
   235         > false
   239         > true
   236     }
   240     }
   237     
   241     
   238     template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_debug" {
   242     template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_debug" {
   239         variable "type_name", "@name";
   243         variable "type_name", "@name";
   240         variable "datatype_infos", """ \
   244         variable "datatype_infos", """ \
   259     
   263     
   260     template "*[self::ppx:type or self::ppx:baseType]/ppx:struct", mode="var_debug" {
   264     template "*[self::ppx:type or self::ppx:baseType]/ppx:struct", mode="var_debug" {
   261         > false
   265         > false
   262     }
   266     }
   263     
   267     
   264     template "*[self::ppx:type or self::ppx:baseType]/*", mode="var_debug", priority="-1.0" {
       
   265         > true
       
   266     }
       
   267     
       
   268 }
   268 }