<commit_before>@mixin spacing($sides: all minus none, $type: padding, $amount: 1, $fromto: false to false) {

  @if ($amount != -0.5 and $amount != 0.5 and $amount != -1 and $amount != 1 and $amount != -2 and $amount != 2) {
    @warn 'The `spacing` mixin is designed to work best with the following values: -0.5 | 0.5 | -1 | 1 | -2 | 2';
  }

  @if ($type != padding and $type != margin) {
    @warn 'It might be best to use the spacing function instead of the mixin for what you are trying to do.';
  }

  // Get new SCSS map
  $grid-breakpoints: grid-breakpoints($fromto);

  // Loop
  @each $breakpoint, $values in $grid-breakpoints {

    //Get values
    $spacing: map-get($values, gutter);
    $width: map-get($values, width);
    $side: nth($sides, 1);
    $skip: getsides($sides);
    $spacing: map-get($values, gutter) * $amount;
    $width: map-get($values, width);

    // Only run between starting and stopping breakpoints
    @include ifBreakpoint($width) {
      @if ($side == all or $side == vertical or $side == top) and $skip != top {
        #{$type}-top: $spacing;
      }

      // Right
      @if ($side == all or $side == horizontal or $side == right) and $skip != right {
        #{$type}-right: $spacing;
      }

      // Bottom
      @if ($side == all or $side == vertical or $side == bottom) and $skip != bottom {
        #{$type}-bottom: $spacing;
      }

      // Left
      @if ($side == all or $side == horizontal or $side == left) and $skip != left {
        #{$type}-left: $spacing;
      }
    }
  }
}<commit_msg>Add option to spacing mixin for lastchild<commit_after>@mixin spacing($sides: all minus none, $type: padding, $amount: 1, $fromto: false to false, $lastchildnone: false) {

  @if ($amount != -0.5 and $amount != 0.5 and $amount != -1 and $amount != 1 and $amount != -2 and $amount != 2) {
    @warn 'The `spacing` mixin is designed to work best with the following values: -0.5 | 0.5 | -1 | 1 | -2 | 2';
  }

  @if ($type != padding and $type != margin) {
    @warn 'It might be best to use the spacing function instead of the mixin for what you are trying to do.';
  }

  // Get new SCSS map
  $grid-breakpoints: grid-breakpoints($fromto);

  // Loop
  @each $breakpoint, $values in $grid-breakpoints {

    //Get values
    $spacing: map-get($values, gutter);
    $width: map-get($values, width);
    $side: nth($sides, 1);
    $skip: getsides($sides);
    $spacing: map-get($values, gutter) * $amount;
    $width: map-get($values, width);

    // Only run between starting and stopping breakpoints
    @include ifBreakpoint($width) {
      @if ($side == all or $side == vertical or $side == top) and $skip != top {
        #{$type}-top: $spacing;

        @if $lastchildnone != false {
          &:last-child {
            #{$type}-top: 0;
          }
        }
      }

      // Right
      @if ($side == all or $side == horizontal or $side == right) and $skip != right {
        #{$type}-right: $spacing;

        @if $lastchildnone != false {
          &:last-child {
            #{$type}-right: 0;
          }
        }
      }

      // Bottom
      @if ($side == all or $side == vertical or $side == bottom) and $skip != bottom {
        #{$type}-bottom: $spacing;

        @if $lastchildnone != false {
          &:last-child {
            #{$type}-bottom: 0;
          }
        }
      }

      // Left
      @if ($side == all or $side == horizontal or $side == left) and $skip != left {
        #{$type}-left: $spacing;

        @if $lastchildnone != false {
          &:last-child {
            #{$type}-left: 0;
          }
        }
      }
    }
  }
}
{'fraction_non_alphanumeric': 0.16625172890733056, 'fraction_numerical': 0.011065006915629323, 'mean_word_length': 2.1859030837004405, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6523209', 'n_tokens_mistral': 1221, 'n_tokens_neox': 1142, 'n_words': 386}