def pipe_list_synonym(name):
 def getter(self):
  attr = getattr(self, name)
  if attr:
   return attr.strip(u'|').split(u'|')
 def setter(self, value):
  if isinstance(value, str):
   setattr(self, name, value)
  else:
   setattr(self, name, u'|'.join(value))
 return synonym(name, descriptor=property(getter, setter))

def pipe_list_synonym ( name ) : def getter ( self ) : attr = getattr ( self , name ) if attr : return attr . strip ( u'|' ) . split ( u'|' ) def setter ( self , value ) : if isinstance ( value , str ) : setattr ( self , name , value ) else : setattr ( self , name , u'|' . join ( value ) ) return synonym ( name , descriptor = property ( getter , setter ) )
converts pipe separated text into a list .