|
||||||||||
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 JLiteral
context
- the analysis context
PositionedError
- the analysis detected an errorpublic boolean isConstant()
JLiteral
isConstant
in class JLiteral
public boolean isDefault()
JLiteral
isDefault
in class JLiteral
public JExpression convertType(CType dest, CExpressionContext context)
JLiteral
convertType
in class JLiteral
dest
- the destination typepublic CType getType()
getType
in class JExpression
public void accept(KjcVisitor p)
accept
in class JExpression
p
- the visitorpublic Object accept(AttributeVisitor p)
accept
in class JExpression
p
- the visitor
public <S,T> S accept(ExpressionVisitor<S,T> p, T o)
accept
in class JExpression
S
- 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 JExpression
code
- 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 |