Project

General

Profile

Actions

Bug #80905

closed

Class AbstractNode missing in LegacyClassesForIde.php

Added by Markus Mächler Mächler almost 7 years ago. Updated almost 7 years ago.

Status:
Rejected
Priority:
Should have
Assignee:
-
Category:
Fluid
Target version:
Start date:
2017-04-20
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
8
PHP Version:
Tags:
Complexity:
easy
Is Regression:
Sprint Focus:

Description

The Class TYPO3\CMS\Fluid\Core\Parser\SyntaxTree\AbstractNode is part of sysext/fluid/Migrations/Code/ClassAliasMap.php but is not present in sysext/fluid/Migrations/Code/LegacyClassesForIde.php, thus it is not recognised in the IDE.

Please add the following to LegacyClassesForIde.php

namespace TYPO3\CMS\Fluid\Core\Parser\SyntaxTree {
    class AbstractNode extends \TYPO3Fluid\Fluid\Core\Parser\SyntaxTree\ViewHelperNode
    {
    }
}

By the way..is the class AbstractNode on purpose mapping to the new ViewHelperNode and not the new AbstractNode?

Actions #1

Updated by Benni Mack almost 7 years ago

  • Target version changed from 8 LTS to next-patchlevel
Actions #2

Updated by Claus Due almost 7 years ago

that one is a bit special - the class is mapped to ViewHelperNode because previously in TYPO3, the signature of one of the VH API methods required an AbstractNode when for obvious reasons it should require a ViewHelperNode. Fluid standalone fixed that, so we mapped the AbstractNode->ViewHelperNode to make signatures compatible. That's also why the class isn't mapped in IDE classes: referencing that class in any other way than the method signature causes a fatal error (constructors are completely different on those two classes)

so it all boils down the PHP7 signature compatibility and you must never use CMS's AbstractNode in any of your own code, ever.

Actions #3

Updated by Wouter Wolters almost 7 years ago

  • Status changed from New to Rejected

Rejected after the explanation by Claus. removed CMS .class AbstractNode must never be used

Actions

Also available in: Atom PDF