public function GetStandardType(
        \Peg\Lib\Definitions\Element\VariableType $type
    )
    {
        $standard_type = "";

        switch($type->type)
        {
            case    "bool":
                $standard_type = StandardType::BOOLEAN;
                break;

            case    "unsigned int":
            case    "unsigned long":
            case    "long":
            case    "long int":
            case    "int":
            case    "size_t":
            case    "unsigned":
            case    "unsigned short":
            case    "unsigned char":
                $standard_type = StandardType::INTEGER;
                break;

            case    "float":
            case    "double":
                $standard_type = StandardType::REAL;
                break;

            case    "char":
                $standard_type = StandardType::CHARACTER;
                break;

            case    "void":
                $standard_type = StandardType::VOID;
                break;

            default:
                //Match object or const object
                if($this->HasClass($type->type))
                {
                    $standard_type = StandardType::OBJECT;
                }
                //Check if enumartion of class
                elseif($this->HasClassEnum($type->type))
                {
                    $standard_type = StandardType::CLASS_ENUM;
                }
                //Check if global enumertion
                elseif($this->HasEnumeration($type->type))
                {
                    $standard_type = StandardType::ENUM;
                }
                //Check if typedef
                elseif($typedef = $this->HasTypeDef($type->type))
                {
                    $standard_type = $this->GetStandardType($typedef);
                }
                else
                {
                    $standard_type = StandardType::UNKNOWN;
                }
        }
        
        return $standard_type;
    }
public function GetStandardType(
        \Peg\Lib\Definitions\Element\VariableType $type
    )
    {
        $standard_type = "";

        switch($type->type)
        {
            case    "bool":
                $standard_type = StandardType::BOOLEAN;
                break;

            case    "unsigned int":
            case    "unsigned long":
            case    "long":
            case    "long int":
            case    "int":
            case    "size_t":
            case    "unsigned":
            case    "unsigned short":
            case    "unsigned char":
                $standard_type = StandardType::INTEGER;
                break;

            case    "float":
            case    "double":
                $standard_type = StandardType::REAL;
                break;

            case    "char":
                $standard_type = StandardType::CHARACTER;
                break;

            case    "void":
                $standard_type = StandardType::VOID;
                break;

            default:
                //Match object or const object
                if($this->HasClass($type->type))
                {
                    $standard_type = StandardType::OBJECT;
                }
                //Check if enumartion of class
                elseif($this->HasClassEnum($type->type))
                {
                    $standard_type = StandardType::CLASS_ENUM;
                }
                //Check if global enumertion
                elseif($this->HasEnumeration($type->type))
                {
                    $standard_type = StandardType::ENUM;
                }
                //Check if typedef
                elseif($typedef = $this->HasTypeDef($type->type))
                {
                    $standard_type = $this->GetStandardType($typedef);
                }
                else
                {
                    $standard_type = StandardType::UNKNOWN;
                }
        }
        
        return $standard_type;
    }
public function GetStandardType ( \ Peg \ Lib \ Definitions \ Element \ VariableType $ type ) { $ standard_type = "" ; switch ( $ type -> type ) { case "bool" : $ standard_type = StandardType :: BOOLEAN ; break ; case "unsigned int" : case "unsigned long" : case "long" : case "long int" : case "int" : case "size_t" : case "unsigned" : case "unsigned short" : case "unsigned char" : $ standard_type = StandardType :: INTEGER ; break ; case "float" : case "double" : $ standard_type = StandardType :: REAL ; break ; case "char" : $ standard_type = StandardType :: CHARACTER ; break ; case "void" : $ standard_type = StandardType :: VOID ; break ; default : //Match object or const object if ( $ this -> HasClass ( $ type -> type ) ) { $ standard_type = StandardType :: OBJECT ; } //Check if enumartion of class elseif ( $ this -> HasClassEnum ( $ type -> type ) ) { $ standard_type = StandardType :: CLASS_ENUM ; } //Check if global enumertion elseif ( $ this -> HasEnumeration ( $ type -> type ) ) { $ standard_type = StandardType :: ENUM ; } //Check if typedef elseif ( $ typedef = $ this -> HasTypeDef ( $ type -> type ) ) { $ standard_type = $ this -> GetStandardType ( $ typedef ) ; } else { $ standard_type = StandardType :: UNKNOWN ; } } return $ standard_type ; }
Gets a standard type identifier for a variable type.
@todo Add hook|signal so a plugin can modify the returned type.
@param \Peg\Lib\Definitions\Element\VariableType $type
Gets a standard type identifier for a variable type .