flag.go (525B)
1 package state 2 3 const ( 4 FLAG_READIN = iota 5 FLAG_INMATCH 6 FLAG_TERMINATE 7 FLAG_DIRTY 8 FLAG_WAIT 9 FLAG_LOADFAIL 10 FLAG_RESERVED 11 FLAG_LANG 12 FLAG_USERSTART = 8 13 ) 14 15 func IsWriteableFlag(flag uint32) bool { 16 if flag > 6 { 17 return true 18 } 19 //if flag & FLAG_WRITEABLE > 0 { 20 // return true 21 //} 22 return false 23 } 24 25 // Retrieve the state of a state flag 26 func getFlag(bitIndex uint32, bitField []byte) bool { 27 byteIndex := bitIndex / 8 28 localBitIndex := bitIndex % 8 29 b := bitField[byteIndex] 30 return (b & (1 << localBitIndex)) > 0 31 }