diff --git a/attic/strings-bytes/ola.py b/04-text-byte/ola.py similarity index 100% rename from attic/strings-bytes/ola.py rename to 04-text-byte/ola.py diff --git a/objects/bus.py b/08-obj-ref/bus.py similarity index 100% rename from objects/bus.py rename to 08-obj-ref/bus.py diff --git a/objects/cheese.py b/08-obj-ref/cheese.py similarity index 100% rename from objects/cheese.py rename to 08-obj-ref/cheese.py diff --git a/objects/haunted_bus.py b/08-obj-ref/haunted_bus.py similarity index 70% rename from objects/haunted_bus.py rename to 08-obj-ref/haunted_bus.py index a463dcd..a38bab1 100644 --- a/objects/haunted_bus.py +++ b/08-obj-ref/haunted_bus.py @@ -1,16 +1,16 @@ """ ->>> bus1 = HountedBus(['Alice', 'Bill']) +>>> bus1 = HauntedBus(['Alice', 'Bill']) >>> bus1.passengers ['Alice', 'Bill'] >>> bus1.pick('Charlie') >>> bus1.drop('Alice') >>> bus1.passengers ['Bill', 'Charlie'] ->>> bus2 = HountedBus() +>>> bus2 = HauntedBus() >>> bus2.pick('Carrie') >>> bus2.passengers ['Carrie'] ->>> bus3 = HountedBus() +>>> bus3 = HauntedBus() >>> bus3.passengers ['Carrie'] >>> bus3.pick('Dave') @@ -22,18 +22,18 @@ True ['Bill', 'Charlie'] ->>> dir(HountedBus.__init__) # doctest: +ELLIPSIS +>>> dir(HauntedBus.__init__) # doctest: +ELLIPSIS ['__annotations__', '__call__', ..., '__defaults__', ...] ->>> HountedBus.__init__.__defaults__ +>>> HauntedBus.__init__.__defaults__ (['Carrie', 'Dave'],) ->>> HountedBus.__init__.__defaults__[0] is bus2.passengers +>>> HauntedBus.__init__.__defaults__[0] is bus2.passengers True """ # BEGIN HAUNTED_BUS_CLASS -class HountedBus: - """A bus model hounted by ghost passengers""" +class HauntedBus: + """A bus model haunted by ghost passengers""" def __init__(self, passengers=[]): # <1> self.passengers = passengers # <2> diff --git a/objects/twilight_bus.py b/08-obj-ref/twilight_bus.py similarity index 100% rename from objects/twilight_bus.py rename to 08-obj-ref/twilight_bus.py diff --git a/classes/mem_test.py b/09-pythonic-obj/mem_test.py similarity index 100% rename from classes/mem_test.py rename to 09-pythonic-obj/mem_test.py diff --git a/classes/private/Confidential.java b/09-pythonic-obj/private/Confidential.java similarity index 100% rename from classes/private/Confidential.java rename to 09-pythonic-obj/private/Confidential.java diff --git a/classes/private/Expose.java b/09-pythonic-obj/private/Expose.java similarity index 100% rename from classes/private/Expose.java rename to 09-pythonic-obj/private/Expose.java diff --git a/classes/private/expose.py b/09-pythonic-obj/private/expose.py similarity index 100% rename from classes/private/expose.py rename to 09-pythonic-obj/private/expose.py diff --git a/classes/private/leakprivate.py b/09-pythonic-obj/private/leakprivate.py similarity index 100% rename from classes/private/leakprivate.py rename to 09-pythonic-obj/private/leakprivate.py diff --git a/classes/private/no_respect.py b/09-pythonic-obj/private/no_respect.py similarity index 100% rename from classes/private/no_respect.py rename to 09-pythonic-obj/private/no_respect.py diff --git a/classes/vector2d_v0.py b/09-pythonic-obj/vector2d_v0.py similarity index 100% rename from classes/vector2d_v0.py rename to 09-pythonic-obj/vector2d_v0.py diff --git a/classes/vector2d_v1.py b/09-pythonic-obj/vector2d_v1.py similarity index 100% rename from classes/vector2d_v1.py rename to 09-pythonic-obj/vector2d_v1.py diff --git a/classes/vector2d_v2.py b/09-pythonic-obj/vector2d_v2.py similarity index 100% rename from classes/vector2d_v2.py rename to 09-pythonic-obj/vector2d_v2.py diff --git a/classes/vector2d_v2_fmt_snippet.py b/09-pythonic-obj/vector2d_v2_fmt_snippet.py similarity index 100% rename from classes/vector2d_v2_fmt_snippet.py rename to 09-pythonic-obj/vector2d_v2_fmt_snippet.py diff --git a/classes/vector2d_v3.py b/09-pythonic-obj/vector2d_v3.py similarity index 100% rename from classes/vector2d_v3.py rename to 09-pythonic-obj/vector2d_v3.py diff --git a/classes/vector2d_v3_prophash.py b/09-pythonic-obj/vector2d_v3_prophash.py similarity index 100% rename from classes/vector2d_v3_prophash.py rename to 09-pythonic-obj/vector2d_v3_prophash.py diff --git a/classes/vector2d_v3_slots.py b/09-pythonic-obj/vector2d_v3_slots.py similarity index 100% rename from classes/vector2d_v3_slots.py rename to 09-pythonic-obj/vector2d_v3_slots.py diff --git a/objects/attr_list.py b/attic/objects/attr_list.py similarity index 100% rename from objects/attr_list.py rename to attic/objects/attr_list.py diff --git a/objects/attrs_not_in_object.py b/attic/objects/attrs_not_in_object.py similarity index 100% rename from objects/attrs_not_in_object.py rename to attic/objects/attrs_not_in_object.py diff --git a/objects/cards.py b/attic/objects/cards.py similarity index 100% rename from objects/cards.py rename to attic/objects/cards.py diff --git a/objects/cards_format.py b/attic/objects/cards_format.py similarity index 100% rename from objects/cards_format.py rename to attic/objects/cards_format.py diff --git a/objects/common_attrs.txt b/attic/objects/common_attrs.txt similarity index 100% rename from objects/common_attrs.txt rename to attic/objects/common_attrs.txt diff --git a/objects/not_so_common_attrs.txt b/attic/objects/not_so_common_attrs.txt similarity index 100% rename from objects/not_so_common_attrs.txt rename to attic/objects/not_so_common_attrs.txt diff --git a/classes/private/pt-br/AcessaPrivado.java b/classes/private/pt-br/AcessaPrivado.java deleted file mode 100644 index b332070..0000000 --- a/classes/private/pt-br/AcessaPrivado.java +++ /dev/null @@ -1,25 +0,0 @@ -import java.lang.reflect.Field; - -public class AcessaPrivado { - - public static void main(String[] args) { - ObjetoSecreto oSecreto = new ObjetoSecreto("senha super secreta"); - Field campoPrivado = null; - try { - campoPrivado = ObjetoSecreto.class.getDeclaredField("escondido"); - } - catch (NoSuchFieldException e) { - System.err.println(e); - System.exit(1); - } - campoPrivado.setAccessible(true); // arrombamos a porta - try { - String tavaEscondido = (String) campoPrivado.get(oSecreto); - System.out.println("oSecreto.escondido = " + tavaEscondido); - } - catch (IllegalAccessException e) { - // esta exceção nao acontece porque fizemos setAcessible(true) - System.err.println(e); - } - } -} diff --git a/classes/private/pt-br/ObjetoSecreto.java b/classes/private/pt-br/ObjetoSecreto.java deleted file mode 100644 index 378bf4e..0000000 --- a/classes/private/pt-br/ObjetoSecreto.java +++ /dev/null @@ -1,9 +0,0 @@ -public class ObjetoSecreto { - - private String escondido = ""; - private String oculto = "dado ultra secreto"; - - public ObjetoSecreto(String texto) { - this.escondido = texto; - } -} diff --git a/classes/private/pt-br/acessapriv.py b/classes/private/pt-br/acessapriv.py deleted file mode 100644 index 4e88556..0000000 --- a/classes/private/pt-br/acessapriv.py +++ /dev/null @@ -1,6 +0,0 @@ -import ObjetoSecreto - -oSecreto = ObjetoSecreto('senha super secreta') -campoPrivado = ObjetoSecreto.getDeclaredField('escondido') -campoPrivado.setAccessible(True) # arrombamos a porta -print 'oSecreto.escondido =', campoPrivado.get(oSecreto) diff --git a/classes/private/pt-br/listapriv.py b/classes/private/pt-br/listapriv.py deleted file mode 100644 index 01c7cde..0000000 --- a/classes/private/pt-br/listapriv.py +++ /dev/null @@ -1,11 +0,0 @@ -from java.lang.reflect import Modifier -import ObjetoSecreto - -oSecreto = ObjetoSecreto('senha super secreta') -campos = ObjetoSecreto.getDeclaredFields() -for campo in campos: - # so campos privados! - if Modifier.isPrivate(campo.getModifiers()): - print campo - campo.setAccessible(True) # arrombamos a porta - print '\t', campo.getName(), '=', campo.get(oSecreto)