diff options
Diffstat (limited to 'sources/scalac/atree/AMember.java')
-rw-r--r-- | sources/scalac/atree/AMember.java | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/sources/scalac/atree/AMember.java b/sources/scalac/atree/AMember.java new file mode 100644 index 0000000000..4275180a4d --- /dev/null +++ b/sources/scalac/atree/AMember.java @@ -0,0 +1,87 @@ +/* ____ ____ ____ ____ ______ *\ +** / __// __ \/ __// __ \/ ____/ SOcos COmpiles Scala ** +** __\_ \/ /_/ / /__/ /_/ /\_ \ (c) 2002, LAMP/EPFL ** +** /_____/\____/\___/\____/____/ ** +\* */ + +// $Id$ + +package scalac.atree; + +import scalac.symtab.Symbol; + +/** This class represents an attributed class member. */ +public abstract class AMember { + + //######################################################################## + // Private Fields + + /** The member symbol */ + private final Symbol symbol; + + /** The static flag */ + private final boolean isStatic; + + /** The member code */ + private ACode code; + + //######################################################################## + // Public Constructors + + /** Initializes this instance. */ + public AMember(Symbol symbol, boolean isStatic) { + this.symbol = symbol; + this.isStatic = isStatic; + this.code = ACode.Void; + } + + //######################################################################## + // Public Methods + + /** Returns the symbol of this member. */ + public Symbol symbol() { + return symbol; + } + + /** Is this member public? */ + public boolean isPublic() { + return symbol().isPublic(); + } + + /** Is this member private? */ + public boolean isPrivate() { + return symbol().isPrivate(); + } + + /** Is this member protected? */ + public boolean isProtected() { + return symbol().isProtected(); + } + + /** Is this member static? */ + public boolean isStatic() { + return isStatic; + } + + /** Is this member deprecated? */ + public boolean isDeprecated() { + return false; // !!! + } + + /** Is this member synthetic? */ + public boolean isSynthetic() { + return symbol().isSynthetic(); + } + + /** Returns the member code. */ + public ACode code() { + return code; + } + + /** Sets the member code. */ + public void setCode(ACode code) { + this.code = code; + } + + //######################################################################## +} |