public function parse(array $tokenStruct)
    {
        if (! $tokenStruct[0] === Lexer::TOKEN_VARIABLE) {
            return $tokenStruct;
        }

        $data = $tokenStruct[1];
        if (! preg_match('/^(?P<varname>[^|]+)\|(?P<context>html|attr|js|css|url)$/', $data, $matches)) {
            return $tokenStruct;
        }

        return [
            $tokenStruct[0],
            $matches['varname'],
            $matches['context'],
        ];
    }