Speiger 8257209337 New additions improvements.
-Added: FlagObject which is a locked version of FlagHandler
-Added: UUID support for IListTag
-Added: Quaternion now can be turned into a array.
-Improved: Using Optimized List functions for Pools.
2021-10-23 00:30:59 +02:00

71 lines
922 B
Java

package speiger.src.coreengine.utils.collections;
public class FlagHolder
{
int flags;
public FlagHolder()
{
}
public FlagHolder(int initFlags)
{
flags = initFlags;
}
public void setFlag(int flag)
{
flags |= flag;
}
public boolean setFlag(int flag, boolean value)
{
if(isFlagSet(flag) == value)
{
return false;
}
flags = (value ? flags | flag : flags & ~(flag));
return true;
}
public void setFlags(int flags)
{
this.flags = flags;
}
public int getFlags()
{
return flags;
}
public void flipFlag(int flag)
{
flags ^= flag;
}
public void clearFlag(int flag)
{
flags &= ~flag;
}
public void clearFlags()
{
flags = 0;
}
public boolean isFlagSet(int flag)
{
return (flags & flag) == flag;
}
public boolean isAnyFlagSet(int flag)
{
return (flags & flag) != 0;
}
public boolean isFlagNotSet(int flag)
{
return (flags & flag) == 0;
}
}