Header menu logo F# Header menu logo Averest

CmdType Type

The following are instructions of the virtual intermediate machine (cmd language) with variables y,x1,x2,y1,y2:

  • CmdAssert(x) asserts that x!=0 should hold at this place.
  • CmdCopy(y,x) denotes the assignment y := x.
  • CmdSglAssign(y,x1,op2,x2) denotes the assignment y := x1 op2 x2 with a binary operator op2.
  • CmdDblAssign(y1,y2,x1,op2,x2) denotes the assignment y1,y2 := x1 op2 x2 with a binary operator op2. The rhs is evaluated in full precision and y1@y2 is seen as a double machine word.
  • CmdAccessArr(y,x1,x2) denotes y = x1[x2].
  • CmdAssignArr(y,x1,x2) denotes y[x1] = x2.
  • CmdAssignCnd(y,c,x1,x0) is a conditional assignment y = (c?x1:x0).
  • CmdGoto(i) denotes goto(i).
  • CmdIfGoto(x,i) denotes if(x) goto(i).
  • CmdReturn(x) denotes return(x).
  • CmdSync instructs the tread to wait until its writes to the shared variables have been made visible to the other threads.
Hence, all expressions make use of at most one operator, and therefore, we have to abbreviate intermediate expressions by temporary variables. Moreover, function calls have to be inlined since there is no means for the latter. Still, there can be threads of cmd language instructions, with the same shared variables.

Union cases

Union case Description

CmdAccessArr(string, string, string)

Full Usage: CmdAccessArr(string, string, string)

Parameters:
    Item1 : string
    Item2 : string
    Item3 : string

Item1 : string
Item2 : string
Item3 : string

CmdAssert string

Full Usage: CmdAssert string

Parameters:
    Item : string

Item : string

CmdAssignArr(string, string, string)

Full Usage: CmdAssignArr(string, string, string)

Parameters:
    Item1 : string
    Item2 : string
    Item3 : string

Item1 : string
Item2 : string
Item3 : string

CmdAssignCnd(string, string, string, string)

Full Usage: CmdAssignCnd(string, string, string, string)

Parameters:
    Item1 : string
    Item2 : string
    Item3 : string
    Item4 : string

Item1 : string
Item2 : string
Item3 : string
Item4 : string

CmdCopy(string, string)

Full Usage: CmdCopy(string, string)

Parameters:
    Item1 : string
    Item2 : string

Item1 : string
Item2 : string

CmdDblAssign(string, string, string, Ops2, string)

Full Usage: CmdDblAssign(string, string, string, Ops2, string)

Parameters:
    Item1 : string
    Item2 : string
    Item3 : string
    Item4 : Ops2
    Item5 : string

Item1 : string
Item2 : string
Item3 : string
Item4 : Ops2
Item5 : string

CmdGoto int

Full Usage: CmdGoto int

Parameters:
    Item : int

Item : int

CmdIfGoto(string, int)

Full Usage: CmdIfGoto(string, int)

Parameters:
    Item1 : string
    Item2 : int

Item1 : string
Item2 : int

CmdReturn string

Full Usage: CmdReturn string

Parameters:
    Item : string

Item : string

CmdSglAssign(string, string, Ops2, string)

Full Usage: CmdSglAssign(string, string, Ops2, string)

Parameters:
    Item1 : string
    Item2 : string
    Item3 : Ops2
    Item4 : string

Item1 : string
Item2 : string
Item3 : Ops2
Item4 : string

CmdSync

Full Usage: CmdSync

Instance members

Instance member Description

this.IsCmdAccessArr

Full Usage: this.IsCmdAccessArr

Returns: bool
Returns: bool

this.IsCmdAssert

Full Usage: this.IsCmdAssert

Returns: bool
Returns: bool

this.IsCmdAssignArr

Full Usage: this.IsCmdAssignArr

Returns: bool
Returns: bool

this.IsCmdAssignCnd

Full Usage: this.IsCmdAssignCnd

Returns: bool
Returns: bool

this.IsCmdCopy

Full Usage: this.IsCmdCopy

Returns: bool
Returns: bool

this.IsCmdDblAssign

Full Usage: this.IsCmdDblAssign

Returns: bool
Returns: bool

this.IsCmdGoto

Full Usage: this.IsCmdGoto

Returns: bool
Returns: bool

this.IsCmdIfGoto

Full Usage: this.IsCmdIfGoto

Returns: bool
Returns: bool

this.IsCmdReturn

Full Usage: this.IsCmdReturn

Returns: bool
Returns: bool

this.IsCmdSglAssign

Full Usage: this.IsCmdSglAssign

Returns: bool
Returns: bool

this.IsCmdSync

Full Usage: this.IsCmdSync

Returns: bool
Returns: bool

Type something to start searching.