Beispiel #1
0
 def resolve(self, s):
     if len(self.elts) == 0:
         return ListType()
     listType = None
     for elt in self.elts:
         if listType is None:
             listType = ListType(self.resolveExpr(elt, s))
         else:
             listType.add(self.resolveExpr(elt, s))
     return listType
Beispiel #2
0
 def resolve(self, s):
     if len(self.elts) == 0:
         return ListType()
         #  list<unknown>
     listType = ListType()
     for elt in self.elts:
         listType.add(self.resolveExpr(elt, s))
         if isinstance(elt, (Str, )):
             listType.addValue((elt).getStr())
     return listType
Beispiel #3
0
    def resolve(self, s):
        from pysonarsq.java.Analyzer import Analyzer

        if self.value is not None:
            return ListType(self.resolveExpr(self.value, s))
        else:
            return Analyzer.self.builtins.None_
Beispiel #4
0
 def resolve(self, s):
     from pysonarsq.java.Analyzer import Analyzer
     """ generated source for method resolve """
     if self.value is not None:
         return ListType(resolveExpr(self.value, s))
     else:
         return Analyzer.self.builtins.None_
Beispiel #5
0
 def resolve(self, s):
     if self.lower is not None:
         self.resolveExpr(self.lower, s)
     if self.step is not None:
         self.resolveExpr(self.step, s)
     if self.upper is not None:
         self.resolveExpr(self.upper, s)
     return ListType()
Beispiel #6
0
 def resolve(self, s):
     if len(self.elts) == 0:
         return ListType()
         #  list<unknown>
     listType = ListType()
     for elt in self.elts:
         listType.add(self.resolveExpr(elt, s))
         if isinstance(elt, (Str, )):
             listType.addValue((elt).getStr())
     return listType
Beispiel #7
0
    def getSubscript(self, vt, st, s):
        from pysonarsq.java.Analyzer import Analyzer

        if vt.isUnknownType():
            return Analyzer.self.builtins.unknown
        elif vt.isListType():
            return self.getListSubscript(vt, st, s)
        elif vt.isTupleType():
            return self.getListSubscript(vt.asTupleType().toListType(), st, s)
        elif vt.isDictType():
            nl = ListType(vt.asDictType().valueType)
            return self.getListSubscript(nl, st, s)
        elif vt.isStrType():
            if st.isListType() or st.isNumType():
                return vt
            else:
                self.addWarning("Possible KeyError (wrong type for subscript)")
                return Analyzer.self.builtins.unknown
        else:
            return Analyzer.self.builtins.unknown
Beispiel #8
0
 def resolve(self, s):
     self.resolveList(self.generators, s)
     return ListType(self.resolveExpr(self.elt, s))
Beispiel #9
0
 def resolve(self, s):
     for d in self.dims:
         d.resolve(s)
     return ListType()