plcopen/pou_block_instances.ysl2
author Andrey Skvortsov <andrej.skvortzov@gmail.com>
Wed, 13 Mar 2019 11:47:03 +0300
changeset 2537 eb4a4cc41914
parent 1957 2d1cc4f5e4ef
child 3802 8616ffd7c29d
permissions -rw-r--r--
Fix various pylint and pep8 errors

Check basic code-style problems for PEP-8
pep8 version: 2.4.0
./connectors/PYRO/__init__.py:57:43: E261 at least two spaces before inline comment
./connectors/SchemeEditor.py:29:21: E128 continuation line under-indented for visual indent
./controls/IDBrowser.py:101:23: E127 continuation line over-indented for visual indent
./controls/IDBrowser.py:102:23: E127 continuation line over-indented for visual indent

Check for problems using pylint ...
No config file found, using default configuration
pylint 1.9.4,
astroid 1.6.5
Python 2.7.16rc1 (default, Feb 18 2019, 11:05:09)
[GCC 8.2.0]
Use multiple threads for pylint
Using config file /home/developer/WorkData/PLC/beremiz/beremiz/.pylint
************* Module connectors.PYRO_dialog
connectors/PYRO_dialog.py:9: [W0611(unused-import), ] Unused import wx
************* Module connectors
connectors/__init__.py:32: [W1652(deprecated-types-field), ] Accessing a deprecated fields on the types module
connectors/__init__.py:32: [C0411(wrong-import-order), ] standard import "from types import ClassType" should be placed before "from connectors.ConnectorBase import ConnectorBase"
************* Module connectors.PYRO.PSK_Adapter
connectors/PYRO/PSK_Adapter.py:7: [C0411(wrong-import-order), ] standard import "import ssl" should be placed before "import sslpsk"
************* Module connectors.SchemeEditor
connectors/SchemeEditor.py:29: [C0330(bad-continuation), ] Wrong continued indentation (add 1 space).
wx.ALIGN_CENTER_VERTICAL),
^|
connectors/SchemeEditor.py:42: [W0631(undefined-loop-variable), SchemeEditor.__init__] Using possibly undefined loop variable 'tag'
************* Module runtime.WampClient
runtime/WampClient.py:138: [W1612(unicode-builtin), WampSession.onJoin] unicode built-in referenced
runtime/WampClient.py:154: [W1612(unicode-builtin), WampSession.publishWithOwnID] unicode built-in referenced
runtime/WampClient.py:346: [W1612(unicode-builtin), PublishEvent] unicode built-in referenced
runtime/WampClient.py:351: [W1612(unicode-builtin), PublishEventWithOwnID] unicode built-in referenced
runtime/WampClient.py:31: [W0611(unused-import), ] Unused str imported from builtins as text
************* Module runtime.PLCObject
runtime/PLCObject.py:35: [W1648(bad-python3-import), ] Module moved in Python 3
runtime/PLCObject.py:35: [C0411(wrong-import-order), ] standard import "import md5" should be placed before "from six.moves import xrange"
runtime/PLCObject.py:36: [C0411(wrong-import-order), ] standard import "from tempfile import mkstemp" should be placed before "from six.moves import xrange"
runtime/PLCObject.py:37: [C0411(wrong-import-order), ] standard import "import shutil" should be placed before "from six.moves import xrange"
runtime/PLCObject.py:38: [C0411(wrong-import-order), ] standard import "from functools import wraps, partial" should be placed before "from six.moves import xrange"
************* Module runtime.Worker
runtime/Worker.py:12: [W1648(bad-python3-import), ] Module moved in Python 3
************* Module runtime.spawn_subprocess
runtime/spawn_subprocess.py:125: [C0325(superfluous-parens), ] Unnecessary parens after 'print' keyword
runtime/spawn_subprocess.py:130: [C0325(superfluous-parens), ] Unnecessary parens after 'print' keyword
runtime/spawn_subprocess.py:125: [E1601(print-statement), ] print statement used
runtime/spawn_subprocess.py:130: [E1601(print-statement), ] print statement used
************* Module controls.IDBrowser
controls/IDBrowser.py:101: [C0330(bad-continuation), ] Wrong continued indentation (remove 5 spaces).
if self.isManager
| ^
controls/IDBrowser.py:102: [C0330(bad-continuation), ] Wrong continued indentation (remove 5 spaces).
else dv.DATAVIEW_CELL_INERT),
| ^
************* Module Beremiz_service
Beremiz_service.py:34: [W0611(unused-import), ] Unused import __builtin__
include yslt_noindent.yml2
istylesheet xmlns:ppx="http://www.plcopen.org/xml/tc6_0201"
            xmlns:xhtml="http://www.w3.org/1999/xhtml"
            xmlns:ns="beremiz" 
            extension-element-prefixes="ns" 
            exclude-result-prefixes="ns" {
    
    template "text()";
    
    template "ppx:pou[ppx:body]|ppx:transition[ppx:body]|ppx:action[ppx:body]" {
        apply "ppx:body/*[self::ppx:FBD or self::ppx:LD or self::ppx:SFC]/*";
    }
    
    function "add_instance" {
        param "type";
        value "ns:AddBlockInstance($type, @localId, ppx:position/@x, ppx:position/@y, @width, @height)";
    }
    
    function "execution_order" {
        choose {
            when "@executionOrderId" > «@executionOrderId»
            otherwise > 0
        }
    }
    
    function "ConnectionInfos" {
        param "type";
        param "negated";
        param "edge";
        param "formalParameter";
        value "ns:AddInstanceConnection($type, $formalParameter, $negated, $edge, ppx:relPosition/@x, ppx:relPosition/@y)";
    }
    
    template "ppx:position" {
        value "ns:AddLinkPoint(@x, @y)";
    }
    
    template "ppx:connection" {
        value "ns:AddConnectionLink(@refLocalId, @formalParameter)";
        apply "ppx:position";
    }
    
    template "ppx:connectionPointIn" {
        param "negated";
        param "edge";
        param "formalParameter";
        call "ConnectionInfos" {
            with "type" > input
            with "negated" > «$negated»
            with "edge" > «$edge»
            with "formalParameter" > «$formalParameter»
        }
        apply "ppx:connection";
    }
    
    template "ppx:connectionPointOut" {
        param "negated";
        param "edge";
        param "formalParameter";
        call "ConnectionInfos" {
            with "type" > output
            with "negated" > «$negated»
            with "edge" > «$edge»
            with "formalParameter" > «$formalParameter»
        }
    }
    
    template "ppx:connectionPointOutAction" {
        call "ConnectionInfos" {
            with "type" > output
        }
    }
    
    template "ppx:comment" {
        value "ns:SetSpecificValues(ppx:content/xhtml:p/text())";
        call "add_instance" {
            with "type" > «local-name()»
        }
    }
    
    template "ppx:block" {
        variable "execution_order" {
            call "execution_order";
        }
        value "ns:SetSpecificValues(@instanceName, $execution_order)";
        call "add_instance" {
            with "type" > «@typeName»
        }
        foreach "ppx:inputVariables/ppx:variable" {
            apply "ppx:connectionPointIn" {
                with "negated", "@negated";
                with "edge", "@edge";
                with "formalParameter", "@formalParameter";
            }
        }
        foreach "ppx:outputVariables/ppx:variable" {
            apply "ppx:connectionPointOut" {
                with "negated", "@negated";
                with "edge", "@edge";
                with "formalParameter", "@formalParameter";
            }
        }
    }
    
    template "*[self::ppx:type or self::ppx:baseType or self::ppx:returnType]/ppx:derived" {
        > «@name»
    }
  
    template "*[self::ppx:type or self::ppx:baseType or self::ppx:returnType]/ppx:string" {
        > STRING
    }
  
    template "*[self::ppx:type or self::ppx:baseType or self::ppx:returnType]/ppx:wstring" {
        > WSTRING
    }
    
    template "*[self::ppx:type or self::ppx:baseType or self::ppx:returnType]/*" {
        > «local-name()»
    }
    
    function "VariableBlockInfos" {
        param "type";
        variable "expression" > «ppx:expression/text()»
        variable "value_type" {
            choose {
                when "ancestor::ppx:transition[@name=$expression]" > BOOL
                when "ancestor::ppx:pou[@name=$expression]" {
                    apply "ancestor::ppx:pou/child::ppx:interface/ppx:returnType"
                }
                otherwise {
                    apply "ancestor::ppx:pou/child::ppx:interface/*/ppx:variable[@name=$expression]/ppx:type"
                }
            }
        }
        variable "execution_order" {
            call "execution_order";
        }
        value "ns:SetSpecificValues($expression, $value_type, $execution_order)";
        call "add_instance" {
            with "type" > «$type»
        }
        apply "ppx:connectionPointIn" {
            with "negated", "@negatedIn";
            with "edge", "@edgeIn";
        }
        apply "ppx:connectionPointOut" {
            with "negated", "@negatedOut";
            with "edge", "@edgeOut";
        }
    }
    
    template "ppx:inVariable" {
        call "VariableBlockInfos" with "type", "'input'";
    }
    
    template "ppx:outVariable" {
        call "VariableBlockInfos" with "type", "'output'";
    }
    
    template "ppx:inOutVariable" {
        call "VariableBlockInfos" with "type", "'inout'";
    }
    
    template "ppx:connector|ppx:continuation" {
        value "ns:SetSpecificValues(@name)";
        call "add_instance" {
            with "type" > «local-name()»
        }
        apply "ppx:connectionPointIn";
        apply "ppx:connectionPointOut";
    }
    
    template "ppx:leftPowerRail|ppx:rightPowerRail" {
        variable "type", "local-name()";
        variable "connectors" {
            choose {
                when "$type='leftPowerRail'" > «count(ppx:connectionPointOut)»
                otherwise > «count(ppx:connectionPointIn)»
            }
        }
        value "ns:SetSpecificValues($connectors)";
        call "add_instance" {
            with "type" > «$type»
        }
        choose {
            when "$type='leftPowerRail'" {
                apply "ppx:connectionPointOut";
            }
            otherwise {
                apply "ppx:connectionPointIn";
            }
        }
    }
    
    template "ppx:contact|ppx:coil" {
        variable "type", "local-name()";
        variable "storage" {
            choose {
                when "$type='coil'" > «@storage»
            }
        }
        variable "execution_order" {
            call "execution_order";
        }
        value "ns:SetSpecificValues(ppx:variable/text(), @negated, @edge, $storage, $execution_order)";
        call "add_instance" {
            with "type" > «$type»
        }
        apply "ppx:connectionPointIn";
        apply "ppx:connectionPointOut";
    }
    
    template "ppx:step" {
        value "ns:SetSpecificValues(@name, @initialStep)";
        apply "ppx:connectionPointOutAction" {
            with "negated", "@negated";
        }
        call "add_instance" {
            with "type" > «local-name()»
        }
        apply "ppx:connectionPointIn";
        apply "ppx:connectionPointOut";
    }
    
    template "ppx:transition" {
        variable "priority" {
            choose {
                when "@priority" > «@priority»
                otherwise > 0
            }
        }
        variable "condition_type" {
            choose {
                when "ppx:condition/ppx:connectionPointIn" > connection
                when "ppx:condition/ppx:reference" > reference
                when "ppx:condition/ppx:inline" > inline
            }
        }
        variable "condition" {
            choose {
                when "ppx:condition/ppx:reference" > «ppx:condition/ppx:reference/@name»
                when "ppx:condition/ppx:inline" > «ppx:condition/ppx:inline/ppx:ST/xhtml:p/text()»
            }
        }
        value "ns:SetSpecificValues($priority, $condition_type, $condition)";
        apply "ppx:condition/ppx:connectionPointIn" {
            with "negated", "ppx:condition/@negated";
        }
        call "add_instance" {
            with "type" > «local-name()»
        }
        apply "ppx:connectionPointIn";
        apply "ppx:connectionPointOut";
    }
    
    template "ppx:selectionDivergence|ppx:selectionConvergence|ppx:simultaneousDivergence|ppx:simultaneousConvergence" {
        variable "type" > «local-name()»
        variable "connectors" {
            choose {
                when "$type='selectionDivergence' or $type='simultaneousDivergence'" {
                    > «count(ppx:connectionPointOut)»
                }
                otherwise > «count(ppx:connectionPointIn)»
            }
        }
        value "ns:SetSpecificValues($connectors)";
        call "add_instance" {
            with "type" > «$type»
        }
        apply "ppx:connectionPointIn";
        apply "ppx:connectionPointOut";
    }
    
    template "ppx:jumpStep" {
        variable "type" > jump
        value "ns:SetSpecificValues(@targetName)";
        call "add_instance" {
            with "type" > «$type»
        }
        apply "ppx:connectionPointIn";
    }
    
    template "ppx:action" {
        variable "type" {
            choose {
                when "ppx:reference" > reference
                when "ppx:inline" > inline
            }
        }
        variable "value" {
            choose {
                when "ppx:reference" > «ppx:reference/@name»
                when "ppx:inline" > «ppx:inline/ppx:ST/xhtml:p/text()»
            }
        }
        variable "qualifier" {
            choose {
                when "@qualifier" > «@qualifier»
                otherwise > N
            }
        }
        value "ns:AddAction($qualifier, $type, $value, @duration, @indicator)";
    }
    
    template "ppx:actionBlock" {
        value "ns:SetSpecificValues()";
        apply "ppx:action";
        call "add_instance" {
            with "type" > «local-name()»
        }
        apply "ppx:connectionPointIn" {
            with "negated", "@negated";
        }
    }
}