# `GSLayer reconfigureShapeGroupsSkippingPreconditionCheck:`

*Instance Method*

Reconfigures the shape groups (setting their member ranges) and reorders `shapes` to match.

## Declaration

```swift
func reconfigureShapeGroupsSkippingPreconditionCheck(_ skipPreconditionCheck: Bool)
```

```objc
- (void) reconfigureShapeGroupsSkippingPreconditionCheck:(BOOL) skipPreconditionCheck;
```

```python
reconfigureShapeGroupsSkippingPreconditionCheck_(skipPreconditionCheck: bool)
```

## Parameters

- `skipPreconditionCheck` — If the caller knows that the layer makes use of shape groups, performance may be improved by skipping an internal precondition check. The function produces the same result in either case; only the performance is impacted.

## Discussion

> **Complexity**
> O(*n*) where *n* is the length of `_shapes`.

## See Also

### Shape Groups

- [`GSLayer.rootGroup`](/Core/GlyphsCore/GSLayer/rootGroup) — A shape group containing all shapes of the layer.
- [`GSLayer.shapeGroups`](/Core/GlyphsCore/GSLayer/shapeGroups) — The shape groups keyed by group identifier.

