# FarMacroValue

Структура `FarMacroValue` описывает макропеременную.

    struct FarMacroValue
    {
      enum FARMACROVARTYPE Type;
      union
      {
        __int64        Integer;
        __int64        Boolean;
        double         Double;
        const wchar_t *String;
        void          *Pointer;
        struct
        {
          void *Data;
          size_t Size;
        } Binary;
        struct
        {
          struct FarMacroValue *Values;
          size_t Count;
        } Array;
      }
    #ifndef __cplusplus
      Value
    #endif
      ;
    };

### Элементы

Type
Тип переменной, одно из следующих значений (перечисление `FARMACROVARTYPE`):

Тип | Описание
--- | ---
FMVT_UNKNOWN | Неопределенный тип. `Value.Integer = 0`.
FMVT_INTEGER | Число. Компонента `Value.Integer`.
FMVT_STRING | Строка. Компонента `Value.String`.
FMVT_DOUBLE | Вещественное значение. Компонента `Value.Double`.
FMVT_BOOLEAN | Логическое значение. Компонента `Value.Boolean`.
FMVT_BINARY | Структура `Value.Binary`, где поле `Size` определяет размер `Data`.
FMVT_POINTER | Указатель. Компонента `Value.Pointer`.
FMVT_NIL | Специальное значение `nil`. Все компоненты `Value` должны игнорироваться.
FMVT_ARRAY | Структура `Value.Array`, где поле `Count` определяет количество величин в массиве `Values`.
FMVT_PANEL | Описатель панели плагина. Компонента `Value.Pointer`.

Value
Значение.

### Замечания

Смотрите также:
структуры