go-vise

Constrained Size Output Virtual Machine
Info | Log | Files | Refs | README | LICENSE

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 }