Branch: Tag:

2008-06-28

2008-06-28 16:37:03 by Martin Nilsson <mani@lysator.liu.se>

static -> protected

Rev: lib/modules/ADT.pmod/Heap.pike:1.12
Rev: lib/modules/ADT.pmod/Queue.pike:1.14
Rev: lib/modules/ADT.pmod/Relation.pmod/Binary.pike:1.15
Rev: lib/modules/ADT.pmod/Struct.pike:1.20
Rev: lib/modules/ADT.pmod/Table.pmod:1.29
Rev: lib/modules/ADT.pmod/Trie.pike:1.6
Rev: lib/modules/ADT.pmod/module.pmod:1.12
Rev: lib/modules/Arg.pmod:1.6
Rev: lib/modules/Array.pmod:1.110
Rev: lib/modules/Audio.pmod/Codec.pmod:1.11
Rev: lib/modules/Audio.pmod/Format.pmod/MP3.pike:1.4
Rev: lib/modules/Cache.pmod/Storage.pmod/Gdbm.pike:1.12
Rev: lib/modules/Cache.pmod/cache.pike:1.14
Rev: lib/modules/Calendar.pmod/Austrian.pmod:1.8
Rev: lib/modules/Calendar.pmod/Badi.pmod:1.8
Rev: lib/modules/Calendar.pmod/Coptic.pmod:1.8
Rev: lib/modules/Calendar.pmod/Discordian.pmod:1.12
Rev: lib/modules/Calendar.pmod/Event.pmod:1.24
Rev: lib/modules/Calendar.pmod/Gregorian.pmod:1.12
Rev: lib/modules/Calendar.pmod/ISO.pmod:1.11
Rev: lib/modules/Calendar.pmod/Islamic.pmod:1.11
Rev: lib/modules/Calendar.pmod/Julian.pmod:1.11
Rev: lib/modules/Calendar.pmod/Language.pmod:1.25
Rev: lib/modules/Calendar.pmod/Rule.pmod:1.3
Rev: lib/modules/Calendar.pmod/Stardate.pmod:1.17
Rev: lib/modules/Calendar.pmod/Swedish.pmod:1.9
Rev: lib/modules/Calendar.pmod/TZnames.pmod:1.16
Rev: lib/modules/Calendar.pmod/Time.pmod:1.42
Rev: lib/modules/Calendar.pmod/TimeRanges.pmod:1.35
Rev: lib/modules/Calendar.pmod/Timezone.pmod:1.44
Rev: lib/modules/Calendar.pmod/YMD.pike:1.33
Rev: lib/modules/Calendar.pmod/module.pmod:1.16
Rev: lib/modules/Calendar_I.pmod/ISO.pmod:1.12
Rev: lib/modules/Calendar_I.pmod/Stardate.pmod:1.5
Rev: lib/modules/Crypto.pmod/DSA.pike:1.8
Rev: lib/modules/Crypto.pmod/HMAC.pike:1.5
Rev: lib/modules/Crypto.pmod/Koremutake.pmod:1.4
Rev: lib/modules/Crypto.pmod/PGP.pmod:1.14
Rev: lib/modules/Crypto.pmod/Pipe.pike:1.9
Rev: lib/modules/Crypto.pmod/RSA.pike:1.11
Rev: lib/modules/Crypto.pmod/Random.pmod:1.19
Rev: lib/modules/Crypto.pmod/Substitution.pike:1.4
Rev: lib/modules/Debug.pmod/Subject.pike:1.9
Rev: lib/modules/Debug.pmod/Wrapper.pike:1.6
Rev: lib/modules/Filesystem.pmod/System.pike:1.20
Rev: lib/modules/Filesystem.pmod/Tar.pmod:1.30
Rev: lib/modules/Filesystem.pmod/module.pmod:1.26
Rev: lib/modules/GLU.pmod:1.16
Rev: lib/modules/GLUE.pmod/Driver.pmod/GTK.pike:1.6
Rev: lib/modules/GLUE.pmod/Driver.pmod/Interface.pike:1.3
Rev: lib/modules/GLUE.pmod/Driver.pmod/SDL.pike:1.6
Rev: lib/modules/GLUE.pmod/Events.pmod:1.4
Rev: lib/modules/GLUE.pmod/module.pmod:1.15
Rev: lib/modules/GTKSupport.pmod/pCtree.pike:1.8
Rev: lib/modules/GTKSupport.pmod/pDrawingArea.pike:1.9
Rev: lib/modules/Geography.pmod/Countries.pmod:1.20
Rev: lib/modules/Geography.pmod/Position.pike:1.18
Rev: lib/modules/Getopt.pmod:1.33
Rev: lib/modules/Graphics.pmod/Graph.pmod/create_graph.pike:1.20
Rev: lib/modules/Graphics.pmod/Graph.pmod/module.pmod:1.9
Rev: lib/modules/Graphics.pmod/Graph.pmod/polyline.pike:1.7
Rev: lib/modules/Int.pmod:1.10
Rev: lib/modules/Local.pmod:1.11
Rev: lib/modules/Locale.pmod/Charset.pmod/Tables.pmod/iso88591.pmod:1.3
Rev: lib/modules/Locale.pmod/Charset.pmod/module.pmod:1.57
Rev: lib/modules/Locale.pmod/Language.pmod/nld.pmod:1.2
Rev: lib/modules/Locale.pmod/module.pmod:1.25
Rev: lib/modules/MIME.pmod/ext_to_media_type.pmod:1.7
Rev: lib/modules/MIME.pmod/module.pmod:1.20
Rev: lib/modules/Mapping.pmod:1.10
Rev: lib/modules/Parser.pmod/C.pmod:1.50
Rev: lib/modules/Parser.pmod/LR.pmod/GrammarParser.pmod:1.6
Rev: lib/modules/Parser.pmod/LR.pmod/module.pmod:1.17
Rev: lib/modules/Parser.pmod/Pike.pmod:1.41
Rev: lib/modules/Parser.pmod/RCS.pike:1.39
Rev: lib/modules/Parser.pmod/SGML.pike:1.3
Rev: lib/modules/Parser.pmod/XML.pmod/DOM.pmod:1.14
Rev: lib/modules/Parser.pmod/XML.pmod/NSTree.pmod:1.20
Rev: lib/modules/Parser.pmod/XML.pmod/Tree.pmod:1.72
Rev: lib/modules/Parser.pmod/XML.pmod/Validating.pike:1.14
Rev: lib/modules/Parser.pmod/module.pmod:1.25
Rev: lib/modules/Pike.pmod/module.pmod:1.19
Rev: lib/modules/Process.pmod:1.54
Rev: lib/modules/Protocols.pmod/Bittorrent.pmod/Bencoding.pmod:1.5
Rev: lib/modules/Protocols.pmod/Bittorrent.pmod/Peer.pike:1.21
Rev: lib/modules/Protocols.pmod/Bittorrent.pmod/PeerID.pmod:1.8
Rev: lib/modules/Protocols.pmod/Bittorrent.pmod/Port.pike:1.7
Rev: lib/modules/Protocols.pmod/Bittorrent.pmod/Torrent.pike:1.36
Rev: lib/modules/Protocols.pmod/Bittorrent.pmod/module.pmod:1.4
Rev: lib/modules/Protocols.pmod/DNS.pmod:1.96
Rev: lib/modules/Protocols.pmod/DNS_SD.pmod:1.2
Rev: lib/modules/Protocols.pmod/HTTP.pmod/Query.pike:1.93
Rev: lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/Port.pike:1.9
Rev: lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/Request.pike:1.50
Rev: lib/modules/Protocols.pmod/HTTP.pmod/Server.pmod/SSLPort.pike:1.14
Rev: lib/modules/Protocols.pmod/HTTP.pmod/Session.pike:1.22
Rev: lib/modules/Protocols.pmod/HTTP.pmod/module.pmod:1.56
Rev: lib/modules/Protocols.pmod/Ident.pmod:1.12
Rev: lib/modules/Protocols.pmod/LDAP.pmod/client.pike:1.113
Rev: lib/modules/Protocols.pmod/LDAP.pmod/ldap_privates.pmod:1.15
Rev: lib/modules/Protocols.pmod/LDAP.pmod/module.pmod:1.32
Rev: lib/modules/Protocols.pmod/LDAP.pmod/protocol.pike:1.21
Rev: lib/modules/Protocols.pmod/LMTP.pmod:1.12
Rev: lib/modules/Protocols.pmod/Line.pmod:1.23
Rev: lib/modules/Protocols.pmod/LysKOM.pmod/Raw.pike:1.19
Rev: lib/modules/Protocols.pmod/OBEX.pmod:1.8
Rev: lib/modules/Protocols.pmod/SMTP.pmod/module.pmod:1.46
Rev: lib/modules/Protocols.pmod/SNMP.pmod/protocol.pike:1.19
Rev: lib/modules/Protocols.pmod/TELNET.pmod:1.28
Rev: lib/modules/Protocols.pmod/X.pmod/Extensions.pmod:1.16
Rev: lib/modules/Protocols.pmod/XMLRPC.pmod/module.pmod:1.30
Rev: lib/modules/Remote.pmod/module.pmod:1.8
Rev: lib/modules/SSL.pmod/Cipher.pmod:1.16
Rev: lib/modules/SSL.pmod/connection.pike:1.42
Rev: lib/modules/SSL.pmod/context.pike:1.37
Rev: lib/modules/SSL.pmod/session.pike:1.37
Rev: lib/modules/SSL.pmod/sslfile.pike:1.110
Rev: lib/modules/Sql.pmod/Sql.pike:1.92
Rev: lib/modules/Sql.pmod/mysql.pike:1.41
Rev: lib/modules/Sql.pmod/postgres.pike:1.28
Rev: lib/modules/Sql.pmod/rsql.pike:1.13
Rev: lib/modules/Sql.pmod/sql_result.pike:1.18
Rev: lib/modules/Sql.pmod/sql_util.pmod:1.21
Rev: lib/modules/Sql.pmod/tds.pike:1.24
Rev: lib/modules/Standards.pmod/ASN1.pmod/Decode.pmod:1.24
Rev: lib/modules/Standards.pmod/ASN1.pmod/Types.pmod:1.45
Rev: lib/modules/Standards.pmod/EXIF.pmod:1.29
Rev: lib/modules/Standards.pmod/FIPS10_4.pmod:1.4
Rev: lib/modules/Standards.pmod/ID3.pmod:1.24
Rev: lib/modules/Standards.pmod/IDNA.pmod:1.9
Rev: lib/modules/Standards.pmod/IIM.pmod:1.8
Rev: lib/modules/Standards.pmod/ISO639_2.pmod:1.19
Rev: lib/modules/Standards.pmod/URI.pike:1.28
Rev: lib/modules/Standards.pmod/UUID.pmod:1.17
Rev: lib/modules/Standards.pmod/XML.pmod/Wix.pmod:1.27
Rev: lib/modules/Stdio.pmod/FakeFile.pike:1.16
Rev: lib/modules/Stdio.pmod/Readline.pike:1.60
Rev: lib/modules/Stdio.pmod/Terminfo.pmod:1.27
Rev: lib/modules/Stdio.pmod/module.pmod:1.238
Rev: lib/modules/String.pmod/HTML.pmod:1.7
Rev: lib/modules/String.pmod/module.pmod:1.29
Rev: lib/modules/Thread.pmod:1.45
Rev: lib/modules/Tools.pmod/AutoDoc.pmod/CExtractor.pmod:1.28
Rev: lib/modules/Tools.pmod/AutoDoc.pmod/DocParser.pmod:1.62
Rev: lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod:1.40
Rev: lib/modules/Tools.pmod/AutoDoc.pmod/PikeObjects.pmod:1.37
Rev: lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike:1.52
Rev: lib/modules/Tools.pmod/AutoDoc.pmod/ProcessXML.pmod:1.71
Rev: lib/modules/Tools.pmod/AutoDoc.pmod/module.pmod:1.10
Rev: lib/modules/Tools.pmod/Hilfe.pmod:1.156
Rev: lib/modules/Tools.pmod/Install.pmod:1.35
Rev: lib/modules/Tools.pmod/Legal.pmod/Copyright.pmod:1.12
Rev: lib/modules/Tools.pmod/Legal.pmod/License.pmod/GPL.pmod:1.3
Rev: lib/modules/Tools.pmod/Legal.pmod/License.pmod/LGPL.pmod:1.3
Rev: lib/modules/Tools.pmod/Legal.pmod/License.pmod/MPL.pmod:1.3
Rev: lib/modules/Tools.pmod/Monger.pmod/MongerDeveloper.pike:1.8
Rev: lib/modules/Tools.pmod/Monger.pmod/MongerUser.pike:1.8
Rev: lib/modules/Tools.pmod/Monger.pmod/module.pmod:1.3
Rev: lib/modules/Tools.pmod/PEM.pmod:1.14
Rev: lib/modules/Tools.pmod/PV.pike:1.10
Rev: lib/modules/Tools.pmod/Shoot.pmod/module.pmod:1.20
Rev: lib/modules/Tools.pmod/Standalone.pmod/assemble_autodoc.pike:1.35
Rev: lib/modules/Tools.pmod/Standalone.pmod/dump.pike:1.10
Rev: lib/modules/Tools.pmod/Standalone.pmod/join_autodoc.pike:1.19
Rev: lib/modules/Tools.pmod/Standalone.pmod/pmar_install.pike:1.8
Rev: lib/modules/Tools.pmod/Standalone.pmod/precompile.pike:1.2
Rev: lib/modules/Tools.pmod/Standalone.pmod/rsqld.pike:1.12
Rev: lib/modules/Tools.pmod/Standalone.pmod/test_pike.pike:1.136
Rev: lib/modules/Tools.pmod/Testsuite.pmod:1.9
Rev: lib/modules/Tools.pmod/sed.pmod:1.6
Rev: lib/modules/Web.pmod/CGI.pmod/Request.pike:1.4
Rev: lib/modules/Web.pmod/Crawler.pmod:1.26
Rev: lib/modules/Web.pmod/OWL.pike:1.7
Rev: lib/modules/Web.pmod/RDF.pike:1.47
Rev: lib/modules/Web.pmod/RSS.pmod:1.7
Rev: lib/modules/Yabu.pmod/module.pmod:1.30
Rev: lib/modules/_Image.pmod/Dims.pmod:1.10
Rev: lib/modules/_Image.pmod/Fonts.pmod:1.13
Rev: lib/modules/_Image.pmod/module.pmod:1.47
Rev: lib/modules/_Image_DWG.pmod:1.5
Rev: lib/modules/_Image_PS.pmod:1.15
Rev: lib/modules/_Image_XCF.pmod:1.25

1:   //   // Argument parser   // By Martin Nilsson - // $Id: Arg.pmod,v 1.5 2008/05/03 17:14:50 nilsson Exp $ + // $Id: Arg.pmod,v 1.6 2008/06/28 16:36:52 nilsson Exp $   //      #pike __REAL_VERSION__
14:    class Opt    {    constant is_opt = 1; -  static Opt next; +  protected Opt next;       //! Should return 1 for set options or a string containing the    //! value of the option. Returning 0 means the option was not set
36:    return next->get_opts();    }    -  static this_program `|(mixed thing) +  protected this_program `|(mixed thing)    {    if( !objectp(thing) || !thing->is_opt )    error("Can only or %O with another %O.\n",
54:       //! This function will be called by @expr{_sprintf@}, which    //! handles formatting of chaining between objects. -  static string __sprintf() +  protected string __sprintf()    {    return sprintf("%O()", this_program);    }    -  static string _sprintf(int t) +  protected string _sprintf(int t)    {    if( t!='O' ) return UNDEFINED;    if( !next )
77:    class NoOpt    {    inherit Opt; -  static string opt; -  static int double; +  protected string opt; +  protected int double;    -  static void create(string _opt) +  protected void create(string _opt)    {    if( sizeof(_opt)>2 && has_prefix(_opt, "--") )    double = 1;
123:    return ({ opt }) + ::get_opts();    }    -  static string __sprintf() +  protected string __sprintf()    {    return sprintf("Arg.NoOpt(%O)", opt);    }
137:    class Env    {    inherit Opt; -  static string name; +  protected string name;    -  static void create(string _name) +  protected void create(string _name)    {    name = _name;    }
150:    return ::get_value(argv, env);    }    -  static string __sprintf() +  protected string __sprintf()    {    return sprintf("Arg.Env(%O)", name);    }
163:    class Default    {    inherit Opt; -  static string value; +  protected string value;    -  static void create(string _value) +  protected void create(string _value)    {    value = _value;    }
175:    return value;    }    -  static string __sprintf() +  protected string __sprintf()    {    return sprintf("Arg.Default(%O)", value);    }
247:    return ::get_value(argv, env);    }    -  static string __sprintf() +  protected string __sprintf()    {    return sprintf("Arg.MaybeOpt(%O)", opt);    }
329:    return ::get_value(argv, env);    }    -  static string __sprintf() +  protected string __sprintf()    {    return sprintf("Arg.HasOpt(%O)", opt);    }
338:   } // -- OptLibrary      object REST = class { -  static string _sprintf(int t) +  protected string _sprintf(int t)    {    return "Arg.REST";    }
349:      class LowOptions   { -  static inherit OptLibrary; +  protected inherit OptLibrary;    -  static mapping(string:Opt) opts = ([]); -  static mapping(string:int(1..1)|string) values = ([]); -  static array(string) argv; -  static string application; +  protected mapping(string:Opt) opts = ([]); +  protected mapping(string:int(1..1)|string) values = ([]); +  protected array(string) argv; +  protected string application;    -  static void create(array(string) _argv, void|mapping(string:string) env) +  protected void create(array(string) _argv, void|mapping(string:string) env)    {    if(!env)    env = getenv();
414:       }    -  static int(0..1) unhandled_argument(array(string) argv, +  protected int(0..1) unhandled_argument(array(string) argv,    mapping(string:string) env)    {    return 0;    }    -  static mixed cast(string to) +  protected mixed cast(string to)    {    switch( to )    {
439:   {    inherit LowOptions;    -  static string|int `[](string id) +  protected string|int `[](string id)    {    return values[id];    } -  static string|int `->(string id) +  protected string|int `->(string id)    {    return values[id];    }    -  static int(0..1)|string unhandled_argument(array(string) argv, +  protected int(0..1)|string unhandled_argument(array(string) argv,    mapping(string:string) env)    {    if( !sizeof(argv) || argv[0]!="--help" ) return 0;
470:    write( "\n"+s );    }    -  static string index(string i) +  protected string index(string i)    {    string s = ::`[](i, 2);    if( !s ) return 0;