// Copyright 2021 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

package fuchsia.developer.plugin.fidl;

import com.intellij.psi.codeStyle.CodeStyleSettings;
import com.intellij.psi.codeStyle.CustomCodeStyleSettings;

public class FidlCodeStyleSettings extends CustomCodeStyleSettings {
  public FidlCodeStyleSettings(CodeStyleSettings settings) {
    super("FidlCodeStyleSettings", settings);
  }
}
