예제 #1
0
 private IFunctionType convertToObjectSignature(BlockExpression blk) {
   IFunctionType functionType = blk.getType();
   IType[] iTypes = new IType[functionType.getParameterTypes().length];
   for (int i = 0; i < iTypes.length; i++) {
     iTypes[i] = JavaTypes.OBJECT();
   }
   return new FunctionType(blk.getFunctionName(), JavaTypes.OBJECT(), iTypes);
 }
예제 #2
0
 private void specialHandlingFor_IGosuObject_BasedMethods(IFunctionSymbol symbol) {
   if (symbol.getType() instanceof IFunctionType) {
     IFunctionType ft = (IFunctionType) symbol.getType();
     if (ft.getScriptPart() != null
         && ft.getScriptPart().getContainingType()
             == IGosuClassInternal.Util.getGosuClassFrom(JavaTypes.IGOSU_OBJECT())) {
       _symbol =
           new GosuObjectFunctionSymbol(
               (IGosuClassInternal) ft.getScriptPart().getContainingType(),
               (DynamicFunctionSymbol) _symbol);
     }
   }
 }