pike.git / CHANGES

version» Context lines:

pike.git/CHANGES:5:    A "<" can be added before an index in the [..] operator to count    from the end instead. This is convenient to e.g. chop off the last    element in an array: a[..<1].      o New `[..] operator function.    Range operations have been separated from the `[] operator function    and is handled by a new `[..] which provides greater control in how    the range bounds are specified. For compatibility, if there is no    `[..] then `[] is still called for range operations.    + o Generalized this and this_program. +  It is now possible to refer to inherits in objects. Example: +  class A { +  int a; +  void foo() { werror("A\n"); } +  } +  class B { +  inherit A; +  int b; +  void foo() { werror("B\n"); } +  A::this_program get_a() { return A::this; } +  } +  In the above B()->get_a() will return an object with two symbols, +  'a' and 'foo', but B()->get_a()->foo() will still write "B\n". +    o Unicode escapes.    Pike now understands the common way to escape unicode chars, using    \uxxxx and \Uxxxxxxxx escapes. These escapes works both in string    and character literals and in the preprocessor. The latter means    that unicode escapes can be used in identifiers, which is useful if    they contain characters that can't be represented raw in the source    code charset.      o Stdio.*    Stdio.cp can now work recursively in a directory tree.