38 const PhsString &fmt = args[0].asString();
41 std::vector<Value> formatArgs(args.begin() + 1, args.end());
57 std::vector<Value> formatArgs(args.begin(), args.end());
73 std::vector<Value> formatArgs(args.begin(), args.end());
98 std::vector<Value> formatArgs(args.begin(), args.end());
const char * c_str() const noexcept
static Value io_clear(const std::vector< Value > &args, VM *vm)
Clear the console.
static PhsString io_prints(const std::vector< Value > &args, VM *vm)
Print string without newline.
static void registerIOFunctions(VM *vm)
static void checkArgCount(const std::vector< Value > &args, size_t minimumArguments, const std::string &name, bool allowMoreArguments=false)
static PhsString io_printf(const std::vector< Value > &args, VM *vm)
Print formatted string.
static PhsString io_putf_error(const std::vector< Value > &args, VM *vm)
Print formatted string with newline to error output.
static PhsString io_puts(const std::vector< Value > &args, VM *vm)
Print string with newline.
static PhsString io_putf(const std::vector< Value > &args, VM *vm)
Print formatted string with newline.
static PhsString io_c_format(const std::vector< Value > &args, VM *vm)
Format string.
static Value io_gets(const std::vector< Value > &args, VM *vm)
Get string.
static PhsString io_puts_error(const std::vector< Value > &args, VM *vm)
Print string with newline to error output.
void registerNativeFunction(const std::string &name, NativeFunction fn)
Register a native function.
Value regRun(OpCode opcode, Args &&...args)
Run an opcode with arguments pre-loaded into registers.
A value in the Phasor VM.
The Phasor Programming Language and Runtime.
@ PRINTERROR_R
Print register to stderr: printerror(R[rA]).
@ READLINE_R
Read line into register: readline(R[rA]).
@ PRINT_R
Print register: print(R[rA]).