src/pyams_utils/tales.py
changeset 66 1e9c6d17203e
parent 33 e1aca8c25e61
child 72 9049384a2bd4
equal deleted inserted replaced
65:326d216d3fc2 66:1e9c6d17203e
    39                              transform=self.transform)
    39                              transform=self.transform)
    40         return assignment + transform
    40         return assignment + transform
    41 
    41 
    42 
    42 
    43 FUNCTION_EXPRESSION = re.compile('(.+)\((.+)\)')
    43 FUNCTION_EXPRESSION = re.compile('(.+)\((.+)\)')
    44 ARGUMENTS_EXPRESSION = re.compile('[\'\"\w\.\+@]+')
    44 ARGUMENTS_EXPRESSION = re.compile('[^(,)]+')
    45 
    45 
    46 
    46 
    47 def get_value(econtext, arg):
    47 def get_value(econtext, arg):
    48     """Extract argument value from context"""
    48     """Extract argument value from context"""
       
    49     arg = arg.strip()
    49     if arg.startswith('"') or arg.startswith("'"):
    50     if arg.startswith('"') or arg.startswith("'"):
    50         # may be a quoted string...
    51         # may be a quoted string...
    51         return arg[1:-1]
    52         return arg[1:-1]
    52     args = arg.split('.')
    53     args = arg.split('.')
    53     result = econtext.get(args.pop(0))
    54     result = econtext.get(args.pop(0))