Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /* Soot - a J*va Optimization Framework
  * Copyright (C) 2003 Ondrej Lhotak
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
  * version 2.1 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 * Boston, MA 02111-1307, USA.
 */
package soot.options;
import java.util.*;
import soot.*;

Soot command-line options parser base class.

Author(s):
Ondrej Lhotak
abstract class OptionsBase {
    private String padint initialString optsint tabString desc ) {
        StringBuffer b = new StringBuffer();
        forint i = 0; i < initiali++ ) b.append" " );
        b.append(opts);
        int i;
        iftab <= opts.length() ) {
            b.append"\n" );
            i = 0;
        } else i = opts.length()+initial;
        for( ; i <= tabi++ ) {
            b.append(" ");
        }
        forStringTokenizer t = new StringTokenizerdesc );
                t.hasMoreTokens(); )  {
            String s = t.nextToken();
            ifi + s.length() > 78 ) {
                b.append"\n" );
                i = 0;
                for( ; i <= tabi++ ) {
                    b.append(" ");
                }
            }
            b.appends );
            b.append" " );
            i += s.length() + 1;
        }
        b.append"\n" );
        return b.toString();
    }
    protected String padOptString optsString desc ) {
        return pad( 1, opts, 30, desc );
    }
    protected String padValString valsString desc ) {
        return pad( 4, vals, 32, desc );
    }
    protected String getPhaseUsage() {
        StringBuffer b = new StringBuffer();
        b.append"\nPhases and phase options:\n" );
        for (Pack p : PackManager.v().allPacks()) {
            b.appendpadOptp.getPhaseName(), p.getDeclaredOptions() ) );
            forIterator phIt = p.iterator(); phIt.hasNext(); ) {
                final HasPhaseOptions ph = (HasPhaseOptionsphIt.next();
                b.appendpadValph.getPhaseName(), ph.getDeclaredOptions() ) );
            }
        }
        return b.toString();
    }
    private final LinkedList<Stringoptions = new LinkedList<String>();
    protected void pushOptionsString s ) {
        .addFirsts );
    }
    protected boolean hasMoreOptions() { return !.isEmpty(); }
    protected String nextOption() { return .removeFirst(); }
    protected LinkedList classes = new LinkedList();
    public LinkedList classes() { return ; }
    public boolean setPhaseOptionString phaseString option ) {
        return PhaseOptions.v().processPhaseOptionsphaseoption );
    }
}
  
New to GrepCode? Check out our FAQ X