参照元†
- 属性(ATTRibutes)の実装を楽にするためのマクロである。
- 属性の名前、モード、取得用の関数、設定用の関数、を指定する。
典型的な使い方(具体例は linux-2.6.25/include/linux/device.h を見よ)
struct xxx_attribute {
- _name
- 属性の名前を指定する。
マクロ内で文字列リテラルに変換されるため、二重引用符で囲う必要はない。
- _mode
- _show
- _store
返り値†
- attr(attribute 構造体)と、show, store メンバを持つ構造体の値を生成して返す。
#define __ATTR(_name,_mode,_show,_store) { \
.attr = {.name = __stringify(_name), .mode = _mode }, \
.show = _show, \
.store = _store, \
}
- _name を文字列化する以外は渡された値をそのまま使う。
コメント†