gnu.expr

Class Keyword

public class Keyword extends Symbol implements Printable, Externalizable

Field Summary
static NamespacekeywordNamespace
Constructor Summary
Keyword()
Keyword(Namespace namespace, String name)
Used for constructing literals (int gnu.expr.LitTable).
Method Summary
SymbolasSymbol()
Get the corresponding non-keyword symbol.
static booleanisKeyword(Object obj)
static Keywordmake(String name)
Create or find a Keyword with a given name (without final ':').
voidprint(Consumer out)
voidreadExternal(ObjectInput in)
ObjectreadResolve()
static ObjectsearchForKeyword(Object[] vals, int offset, Object keyword)
Search vals[0:offset-1] for a keyword.
static ObjectsearchForKeyword(Object[] vals, int offset, Object keyword, Object dfault)
Search vals[0:offset-1] for a keyword.
StringtoString()
voidwriteExternal(ObjectOutput out)

Field Detail

keywordNamespace

public static final Namespace keywordNamespace

Constructor Detail

Keyword

public Keyword()

Keyword

public Keyword(Namespace namespace, String name)
Used for constructing literals (int gnu.expr.LitTable).

Method Detail

asSymbol

public Symbol asSymbol()
Get the corresponding non-keyword symbol. Informally, the symbol corresponding to dropping the ':'.

isKeyword

public static boolean isKeyword(Object obj)

make

public static Keyword make(String name)
Create or find a Keyword with a given name (without final ':').

Parameters: name the print-name of the desired Keyword

Returns: a Keyword with the given name, newly created iff none such exist

print

public void print(Consumer out)

readExternal

public void readExternal(ObjectInput in)

readResolve

public Object readResolve()

searchForKeyword

public static Object searchForKeyword(Object[] vals, int offset, Object keyword)
Search vals[0:offset-1] for a keyword. Each key at vals[i] is followed by a value at keys[i+1]. (This is used to search for a keyword parameter in an argument list.)

Parameters: vals the list to search in offset the index in vals to start the search at keyword the keyword to search for

Returns: vals[i+1] such that vals[i]==keyword (and (i-offset) is even and non-negative); if there is no such i, return Special.dfault.

searchForKeyword

public static Object searchForKeyword(Object[] vals, int offset, Object keyword, Object dfault)
Search vals[0:offset-1] for a keyword. Each key at vals[i] is followed by a value at keys[i+1]. (This is used to search for a keyword parameter in an argument list.)

Parameters: vals the list to search in offset the index in vals to start the search at keyword the keyword to search for dfault the value to return if there is no match

Returns: vals[i+1] such that vals[i]==keyword (and (i-offset) is even and non-negative); if there is no such i, return dfault.

toString

public final String toString()

writeExternal

public void writeExternal(ObjectOutput out)