|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2004 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.api.java.comparators; import org.openide.src.ConstructorElement; import org.openide.src.MethodParameter; import org.openide.src.Identifier; import java.util.Comparator; class ConstructorComparator extends MemberNameComparator { protected Comparator idComparator; protected Comparator paramComparator; protected ConstructorComparator(int type) { super(type); int source_type=type&SOURCE; int paramType = source_type; if ((type & PARAM_NAME) > 0) paramType |= NAME; if ((type & PARAM_MODIFIERS) > 0) paramType |= MODIFIERS; if ((type & PARAM_TYPE) > 0) paramType |= TYPE; if ((type&EXCEPTIONS)!=0) idComparator=IdentifierComparator.createComparator(source_type); if ((type&PARAMETERS)!=0) paramComparator=MParameterComparator.createComparator(paramType); } public int compare(Object o1, Object o2) { ConstructorElement ce1=(ConstructorElement)o1; ConstructorElement ce2=(ConstructorElement)o2; int result,i; if ((type&NAME)!=0) { result=super.compare(ce1,ce2); if (result!=0) return result; } if ((type&EXCEPTIONS)!=0) { Identifier[] excA = ce1.getExceptions(); Identifier[] excB = ce2.getExceptions(); if (excA.length != excB.length) { return excA.length-excB.length>0?1:-1; } for (i = 0; i < excA.length; i++) { result=idComparator.compare(excA[i],excB[i]); if (result!=0) return result; } } if (paramComparator!=null) { MethodParameter[] paramA = ce1.getParameters(); MethodParameter[] paramB = ce2.getParameters(); if (paramA.length != paramB.length) { return paramA.length-paramB.length>0?1:-1; } for (i = 0; i < paramA.length; i++) { result=paramComparator.compare(paramA[i],paramB[i]); if (result!=0) return result; } } return 0; } static Comparator createComparator(int type) { return new ConstructorComparator(type); } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.