src/eric7/DataViews/CodeMetrics.py

branch
server
changeset 10576
0cf5ebf17411
parent 10458
2074b8393649
child 10589
75b656c80a40
equal deleted inserted replaced
10575:abde60847db6 10576:0cf5ebf17411
22 import tokenize 22 import tokenize
23 23
24 from dataclasses import dataclass 24 from dataclasses import dataclass
25 25
26 from eric7 import Utilities 26 from eric7 import Utilities
27 from eric7.EricWidgets.EricApplication import ericApp
28 from eric7.SystemUtilities import FileSystemUtilities
27 29
28 KEYWORD = token.NT_OFFSET + 1 30 KEYWORD = token.NT_OFFSET + 1
29 COMMENT = tokenize.COMMENT 31 COMMENT = tokenize.COMMENT
30 INDENT = token.INDENT 32 INDENT = token.INDENT
31 DEDENT = token.DEDENT 33 DEDENT = token.DEDENT
224 @type dict 226 @type dict
225 @return a statistics object with the collected code statistics 227 @return a statistics object with the collected code statistics
226 @rtype SourceStat 228 @rtype SourceStat
227 """ 229 """
228 try: 230 try:
229 text = Utilities.readEncodedFile(filename)[0] 231 if FileSystemUtilities.isRemoteFileName(filename):
232 remotefsInterface = (
233 ericApp().getObject("EricServer").getServiceInterface("FileSystem")
234 )
235 bText = remotefsInterface.readFile(
236 FileSystemUtilities.plainFileName(filename)
237 )
238 text = Utilities.decode(bText)[0]
239 else:
240 text = Utilities.readEncodedFile(filename)[0]
230 except (OSError, UnicodeError): 241 except (OSError, UnicodeError):
231 return SourceStat() 242 return SourceStat()
232 243
233 parser = Parser() 244 parser = Parser()
234 parser.parse(text) 245 parser.parse(text)

eric ide

mercurial