示例#1
0
        public bool Evaluate(IReadOnlyMemory memory)
        {
            var leftValue  = LeftOperand.Evaluate(memory).ToInt();
            var rightValue = RightOperand.Evaluate(memory).ToInt();
            var result     = EvaluateExpression(leftValue, rightValue, Operation);

            return(result);
        }
 public static int ByteLength(this IReadOnlyMemory memory)
 {
     if (memory == null)
     {
         throw new ArgumentNullException(nameof(memory));
     }
     return(memory.Length * memory.ElementSize);
 }
示例#3
0
        public static bool IsEmpty(this IReadOnlyMemory memory)
        {
            if (memory == null)
            {
                return(true);
            }

            return(memory.ByteLength() == 0);
        }
示例#4
0
        private static void PrintMemory(IReadOnlyMemory memory)
        {
            var sb = new StringBuilder();

            for (uint i = 0; i < 16; i++)
            {
                sb.AppendFormat("{0:x2}", memory.GetByte(i));
                sb.Append(" ");
            }
            Console.WriteLine(sb.ToString());
        }
示例#5
0
 public Cartridge(IReadOnlyMemory rom)
 {
     _rom = rom;
 }
示例#6
0
 public LuaTString(IReadOnlyMemory memory, IAbsoluteAddress address)
 {
     Address = address;
     _memory = memory;
     _luaTString = memory.Read<LuaTStringHeader>(address);
 }
示例#7
0
 public LuaTKey(IReadOnlyMemory memory, LuaTKeyStruct luaTKeyStruct)
 {
     _luaTKeyStruct = luaTKeyStruct;
     _memory = memory;
 }
示例#8
0
 internal LuaValue(IReadOnlyMemory memory, LuaValueStruct luaValue)
 {
     _luaValue = luaValue;
     _memory = memory;
 }
示例#9
0
 public LuaTValue(IReadOnlyMemory memory, LuaTValueStruct luaTValue)
 {
     _luaTValue = luaTValue;
     _memory = memory;
 }
示例#10
0
 public LuaNode(IReadOnlyMemory memory, IAbsoluteAddress address)
 {
     Address = address;
     _memory = memory;
     _luaNode = address.Deref<LuaNodeStruct>();
 }
示例#11
0
 public LuaTable(IReadOnlyMemory memory, IAbsoluteAddress address)
 {
     Address = address;
     _memory = memory;
     _luaTable = _memory.Read<LuaTableStuct>(address);
 }
示例#12
0
 public Word Evaluate(IReadOnlyMemory _) => Value;
示例#13
0
 public Computer(IReadOnlyMemory rom)
 {
     _programEngine = new ProgramEngine(rom);
 }
示例#14
0
 public Word Evaluate(IReadOnlyMemory memory) => memory.ReadWord(Value);
 public ProgramEngine(IReadOnlyMemory rom)
 {
     _rom = rom;
 }
示例#16
0
 public bool ShouldStop(IReadOnlyMemory memory) => true;
示例#17
0
 public new bool ShouldStop(IReadOnlyMemory memory) => Condition.Evaluate(memory);
 public static bool IsEmpty(this IReadOnlyMemory memory)
 {
     return(memory.ByteLength() == 0);
 }