Changeset 603 in dev for trunk/ab5.0/abdev/ab_common


Ignore:
Timestamp:
May 10, 2008, 11:10:33 PM (16 years ago)
Author:
dai_9181
Message:

ObjectModuleに関連するクラス一式をab_commonプロジェクトに移動した。

Location:
trunk/ab5.0/abdev/ab_common
Files:
4 edited
31 moved

Legend:

Unmodified
Added
Removed
  • trunk/ab5.0/abdev/ab_common/ab_common.vcproj

    r601 r603  
    104104            <Tool
    105105                Name="VCCLCompilerTool"
     106                InlineFunctionExpansion="2"
     107                EnableIntrinsicFunctions="true"
     108                FavorSizeOrSpeed="1"
    106109                AdditionalIncludeDirectories="..\..\;..\..\cpplibs\boost;include"
    107110                PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
     
    228231            <Tool
    229232                Name="VCCLCompilerTool"
     233                InlineFunctionExpansion="2"
     234                EnableIntrinsicFunctions="true"
     235                FavorSizeOrSpeed="1"
    230236                AdditionalIncludeDirectories="..\..\;..\..\cpplibs\boost;include"
    231237                PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
     
    317323                >
    318324                <File
     325                    RelativePath=".\src\Lexical\Class.cpp"
     326                    >
     327                </File>
     328                <File
     329                    RelativePath=".\src\Lexical\Const.cpp"
     330                    >
     331                </File>
     332                <File
     333                    RelativePath=".\src\Lexical\DataTable.cpp"
     334                    >
     335                </File>
     336                <File
     337                    RelativePath=".\src\Lexical\Delegate.cpp"
     338                    >
     339                </File>
     340                <File
     341                    RelativePath=".\src\Lexical\Interface.cpp"
     342                    >
     343                </File>
     344                <File
     345                    RelativePath=".\src\Lexical\Meta.cpp"
     346                    >
     347                </File>
     348                <File
     349                    RelativePath=".\src\Lexical\Method.cpp"
     350                    >
     351                </File>
     352                <File
    319353                    RelativePath=".\src\Lexical\Namespace.cpp"
    320354                    >
     
    325359                </File>
    326360                <File
     361                    RelativePath=".\src\Lexical\NativeCode.cpp"
     362                    >
     363                </File>
     364                <File
     365                    RelativePath=".\src\Lexical\ObjectModule.cpp"
     366                    >
     367                    <FileConfiguration
     368                        Name="Debug(x86)|Win32"
     369                        >
     370                        <Tool
     371                            Name="VCCLCompilerTool"
     372                            UsePrecompiledHeader="0"
     373                        />
     374                    </FileConfiguration>
     375                    <FileConfiguration
     376                        Name="Release(x86)|Win32"
     377                        >
     378                        <Tool
     379                            Name="VCCLCompilerTool"
     380                            UsePrecompiledHeader="0"
     381                        />
     382                    </FileConfiguration>
     383                    <FileConfiguration
     384                        Name="Debug(x64)|Win32"
     385                        >
     386                        <Tool
     387                            Name="VCCLCompilerTool"
     388                            AdditionalOptions="/bigobj"
     389                            UsePrecompiledHeader="0"
     390                        />
     391                    </FileConfiguration>
     392                    <FileConfiguration
     393                        Name="Release(x64)|Win32"
     394                        >
     395                        <Tool
     396                            Name="VCCLCompilerTool"
     397                            UsePrecompiledHeader="0"
     398                        />
     399                    </FileConfiguration>
     400                </File>
     401                <File
     402                    RelativePath=".\src\Lexical\Parameter.cpp"
     403                    >
     404                </File>
     405                <File
     406                    RelativePath=".\src\Lexical\Procedure.cpp"
     407                    >
     408                </File>
     409                <File
     410                    RelativePath=".\src\Lexical\Source.cpp"
     411                    >
     412                </File>
     413                <File
    327414                    RelativePath=".\src\Lexical\Symbol.cpp"
     415                    >
     416                </File>
     417                <File
     418                    RelativePath=".\src\Lexical\Type.cpp"
     419                    >
     420                </File>
     421                <File
     422                    RelativePath=".\src\Lexical\TypeDef.cpp"
     423                    >
     424                </File>
     425                <File
     426                    RelativePath=".\src\Lexical\Variable.cpp"
    328427                    >
    329428                </File>
     
    355454                >
    356455                <File
     456                    RelativePath=".\include\Lexical\Class.h"
     457                    >
     458                </File>
     459                <File
    357460                    RelativePath=".\include\Lexical\CompilerErrorException.h"
    358461                    >
    359462                </File>
    360463                <File
     464                    RelativePath=".\include\Lexical\Const.h"
     465                    >
     466                </File>
     467                <File
     468                    RelativePath=".\include\Lexical\DataTable.h"
     469                    >
     470                </File>
     471                <File
     472                    RelativePath=".\include\Lexical\Delegate.h"
     473                    >
     474                </File>
     475                <File
     476                    RelativePath=".\include\Lexical\Interface.h"
     477                    >
     478                </File>
     479                <File
     480                    RelativePath=".\include\Lexical\Member.h"
     481                    >
     482                </File>
     483                <File
     484                    RelativePath=".\include\Lexical\Meta.h"
     485                    >
     486                </File>
     487                <File
     488                    RelativePath=".\include\Lexical\Method.h"
     489                    >
     490                </File>
     491                <File
    361492                    RelativePath=".\include\Lexical\Namespace.h"
    362493                    >
     
    367498                </File>
    368499                <File
     500                    RelativePath=".\include\Lexical\NativeCode.h"
     501                    >
     502                </File>
     503                <File
     504                    RelativePath=".\include\Lexical\ObjectModule.h"
     505                    >
     506                </File>
     507                <File
     508                    RelativePath=".\include\Lexical\Parameter.h"
     509                    >
     510                </File>
     511                <File
     512                    RelativePath=".\include\Lexical\Procedure.h"
     513                    >
     514                </File>
     515                <File
    369516                    RelativePath=".\include\Lexical\Prototype.h"
    370517                    >
    371518                </File>
    372519                <File
     520                    RelativePath=".\include\Lexical\Source.h"
     521                    >
     522                </File>
     523                <File
    373524                    RelativePath=".\include\Lexical\Symbol.h"
    374525                    >
    375526                </File>
    376527                <File
     528                    RelativePath=".\include\Lexical\Type.h"
     529                    >
     530                </File>
     531                <File
     532                    RelativePath=".\include\Lexical\TypeDef.h"
     533                    >
     534                </File>
     535                <File
    377536                    RelativePath=".\include\Lexical\TypeMisc.h"
     537                    >
     538                </File>
     539                <File
     540                    RelativePath=".\include\Lexical\Variable.h"
    378541                    >
    379542                </File>
  • trunk/ab5.0/abdev/ab_common/include/Lexical/Symbol.h

    r516 r603  
    33namespace ActiveBasic{ namespace Common{ namespace Lexical{
    44
     5std::string Operator_NaturalStringToCalcMarkString( const std::string &name );
     6std::string Operator_CalcMarkStringToNaturalString( const std::string &name );
    57
    68class Symbol
  • trunk/ab5.0/abdev/ab_common/include/ab_common.h

    r601 r603  
    11#pragma once
     2
     3#define trace_for_serialize( msg )
    24
    35#include "BasicFixed.h"
     
    810#include "Lexical/Prototype.h"
    911#include "Lexical/TypeMisc.h"
     12
     13using namespace ActiveBasic::Common::Lexical;
     14
     15#include "Lexical/NativeCode.h"
     16#include "Lexical/Source.h"
     17#include "Lexical/Type.h"
     18#include "Lexical/Method.h"
     19#include "Lexical/Interface.h"
     20#include "Lexical/Member.h"
     21#include "Lexical/Class.h"
     22#include "Lexical/Parameter.h"
     23#include "Lexical/Variable.h"
     24#include "Lexical/Procedure.h"
     25#include "Lexical/TypeDef.h"
     26#include "Lexical/Const.h"
     27#include "Lexical/Delegate.h"
     28#include "Lexical/Meta.h"
     29#include "Lexical/DataTable.h"
     30#include "Lexical/ObjectModule.h"
  • trunk/ab5.0/abdev/ab_common/src/Lexical/ObjectModule.cpp

    r601 r603  
    5555#include <abdev/ab_common/include/ab_common.h>
    5656
    57 #include "../common.h"
    58 
    59 #include <option.h>
    60 
    61 using namespace ActiveBasic::Common::Lexical;
    62 
    63 #include <NativeCode.h>
    64 #include <Source.h>
    65 #include <Type.h>
    66 #include <Method.h>
    67 #include <Interface.h>
    68 #include <Member.h>
    69 #include <Class.h>
    70 #include <Parameter.h>
    71 #include <Variable.h>
    72 #include <Procedure.h>
    73 #include <TypeDef.h>
    74 #include <Const.h>
    75 #include <Delegate.h>
    76 #include <Enum.h>
    77 #include <Meta.h>
    78 #include <DataTable.h>
    79 #include <ObjectModule.h>
    80 
    8157
    8258void ObjectModule::StaticLink( ObjectModule &objectModule )
  • trunk/ab5.0/abdev/ab_common/src/Lexical/Symbol.cpp

    r516 r603  
    44
    55const NamespaceSupporter *Symbol::namespaceSupporter = NULL;
     6
     7char *calcNames[255] = {
     8    "xor",
     9};
     10void InitCalcNames()
     11{
     12    if( calcNames[CALC_XOR] )
     13    {
     14        return;
     15    }
     16
     17    memset( calcNames, 0, 255 * sizeof(char *) );
     18    calcNames[CALC_XOR] = "xor";
     19    calcNames[CALC_OR] = "or";
     20    calcNames[CALC_AND] = "and";
     21    calcNames[CALC_NOT] = "Not";
     22    calcNames[CALC_PE] = "<=";
     23    calcNames[CALC_QE] = ">=";
     24    calcNames[CALC_NOTEQUAL] = "<>";
     25    calcNames[CALC_EQUAL] = "=(compare)";
     26    calcNames[CALC_P] = "<";
     27    calcNames[CALC_Q] = ">";
     28    calcNames[CALC_SHL] = "<<";
     29    calcNames[CALC_SHR] = ">>";
     30    calcNames[CALC_ADDITION] = "+";
     31    calcNames[CALC_SUBTRACTION] = "-";
     32    calcNames[CALC_STRPLUS] = "&";
     33    calcNames[CALC_MOD] = "mod";
     34    calcNames[CALC_PRODUCT] = "*";
     35    calcNames[CALC_QUOTIENT] = "/";
     36    calcNames[CALC_INTQUOTIENT] = "\\";
     37    calcNames[CALC_AS] = "As";
     38    calcNames[CALC_BYVAL] = "ByVal";
     39    calcNames[CALC_MINUSMARK] = "-(mark)";
     40    calcNames[CALC_POWER] = "^";
     41    calcNames[CALC_SUBSITUATION] = "=";
     42    calcNames[CALC_ARRAY_GET] = "[]";
     43    calcNames[CALC_ARRAY_SET] = "[]=";
     44}
     45void GetCalcName(int idCalc,char *name){
     46    InitCalcNames();
     47
     48    if( calcNames[idCalc] == NULL )
     49    {
     50        throw;
     51    }
     52
     53    lstrcpy( name, calcNames[idCalc] );
     54}
     55
     56std::string ActiveBasic::Common::Lexical::Operator_CalcMarkStringToNaturalString( const std::string &name )
     57{
     58    if( name[0] == 1 && name[1] == ESC_OPERATOR )
     59    {
     60        BYTE calcId = name[2];
     61        char temporary[255], calcName[255];
     62        GetCalcName( calcId, calcName );
     63        temporary[0] = name[0];
     64        temporary[1] = name[1];
     65        lstrcpy( temporary+2, calcName );
     66        return temporary;
     67    }
     68    return name;
     69}
     70
     71BYTE ToCalcId( const char *name )
     72{
     73    InitCalcNames();
     74
     75    for( int i=0; i<255; i++ )
     76    {
     77        if( calcNames[i] )
     78        {
     79            if( lstrcmp( name, calcNames[i] ) == 0 )
     80            {
     81                return i;
     82            }
     83        }
     84    }
     85
     86    throw;
     87}
     88
     89std::string ActiveBasic::Common::Lexical::Operator_NaturalStringToCalcMarkString( const std::string &name )
     90{
     91    if( name[0] == 1 && name[1] == ESC_OPERATOR )
     92    {
     93        BYTE calcId = ToCalcId( name.c_str()+2 );
     94        char temporary[255];
     95        temporary[0] = name[0];
     96        temporary[1] = name[1];
     97        temporary[2] = calcId;
     98        temporary[3] = 0;
     99        return temporary;
     100    }
     101    return name;
     102}
    6103
    7104std::string Symbol::GetFullName() const
Note: See TracChangeset for help on using the changeset viewer.