SFE.GUI
Class Type

java.lang.Object
  extended by SFE.GUI.Type

public class Type
extends java.lang.Object

Type A Type is a new type definition. It may be a primitive type (Int, Boolean) or a synonym for another type, enum, struct or array. A type marked with 'must=true' cannot be deleted. Initialize with: Type(name) Type(name, type) Type(name, type, int-bits, array-elems) Type(name, enum-elems) Type(name, struct-elems)


Field Summary
 boolean _enum
           
static Type BOOLEAN
           
static int DEFAULT_INT_BITS
           
 java.lang.String enumVals
           
static Type INT
           
 ProgramDocument nameDoc
           
 java.lang.String nArray
           
 int nBits
           
 boolean struct
           
 javax.swing.DefaultListModel structVars
           
 Type type
           
static java.lang.String TYPE_BOOLEAN
           
static java.lang.String TYPE_INT
           
 
Constructor Summary
Type(java.lang.String name)
          Build a primitive type.
Type(java.lang.String name, javax.swing.DefaultListModel vars)
          Buile a struct type
Type(java.lang.String name, java.lang.String vals)
          Build an Enumerated type
Type(java.lang.String name, Type type)
          Build a simple type (bool, int)
Type(java.lang.String name, Type type, int bits, java.lang.String array)
          Build an array or an Int<>
 
Method Summary
 boolean equals(java.lang.Object other)
          Compare types by name
 java.lang.String getName()
          Get Type name
 boolean isArray()
          Is type an array
 boolean isEnum()
          Is type an enumerated type
 boolean isImmutable()
          Is type immutable (read only)
 boolean isMust()
          Is type a must type (undeletable)
 boolean isPrimitive()
          Is type a primitive type
 boolean isStruct()
          Is type a structure
 void setArray(Type type, int bits, java.lang.String array)
          Set type as array
 void setBits(int bits)
          Set type as Int<>, and set number of bits
 void setEnum(java.lang.String enumData)
          Set type as Enumerated type
 void setImmutable(boolean im)
          Mark type as immutable (read only)
 void setMust(boolean must)
          Mark type as must (undeletable)
 void setStruct(javax.swing.DefaultListModel vars)
          Set type as a structure
 void setType(Type type)
          Reset type, and set original type
 java.lang.String toString()
          Get string representation of type
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

nameDoc

public ProgramDocument nameDoc

type

public Type type

nBits

public int nBits

nArray

public java.lang.String nArray

enumVals

public java.lang.String enumVals

structVars

public javax.swing.DefaultListModel structVars

_enum

public boolean _enum

struct

public boolean struct

DEFAULT_INT_BITS

public static final int DEFAULT_INT_BITS
See Also:
Constant Field Values

TYPE_INT

public static final java.lang.String TYPE_INT
See Also:
Constant Field Values

TYPE_BOOLEAN

public static final java.lang.String TYPE_BOOLEAN
See Also:
Constant Field Values

INT

public static final Type INT

BOOLEAN

public static final Type BOOLEAN
Constructor Detail

Type

public Type(java.lang.String name)
Build a primitive type. Type will be immutable and undeletable.

Parameters:
name - Type name

Type

public Type(java.lang.String name,
            Type type)
Build a simple type (bool, int)

Parameters:
name - Type name
type - Type original type

Type

public Type(java.lang.String name,
            Type type,
            int bits,
            java.lang.String array)
Build an array or an Int<>

Parameters:
name - Type name
type - original type
bits - number of bits for Int<>
array - Elements for array

Type

public Type(java.lang.String name,
            java.lang.String vals)
Build an Enumerated type

Parameters:
name - Type name
vals - Enum elements (as long string)

Type

public Type(java.lang.String name,
            javax.swing.DefaultListModel vars)
Buile a struct type

Parameters:
name - Type name
vars - List of struct members
Method Detail

setType

public void setType(Type type)
Reset type, and set original type

Parameters:
type - Original type

setBits

public void setBits(int bits)
Set type as Int<>, and set number of bits

Parameters:
bits - number of bits

setArray

public void setArray(Type type,
                     int bits,
                     java.lang.String array)
Set type as array

Parameters:
type - Original type
bits - Number of bits if Int<> used
array - Number of elements for array

setEnum

public void setEnum(java.lang.String enumData)
Set type as Enumerated type

Parameters:
enumData - Enum elements

setStruct

public void setStruct(javax.swing.DefaultListModel vars)
Set type as a structure

Parameters:
vars - Structure members

setMust

public void setMust(boolean must)
Mark type as must (undeletable)

Parameters:
must - true or false

setImmutable

public void setImmutable(boolean im)
Mark type as immutable (read only)

Parameters:
im - true or false

isPrimitive

public boolean isPrimitive()
Is type a primitive type


isMust

public boolean isMust()
Is type a must type (undeletable)


isImmutable

public boolean isImmutable()
Is type immutable (read only)


isArray

public boolean isArray()
Is type an array


isEnum

public boolean isEnum()
Is type an enumerated type


isStruct

public boolean isStruct()
Is type a structure


getName

public java.lang.String getName()
Get Type name


equals

public boolean equals(java.lang.Object other)
Compare types by name

Overrides:
equals in class java.lang.Object

toString

public java.lang.String toString()
Get string representation of type

Overrides:
toString in class java.lang.Object