Package org.apache.imperius.spl.parser.compiler.symboltable

Examples of org.apache.imperius.spl.parser.compiler.symboltable.MethodSymbol


            String methodName=cimMethod.getName();
            if( ! symbols.containsKey(methodName))
            {
              int localReturnType=CIMSPLTypeConstants.convertCIMTypeToInternalType(cimMethod.getType());

              Symbol methodSymbol=new MethodSymbol(methodName,localReturnType,CIMSPLTypeConstants.getIsArray(localReturnType),cimclass.getName(),methodArgs,methodArgsSymbolTable);
              //add property to properties list
              if(logger.isLoggable(Level.FINE))
                logger.fine(Thread.currentThread().getName()+" adding method to symbol table" + methodName);
              symbols.put(methodName, methodSymbol);
            }
View Full Code Here


            throw new SPLException(e.getMessage());
          }
        }

        // construct a method symbol
        Symbol s = new MethodSymbol(methodName, internalReturnType, isReturnArray, returnReferenceTypeName, argTypeList, null);

//        // Insert into map
//        symbolMap.put(methodName, s);

        // xiping's test 06/19/09
View Full Code Here

            throws SPLException
    {

      // xiping's addition to support Java overloading, 06/19/09
      Collection c = (Collection)symTab.getSymbol(classNameOrVariableName + "." + methodName);
      MethodSymbol methodSym = null;
      for (Iterator it = c.iterator(); it.hasNext();) {
        methodSym = (MethodSymbol) it.next();
        List argTypeList = methodSym.getArgumentList();
       
        if (argTypeList.size() != pList.size()) {
          continue;
        }
       
      boolean typeNotEqual = false;
      for (int i = 0; i < argTypeList.size(); i++) {
        Expression exp = (Expression)pList.get(i);
        Argument arg = (Argument)argTypeList.get(i);
        TypeInfo expDataType = exp.getType();
        TypeInfo argDataType = arg.getType();
//        if (expDataType.getIsArray() != argDataType.getIsArray() ||
//            expDataType.getType() != argDataType.getType()) {
        if (expDataType.getType() != argDataType.getType()) {
          typeNotEqual = true;
          break;
        }
      }
     
      if (typeNotEqual) {
        continue;
      }

      break;
      }
     
    if (methodSym == null) {
      throw new SPLException("actual parameter validation failed: " + methodName + "does not exit");
    }
      // end        
     
        List argTypeList = methodSym.getArgumentList();

        Iterator formalParamTypeIt = argTypeList.iterator();
        Iterator actualParamIt = pList.iterator();

        //Xiping 05/30/09
View Full Code Here

            List paramList, Object targetObject) throws SPLException
    {
        List parameterObjects = new ArrayList();
        try
        {
          MethodSymbol methodSym = null;
          Collection c = (Collection)symTab.getSymbol(className + "." + methodName);
        for (Iterator it = c.iterator(); it.hasNext();) {
            methodSym = (MethodSymbol) it.next();
            List argTypeList = methodSym.getArgumentList();
           
            if (argTypeList.size() != paramList.size()) {
              continue;
            }
          boolean typeNotEqual = false;
          for (int i = 0; i < argTypeList.size(); i++) {
            Expression exp = (Expression)paramList.get(i);
            ArgumentImpl arg = (ArgumentImpl)argTypeList.get(i);
            TypeInfo expDataType = exp.getType();
            TypeInfo argDataType = arg.getType();
//            if (expDataType.getIsArray() != argDataType.getIsArray() ||
//                expDataType.getType() != argDataType.getType()) {
            if (expDataType.getType() != argDataType.getType()) {
              typeNotEqual = true;
              break;
            }
          }
          if (typeNotEqual) {
            continue;
          }
           
          break;
          }

        if (methodSym == null) {
          throw new SPLException("invokeClassMethod failed: " + methodName + "does not exit");
        }

            List argTypeList = methodSym.getArgumentList();

            for (int i = 0; i < paramList.size(); i++)
            {
                Expression exp = (Expression) paramList.get(i);
View Full Code Here

      String methodName=cimMethod.getName();
      if( ! symbols.containsKey(methodName))
      {
        int localReturnType=CIMSPLTypeConstants.convertCIMTypeToInternalType(cimMethod.getType().getType());

        Symbol methodSymbol = new MethodSymbol(methodName,localReturnType,
            CIMSPLTypeConstants.getIsArray(localReturnType),cimClass.getName(),methodArgs,methodArgsSymbolTable);
        //add property to properties list
        if(logger.isLoggable(Level.FINE))
          logger.fine(Thread.currentThread().getName()+" adding method to symbol table" + methodName);
        symbols.put(methodName, methodSymbol);
View Full Code Here

TOP

Related Classes of org.apache.imperius.spl.parser.compiler.symboltable.MethodSymbol

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.