526 @param isSpecial flag indicating that a special node should be |
526 @param isSpecial flag indicating that a special node should be |
527 generated (boolean) |
527 generated (boolean) |
528 @return The item that was generated (VariableItem). |
528 @return The item that was generated (VariableItem). |
529 """ |
529 """ |
530 if isSpecial and \ |
530 if isSpecial and \ |
531 (self.dvar_rx_class1.exactMatch(dvar) or \ |
531 (self.dvar_rx_class1.exactMatch(dvar) or |
532 self.dvar_rx_class2.exactMatch(dvar)): |
532 self.dvar_rx_class2.exactMatch(dvar)): |
533 isSpecial = False |
533 isSpecial = False |
534 |
534 |
535 if self.rx_class2.exactMatch(dtype): |
535 if self.rx_class2.exactMatch(dtype): |
536 return SpecialVarItem(parent, dvar, dvalue, dtype[7:-1], |
536 return SpecialVarItem(parent, dvar, dvalue, dtype[7:-1], |
537 self.framenr, self.scope) |
537 self.framenr, self.scope) |
538 elif dtype != "void *" and \ |
538 elif dtype != "void *" and \ |
539 (self.rx_class.exactMatch(dvalue) or \ |
539 (self.rx_class.exactMatch(dvalue) or |
540 self.rx_class3.exactMatch(dvalue) or \ |
540 self.rx_class3.exactMatch(dvalue) or |
541 isSpecial): |
541 isSpecial): |
542 if self.dvar_rx_special_array_element.exactMatch(dvar): |
542 if self.dvar_rx_special_array_element.exactMatch(dvar): |
543 return SpecialArrayElementVarItem(parent, dvar, dvalue, dtype, |
543 return SpecialArrayElementVarItem(parent, dvar, dvalue, dtype, |
544 self.framenr, self.scope) |
544 self.framenr, self.scope) |
545 else: |
545 else: |
546 return SpecialVarItem(parent, dvar, dvalue, dtype, |
546 return SpecialVarItem(parent, dvar, dvalue, dtype, |