net.jangaroo.jooc.ast
Class TypedIdeDeclaration

java.lang.Object
  extended by net.jangaroo.jooc.ast.NodeImplBase
      extended by net.jangaroo.jooc.ast.Directive
          extended by net.jangaroo.jooc.ast.Statement
              extended by net.jangaroo.jooc.ast.Declaration
                  extended by net.jangaroo.jooc.ast.IdeDeclaration
                      extended by net.jangaroo.jooc.ast.TypedIdeDeclaration
All Implemented Interfaces:
AstNode
Direct Known Subclasses:
FunctionDeclaration, VariableDeclaration

public abstract class TypedIdeDeclaration
extends IdeDeclaration

Author:
Andreas Gawecki

Nested Class Summary
 
Nested classes/interfaces inherited from class net.jangaroo.jooc.ast.NodeImplBase
NodeImplBase.Scoped
 
Field Summary
 
Fields inherited from class net.jangaroo.jooc.ast.Declaration
MODIFIER_ABSTRACT, MODIFIER_DYNAMIC, MODIFIER_FINAL, MODIFIER_INTERNAL, MODIFIER_NAMESPACE, MODIFIER_NATIVE, MODIFIER_OVERRIDE, MODIFIER_PRIVATE, MODIFIER_PROTECTED, MODIFIER_PUBLIC, MODIFIER_STATIC, MODIFIER_VIRTUAL, MODIFIERS_SCOPE
 
Constructor Summary
TypedIdeDeclaration(JooSymbol[] modifiers, Ide ide, TypeRelation optTypeRelation)
           
 
Method Summary
protected  void addPublicApiDependencyOn(TypeRelation optTypeRelation)
           
 void analyze(AstNode parentNode)
           
 List<? extends AstNode> getChildren()
           
 String getName()
           
 Ide getNamespace()
           
 TypeRelation getOptTypeRelation()
           
 boolean isPublicApi()
           
 IdeDeclaration resolveDeclaration()
          Resolve this declaration to the underlying Class or PredefinedType declaration
 void scope(Scope scope)
           
 
Methods inherited from class net.jangaroo.jooc.ast.IdeDeclaration
getIde, getPackageDeclaration, getQualifiedName, getQualifiedNameStr, getSymbol, handleDuplicateDeclaration, isConstructor, isDeclaringCompileTimeConstant, isMethod, isPrimaryDeclaration, resolvePropertyDeclaration, setIde, toString
 
Methods inherited from class net.jangaroo.jooc.ast.Declaration
computeModifiers, getAllowedModifiers, getClassDeclaration, getModifierFlag, getModifiers, getParentDeclaration, getSymInheritedModifiers, getSymModifiers, isAbstract, isDynamic, isFinal, isNative, isOverride, isPrivate, isPrivateStatic, isProtected, isPublic, isStatic, setClassDeclaration, setInheritedModifiers, setParentDeclaration, setSymInheritedModifiers
 
Methods inherited from class net.jangaroo.jooc.ast.Directive
isClassMember, setClassMember
 
Methods inherited from class net.jangaroo.jooc.ast.NodeImplBase
analyze, getParentNode, makeChildren, scope, withNewDeclarationScope, withNewLabelScope
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface net.jangaroo.jooc.ast.AstNode
visit
 

Constructor Detail

TypedIdeDeclaration

public TypedIdeDeclaration(JooSymbol[] modifiers,
                           Ide ide,
                           TypeRelation optTypeRelation)
Method Detail

getNamespace

public Ide getNamespace()

isPublicApi

public boolean isPublicApi()
Overrides:
isPublicApi in class Declaration

getChildren

public List<? extends AstNode> getChildren()
Specified by:
getChildren in interface AstNode
Overrides:
getChildren in class IdeDeclaration

getName

public String getName()
Overrides:
getName in class IdeDeclaration

scope

public void scope(Scope scope)
Specified by:
scope in interface AstNode
Overrides:
scope in class IdeDeclaration

addPublicApiDependencyOn

protected void addPublicApiDependencyOn(TypeRelation optTypeRelation)

analyze

public void analyze(AstNode parentNode)
Specified by:
analyze in interface AstNode
Overrides:
analyze in class Declaration

resolveDeclaration

public IdeDeclaration resolveDeclaration()
Description copied from class: IdeDeclaration
Resolve this declaration to the underlying Class or PredefinedType declaration

Overrides:
resolveDeclaration in class IdeDeclaration
Returns:
the declaration

getOptTypeRelation

public TypeRelation getOptTypeRelation()


Copyright © 2002-2013 CoreMedia AG. All Rights Reserved.