|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectat.dms.util.Utils
at.dms.compiler.Phylum
at.dms.kjc.JPhylum
at.dms.kjc.JExpression
at.dms.kjc.JLiteral
at.dms.kjc.sir.SIRPortal
public class SIRPortal
This represents a stream portal used for messaging
| Field Summary | |
|---|---|
protected static LinkedList<SIRPortal> |
portals
|
protected LinkedList<SIRStream> |
receivers
|
protected LinkedList<SIRPortalSender> |
senders
|
protected CType |
type
|
| Fields inherited from class at.dms.kjc.JExpression |
|---|
EMPTY |
| Fields inherited from class at.dms.util.Utils |
|---|
EMPTY_LIST, getForLoopCallers |
| Fields inherited from interface at.dms.kjc.Constants |
|---|
CMP_VERSION, JAV_CLASS, JAV_CLONE, JAV_CLONEABLE, JAV_CONSTRUCTOR, JAV_ERROR, JAV_EXCEPTION, JAV_INIT, JAV_LENGTH, JAV_NAME_SEPARATOR, JAV_OBJECT, JAV_OUTER_THIS, JAV_RUNTIME, JAV_RUNTIME_EXCEPTION, JAV_STATIC_INIT, JAV_STRING, JAV_STRINGBUFFER, JAV_THIS, JAV_THROWABLE, OPE_BAND, OPE_BNOT, OPE_BOR, OPE_BSR, OPE_BXOR, OPE_EQ, OPE_GE, OPE_GT, OPE_LE, OPE_LNOT, OPE_LT, OPE_MINUS, OPE_NE, OPE_PERCENT, OPE_PLUS, OPE_POSTDEC, OPE_POSTINC, OPE_PREDEC, OPE_PREINC, OPE_SIMPLE, OPE_SL, OPE_SLASH, OPE_SR, OPE_STAR, TID_ARRAY, TID_BIT, TID_BOOLEAN, TID_BYTE, TID_CHAR, TID_CLASS, TID_DOUBLE, TID_FLOAT, TID_INT, TID_LONG, TID_SHORT, TID_VECTOR, TID_VOID, VECTOR_EMPTY |
| Constructor Summary | |
|---|---|
SIRPortal(CType type)
|
|
| Method Summary | ||
|---|---|---|
Object |
accept(AttributeVisitor p)
Accepts the specified attribute visitor |
|
|
accept(ExpressionVisitor<S,T> p,
T o)
Accepts the specified visitor |
|
void |
accept(KjcVisitor p)
Accepts the specified visitor |
|
void |
addReceiver(SIRStream stream)
|
|
void |
addSender(SIRPortalSender sender)
|
|
JExpression |
analyse(CExpressionContext context)
Throws an exception (NOT SUPPORTED YET) |
|
String |
convertToString()
For up-casting into a string type. |
|
JExpression |
convertType(CType dest,
CExpressionContext context)
convertType changes the type of this expression to an other |
|
static boolean |
findMessageStatements(SIRStream str)
|
|
void |
genCode(CodeSequence code,
boolean discardValue)
Generates JVM bytecode to evaluate this expression. |
|
static SIRPortal[] |
getPortals()
|
|
static SIRPortal[] |
getPortalsWithReceiver(SIRStream receiver)
|
|
static SIRPortal[] |
getPortalsWithSender(SIRStream sender)
|
|
CType |
getPortalType()
|
|
SIRStream[] |
getReceivers()
|
|
SIRPortalSender[] |
getSenders()
|
|
CType |
getType()
Compute the type of this expression (called after parsing) |
|
boolean |
hasReceiver(SIRStream receiver)
|
|
boolean |
hasSender(SIRStream sender)
|
|
boolean |
isConstant()
Tests whether this expression denotes a compile-time constant (JLS 15.28). |
|
boolean |
isDefault()
Returns true iff the value of this literal is the default value for this type (JLS 4.5.5). |
|
| Methods inherited from class at.dms.kjc.JLiteral |
|---|
deepClone, deepCloneInto, getLiteral, parseInteger, parseReal, setType |
| Methods inherited from class at.dms.kjc.JExpression |
|---|
booleanValue, byteValue, charValue, convertType, deepCloneInto, doubleValue, fail, floatValue, genBranch, genEndStoreCode, genStartStoreCode, getIdent, intValue, isAssignableTo, isDynamic, isFinal, isInitialized, isLValue, isStatementExpression, longValue, setInitialized, shortValue, stringValue |
| Methods inherited from class at.dms.kjc.JPhylum |
|---|
assertMutable, check, check, check, check, deepCloneInto, setLineNumber |
| Methods inherited from class at.dms.compiler.Phylum |
|---|
deepCloneInto, getTokenReference, setTokenReference |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected static LinkedList<SIRPortal> portals
protected LinkedList<SIRStream> receivers
protected LinkedList<SIRPortalSender> senders
protected CType type
| Constructor Detail |
|---|
public SIRPortal(CType type)
| Method Detail |
|---|
public static boolean findMessageStatements(SIRStream str)
public static SIRPortal[] getPortals()
public static SIRPortal[] getPortalsWithSender(SIRStream sender)
public static SIRPortal[] getPortalsWithReceiver(SIRStream receiver)
public CType getPortalType()
public void addReceiver(SIRStream stream)
public void addSender(SIRPortalSender sender)
public boolean hasSender(SIRStream sender)
public boolean hasReceiver(SIRStream receiver)
public SIRStream[] getReceivers()
public SIRPortalSender[] getSenders()
public JExpression analyse(CExpressionContext context)
throws PositionedError
analyse in class JLiteralcontext - the analysis context
PositionedError - the analysis detected an errorpublic boolean isConstant()
JLiteral
isConstant in class JLiteralpublic boolean isDefault()
JLiteral
isDefault in class JLiteral
public JExpression convertType(CType dest,
CExpressionContext context)
JLiteral
convertType in class JLiteraldest - the destination typepublic CType getType()
getType in class JExpressionpublic void accept(KjcVisitor p)
accept in class JExpressionp - the visitorpublic Object accept(AttributeVisitor p)
accept in class JExpressionp - the visitor
public <S,T> S accept(ExpressionVisitor<S,T> p,
T o)
accept in class JExpressionS - output typeT - auxilliary input typep - the visitoro - object containing extra data to be passed to visitor
public void genCode(CodeSequence code,
boolean discardValue)
genCode in class JExpressioncode - the bytecode sequencediscardValue - discard the result of the evaluation ?public String convertToString()
JLiteral
convertToString in class JLiteral
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||