Esp8266 pins mapping D2, D3, D4 and so on

When I declare an array containing esp8266 digital pin addresses, and later try to retrieve them, I am getting a decimal value. D3 may be returned as 11, and D4 as 12 (numbers are not exact). I am using this to programmatically turn pins HIGH / LOW from code. Any input appreciated.

uint8_t myArray[2] = {D2, D3};

...

for....
digitalWrite(myArray*, HIGH);*
Nevermind. I figured out there was a const mapping betting D1, D2 and so on into the actual pins and it works regardless. The automatic translation actually helped.

Yep - it's defined here

#define PIN_WIRE_SDA (4)
#define PIN_WIRE_SCL (5)

static const uint8_t SDA = PIN_WIRE_SDA;
static const uint8_t SCL = PIN_WIRE_SCL;

static const uint8_t LED_BUILTIN = 16;
static const uint8_t BUILTIN_LED = 16;

static const uint8_t D0   = 16;
static const uint8_t D1   = 5;
static const uint8_t D2   = 4;
static const uint8_t D3   = 0;
static const uint8_t D4   = 2;
static const uint8_t D5   = 14;
static const uint8_t D6   = 12;
static const uint8_t D7   = 13;
static const uint8_t D8   = 15;
static const uint8_t D9   = 3;
static const uint8_t D10  = 1;