analyzeComposition() public static method

Check to see if signatures match
public static analyzeComposition ( CodeBase $code_base, Clazz $class ) : void
$code_base Phan\CodeBase
$class Phan\Language\Element\Clazz
return void
Example #1
0
File: Clazz.php Project: etsy/phan
 /**
  * This method should be called after hydration
  *
  * @return void
  */
 public final function analyze(CodeBase $code_base)
 {
     if ($this->isInternal()) {
         return;
     }
     // Make sure the parent classes exist
     ParentClassExistsAnalyzer::analyzeParentClassExists($code_base, $this);
     DuplicateClassAnalyzer::analyzeDuplicateClass($code_base, $this);
     ParentConstructorCalledAnalyzer::analyzeParentConstructorCalled($code_base, $this);
     PropertyTypesAnalyzer::analyzePropertyTypes($code_base, $this);
     // Analyze this class to make sure that we don't have conflicting
     // types between similar inherited methods.
     CompositionAnalyzer::analyzeComposition($code_base, $this);
     // Let any configured plugins analyze the class
     ConfigPluginSet::instance()->analyzeClass($code_base, $this);
 }
Example #2
0
File: Clazz.php Project: tpunt/phan
 /**
  * This method should be called after hydration
  *
  * @return void
  */
 protected function analyzeOnce(CodeBase $code_base)
 {
     if ($this->isInternal()) {
         return;
     }
     // Analyze this class to make sure that
     CompositionAnalyzer::analyzeComposition($code_base, $this);
     // Make sure the parent classes exist
     ParentClassExistsAnalyzer::analyzeParentClassExists($code_base, $this);
     DuplicateClassAnalyzer::analyzeDuplicateClass($code_base, $this);
     ParentConstructorCalledAnalyzer::analyzeParentConstructorCalled($code_base, $this);
     PropertyTypesAnalyzer::analyzePropertyTypes($code_base, $this);
     // Let any configured plugins analyze the class
     ConfigPluginSet::instance()->analyzeClass($code_base, $this);
 }