misc/kforth: rst fixups
This commit is contained in:
parent
63e9a0a333
commit
3b284b7c08
|
@ -60,20 +60,24 @@ design an abstract class for a Word and implement the first concrete class,
|
||||||
virtual ~Word() {};
|
virtual ~Word() {};
|
||||||
|
|
||||||
The *eval* method takes a ``System`` structure and executes some function.
|
The *eval* method takes a ``System`` structure and executes some function.
|
||||||
|
::
|
||||||
|
|
||||||
virtual bool eval(System *) = 0;
|
virtual bool eval(System *) = 0;
|
||||||
|
|
||||||
The dictionary is a linked list, so next is used to traverse the list.
|
The dictionary is a linked list, so next is used to traverse the list.
|
||||||
|
::
|
||||||
|
|
||||||
virtual Word *next(void) = 0;
|
virtual Word *next(void) = 0;
|
||||||
|
|
||||||
The ``match`` method is used to determine whether this is the word being
|
The ``match`` method is used to determine whether this is the word being
|
||||||
referred to.
|
referred to.
|
||||||
|
::
|
||||||
|
|
||||||
virtual bool match(struct Token *) = 0;
|
virtual bool match(struct Token *) = 0;
|
||||||
|
|
||||||
Finally, ``getname`` will fill in a ``char[MAX_TOKEN_SIZE]`` buffer with the
|
Finally, ``getname`` will fill in a ``char[MAX_TOKEN_SIZE]`` buffer with the
|
||||||
word's name.
|
word's name.
|
||||||
|
::
|
||||||
|
|
||||||
virtual void getname(char *, size_t *) = 0;
|
virtual void getname(char *, size_t *) = 0;
|
||||||
};
|
};
|
||||||
|
@ -175,6 +179,7 @@ operating on these anyways. I guess it's best to start with the lookup function
|
||||||
first so that when I started adding builtins later it'll be easy to just
|
first so that when I started adding builtins later it'll be easy to just
|
||||||
recompile and use them.
|
recompile and use them.
|
||||||
::
|
::
|
||||||
|
|
||||||
LOOKUP
|
LOOKUP
|
||||||
lookup(struct Token *token, System *sys)
|
lookup(struct Token *token, System *sys)
|
||||||
{
|
{
|
||||||
|
@ -361,6 +366,7 @@ though:
|
||||||
}
|
}
|
||||||
|
|
||||||
The XOR by 0x20 is just a neat trick for inverting the case of a letter.
|
The XOR by 0x20 is just a neat trick for inverting the case of a letter.
|
||||||
|
::
|
||||||
|
|
||||||
if ((a[i] ^ 0x20) == b[i]) {
|
if ((a[i] ^ 0x20) == b[i]) {
|
||||||
continue;
|
continue;
|
||||||
|
|
Loading…
Reference in New Issue