Rules
no-opaque-instance-fields
Schema.Opaque クラスにインスタンスメンバーを持たせません。
目的と動作
Schema.Opaque クラスにインスタンスメンバーを持たせません。
公式 Effect ルールです。effect または effect/Schema の Schema/Opaque 名前付き import と、effect/Schema の名前空間 import を、別名も含めて追跡します。2段階呼び出しの Opaque 構築を継承するクラスを検出します。コンストラクターも含む非 static のプロパティ・メソッドを報告し、static と空のクラスを許可します。任意のラッパーや継承された別名は認識しません。
オプション
設定可能なオプションはありません。"rules/no-opaque-instance-fields": "error" で有効化します。
違反例
import * as Schema from 'effect/Schema'
class User extends Schema.Opaque('User')(Schema.String) { value = 1 }許可例
import * as Schema from 'effect/Schema'
class User extends Schema.Opaque('User')(Schema.String) { static label = 'User' }修正と例外
診断のみを提供し、自動修正しません。意図を推測せず明示的に書き換えてください。
必要な境界例外には oxlint-disable-next-line rules/no-opaque-instance-fields -- 理由 を使います。例はこのルール単体の構文を示し、import や宣言を省略する場合があります。
ソースとテスト
Effect プリセットで有効です。