@function _radial-gradient-parser($image) {

$image: unquote($image);
$gradients: ();
$start: str-index($image, "(");
$end: str-index($image, ",");
$first-val: str-slice($image, $start + 1, $end - 1);
$prefix: str-slice($image, 0, $start);
$suffix: str-slice($image, $end, str-length($image));
$is-spec-syntax: str-index($first-val, "at");
@if $is-spec-syntax and $is-spec-syntax > 1 {
  $keyword: str-slice($first-val, 1, $is-spec-syntax - 2);
  $pos: str-slice($first-val, $is-spec-syntax + 3, str-length($first-val));
  $pos: append($pos, $keyword, comma);
  $gradients: (
    webkit-image: -webkit- + $prefix + $pos + $suffix,
    spec-image: $image
  )
}
@else if $is-spec-syntax == 1 {
  $pos: str-slice($first-val, $is-spec-syntax + 3, str-length($first-val));
  $gradients: (
    webkit-image: -webkit- + $prefix + $pos + $suffix,
    spec-image: $image
  )
}
@else if str-index($image, "cover") or str-index($image, "contain") {
  @warn "Radial-gradient needs to be updated to conform to latest spec.";
  $gradients: (
    webkit-image: null,
    spec-image: $image
  )
}
@else {
  $gradients: (
    webkit-image: -webkit- + $image,
    spec-image: $image
  )
}
@return $gradients;

}