IFPSTools.NET/IFPSLib/Emit/BytecodeOperandType.cs
zc e16c00799d ifpscc: initial commit
libifpscc: initial commit
readme: document ifpscc/libifpscc
license: add credits for ifpscc/libifpscc (derived from code also MIT licensed)
libifps: make additional fields/types public for libifpscc
libifps: fix field documentation for some opcodes
libifps: fix loading functions that are not exported
libifps: allow saving a nonexistant primitive type if the same primitive type was added already
libifps: fix parsing Extended constants
libifps: fix ushort/short being mapped to the wrong types in one table
csproj: set Prefer32Bit=false for release builds
2023-03-28 17:24:19 +01:00

30 lines
920 B
C#

using System;
using System.Collections.Generic;
using System.Text;
namespace IFPSLib.Emit
{
/// <summary>
/// Type of a PascalScript operand at the bytecode level.
/// </summary>
public enum BytecodeOperandType : byte
{
/// <summary>
/// Operand refers to a local or global variable, or an argument.
/// </summary>
Variable,
/// <summary>
/// Operand refers to an immediate typed constant.
/// </summary>
Immediate,
/// <summary>
/// Operand refers to an element of an indexed variable, where the index is specified as an immediate 32-bit constant.
/// </summary>
IndexedImmediate,
/// <summary>
/// Operand refers to an element of an indexed variable, where the index is specified as a local or global variable, or an argument.
/// </summary>
IndexedVariable
}
}