{"action":"created","comment":{"url":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/comments/174590090","pull_request_review_id":103972565,"id":174590090,"diff_hunk":"@@ -1 +1,954 @@\n-# Syntax\n+## Generic Data Types\n+\n+## Tipos Genéricos de Dados\n+\n+Using generics where we usually place types, like in function signatures or\n+structs, lets us create definitions that we can use for many different concrete\n+data types. Let’s take a look at how to define functions, structs, enums, and\n+methods using generics, and at the end of this section we’ll discuss the\n+performance of code using generics.\n+\n+Usando tipos genéricos onde usualmente colocamos tipos, como em assinaturas de\n+funções ou estruturas, vamos criar definições que podemos usar muitos tipos \n+diferentes de tipos concretos de dados. Vamos dar uma olhada em como definir\n+funções, structs, enums e métodos usando tipos genéricos, e ao final dessa\n+seção discutiremos a performance do código usando tipos genéricos.\n+\n+### Using Generic Data Types in Function Definitions\n+\n+### Usando Tipos Genéricos de Dados em Definições de Funções\n+\n+We can define functions that use generics in the signature of the function\n+where the data types of the parameters and return value go. In this way, the\n+code we write can be more flexible and provide more functionality to callers of\n+our function, while not introducing code duplication.\n+\n+Nós podemos definir funções que usam tipos genéricos na assinatura da função\n+onde os tipos de dados dos parâmetros e os retornos vão. Desse modo, o código\n+que escrevemos pode ser mais flexível e pode fornecer mais funcionalidades para \n+os chamadores da nossa função, e ainda diminuir duplicação de código.\n+\n+Continuing with our `largest` function, Listing 10-4 shows two functions\n+providing the same functionality to find the largest value in a slice. The\n+first function is the one we extracted in Listing 10-3 that finds the largest\n+`i32` in a slice. The second function finds the largest `char` in a slice:\n+\n+Continuando com nossa função `maior`, a Listagem 10-4 mostra duas funções que \n+oferecem a mesma funcionalidade de encontrar o maior valor dado um corte. A\n+primeira função é a que extraímos na Listagem 10-3 que encontra o maior `ì32` \n+em um corte. A segunda função encontra o maior `char` em um corte:\n+\n+<span class=\"filename\">Filename: src/main.rs</span>\n+\n+<span class=\"filename\">Nome do Arquivo: src/main.rs</span>\n+\n+```rust\n+fn largest_i32(list: &[i32]) -> i32 {\n+    let mut largest = list[0];\n+\n+    for &item in list.iter() {\n+        if item > largest {\n+            largest = item;\n+        }\n+    }\n+\n+    largest\n+}\n+\n+fn largest_char(list: &[char]) -> char {\n+    let mut largest = list[0];\n+\n+    for &item in list.iter() {\n+        if item > largest {\n+            largest = item;\n+        }\n+    }\n+\n+    largest\n+}\n+\n+fn main() {\n+    let number_list = vec![34, 50, 25, 100, 65];\n+\n+    let result = largest_i32(&number_list);\n+    println!(\"The largest number is {}\", result);\n+#    assert_eq!(result, 100);\n+\n+    let char_list = vec!['y', 'm', 'a', 'q'];\n+\n+    let result = largest_char(&char_list);\n+    println!(\"The largest char is {}\", result);\n+#    assert_eq!(result, 'y');\n+}\n+```\n+\n+```rust\n+fn maior_i32(lista: &[i32]) -> i32 {\n+    let mut maior = list[0];\n+\n+    for &item in lista.iter() {\n+        if item > maior {\n+            maior = item;\n+        }\n+    }\n+\n+    maior\n+}\n+\n+fn maior_char(lista: &[char]) -> char {\n+    let mut maior = lista[0];\n+\n+    for &item in lista.iter() {\n+        if item > maior {\n+            maior = item;\n+        }\n+    }\n+\n+    maior\n+}\n+\n+fn main() {\n+    let lista_numero = vec![34, 50, 25, 100, 65];\n+\n+    let resultado = maior_i32(&lista_numero);\n+    println!(\"O maior número {}\", resultado);\n+#    assert_eq!(resultado, 100);\n+\n+    let lista_char = vec!['y', 'm', 'a', 'q'];\n+\n+    let resultado = maior_char(&lista_char);\n+    println!(\"O maior char é {}\", resultado);\n+#    assert_eq!(resultado, 'y');\n+}\n+```\n+\n+<span class=\"caption\">Listing 10-4: Two functions that differ only in their\n+names and the types in their signatures</span>\n+\n+<span class=\"caption\">Listing 10-4: Duas funções que diferem apenas em seus\n+nomes e nos tipos de suas assinaturas</span>\n+\n+Here, the functions `largest_i32` and `largest_char` have the exact same body,\n+so it would be nice if we could turn these two functions into one and get rid\n+of the duplication. Luckily, we can do that by introducing a generic type\n+parameter!\n+\n+Aqui as funções `maior_i32` e `maior_char` tem exatamente o mesmo corpo, então \n+seria bom se pudéssemos transformar essas duas funções em uma e nos livrar da \n+duplicação. Por sorte, nós podemos fazer isso introduzindo um parâmetro de \n+tipo genérico!\n+\n+To parameterize the types in the signature of the one function we’re going to\n+define, we need to create a name for the type parameter, just like how we give\n+names for the value parameters to a function. We’re going to choose the name\n+`T`. Any identifier can be used as a type parameter name, but we’re choosing\n+`T` because Rust’s type naming convention is CamelCase. Generic type parameter\n+names also tend to be short by convention, often just one letter. Short for\n+“type”, `T` is the default choice of most Rust programmers.\n+\n+Para parametrizar os tipos na assinatura de uma função que vamos definir,\n+precisamos criar um nome para o tipo parâmetro, assim como damos nomes para os \n+valores dos parâmetros de uma função. Nós vamos escolher o nome `T`. Qualquer \n+identificador pode ser usado como um nome de tipo de parâmetro, mas estamos \n+escolhendo `T` porque a convenção de nomes de tipos de Rust é a CamelCase. \n+Nomes de parâmetros de tipos genéricos também tendem a ser curtos por \n+convenção, e frequentemente usam apenas uma letra. A abreviatura de \"tipo\", `T`\n+é a escolha padrão feita por programadores Rust.\n+\n+When we use a parameter in the body of the function, we have to declare the\n+parameter in the signature so that the compiler knows what that name in the\n+body means. Similarly, when we use a type parameter name in a function\n+signature, we have to declare the type parameter name before we use it. Type\n+name declarations go in angle brackets between the name of the function and the\n+parameter list.\n+\n+Quando usamos um parâmetro no corpo de uma função, nós temos que declarar o \n+parâmetro na assinatura para que o compilador saiba o que aquele nome no corpo\n+significa. Similarmente, quando usamos um tipo de nome de parâmetro em uma \n+assinatura de função, temos que declarar o tipo de nome de parâmetro antes de \n+usa-lo. Declarações de tipos de nomes vão em colchetes entre o nome da função e \n+a lista de paramêtros.\n+\n+The function signature of the generic `largest` function we’re going to define\n+will look like this:\n+\n+A assinatura da função da função genérica `maior` que vamos definir se parecerá\n+com isto:\n+\n+```rust,ignore\n+fn largest<T>(list: &[T]) -> T {\n+```\n+\n+```rust,ignore\n+fn maior<T>(lista: &[T]) -> T {\n+```\n+\n+We would read this as: the function `largest` is generic over some type `T`. It\n+has one parameter named `list`, and the type of `list` is a slice of values of\n+type `T`. The `largest` function will return a value of the same type `T`.\n+\n+Nós leríamos isso como: a função `maior` é genérica sobre algum tipo `T`. Ela\n+tem um parâmetro chamado `lista`, e o tipo de `lista` é um corte dos valores\n+do tipo `T`. A função `maior` retornará um valor do mesmo tipo `T`.\n+\n+Listing 10-5 shows the unified `largest` function definition using the generic\n+data type in its signature, and shows how we’ll be able to call `largest` with\n+either a slice of `i32` values or `char` values. Note that this code won’t\n+compile yet!\n+\n+A listagem 10-5 mostra a definição da função unificada `maior` usando um tipo \n+genérico de dado na sua assinatura, e mostra quando nós poderemos chamar a \n+função `maior` com ou um corte de valores de `i32` ou de valores `char`. Note \n+que esse código não compilará ainda! \n+\n+<span class=\"filename\">Filename: src/main.rs</span>\n+\n+<span class=\"filename\">Nome do arquivo: src/main.rs</span>\n+\n+```rust,ignore\n+fn largest<T>(list: &[T]) -> T {\n+    let mut largest = list[0];\n+\n+    for &item in list.iter() {\n+        if item > largest {\n+            largest = item;\n+        }\n+    }\n+\n+    largest\n+}\n+\n+fn main() {\n+    let number_list = vec![34, 50, 25, 100, 65];\n+\n+    let result = largest(&number_list);\n+    println!(\"The largest number is {}\", result);\n+\n+    let char_list = vec!['y', 'm', 'a', 'q'];\n+\n+    let result = largest(&char_list);\n+    println!(\"The largest char is {}\", result);\n+}\n+```\n+\n+\n+```rust,ignore\n+fn maior<T>(lista: &[T]) -> T {\n+    let mut maior = lista[0];\n+\n+    for &item in lista.iter() {\n+        if item > maior {\n+            maior = item;\n+        }\n+    }\n+\n+    maior\n+}\n+\n+fn main() {\n+    let lista_numero = vec![34, 50, 25, 100, 65];\n+\n+    let resultado = maior(&lista_numero);\n+    println!(\"The maior number is {}\", resultado);\n+\n+    let lista_char = vec!['y', 'm', 'a', 'q'];\n+\n+    let resultado = maior(&char_lista);\n+    println!(\"O maior char e {}\", resultado);\n+}\n+```\n+\n+<span class=\"caption\">Listing 10-5: A definition of the `largest` function that\n+uses generic type parameters but doesn’t compile yet</span>\n+\n+<span class=\"caption\">Listagem 10-5: Uma definição para a função `maior` que \n+usa um tipo genérico como parâmetro mas não compila ainda</span>\n+\n+If we try to compile this code right now, we’ll get this error:\n+\n+Se nós tentarmos compilar o código agora, nós receberemos esse erro:\n+\n+```text\n+error[E0369]: binary operation `>` cannot be applied to type `T`\n+  |\n+5 |         if item > largest {\n+  |            ^^^^\n+  |\n+note: an implementation of `std::cmp::PartialOrd` might be missing for `T`\n+```\n+\n+```text\n+error[E0369]: binary operation `>` cannot be applied to type `T`\n+  |\n+5 |         if item > maior {\n+  |            ^^^^\n+  |\n+note: an implementation of `std::cmp::PartialOrd` might be missing for `T`\n+```\n+\n+The note mentions `std::cmp::PartialOrd`, which is a *trait*. We’re going to\n+talk about traits in the next section, but briefly, what this error is saying\n+is that the body of `largest` won’t work for all possible types that `T` could\n+be; since we want to compare values of type `T` in the body, we can only use\n+types that know how to be ordered. The standard library has defined the trait\n+`std::cmp::PartialOrd` that types can implement to enable comparisons. We’ll\n+come back to traits and how to specify that a generic type has a particular\n+trait in the next section, but let’s set this example aside for a moment and\n+explore other places we can use generic type parameters first.\n+\n+A nota menciona `std::cmp::PartialOrd`, que é um *trait*. Nós vamos falar sobre\n+trait na próxima sessão, mas de forma breve, o que esse erro está dizendo é que\n+o corpo de `maior` não funcionará para todos os possíveis tipos que `T` poderia\n+ser; já que queremos comparar valores do tipo `T` no corpo, nós podemos apenas\n+usar tipos que sabem como ser ordenados. A biblioteca padrão definiu que o ","path":"src/ch10-01-syntax.md","position":304,"original_position":304,"commit_id":"0232bcc6fee63517a4d34d7964a0a79399996c20","original_commit_id":"0232bcc6fee63517a4d34d7964a0a79399996c20","user":{"login":"leodasvacas","id":9885558,"avatar_url":"https://avatars3.githubusercontent.com/u/9885558?v=4","gravatar_id":"","url":"https://api.github.com/users/leodasvacas","html_url":"https://github.com/leodasvacas","followers_url":"https://api.github.com/users/leodasvacas/followers","following_url":"https://api.github.com/users/leodasvacas/following{/other_user}","gists_url":"https://api.github.com/users/leodasvacas/gists{/gist_id}","starred_url":"https://api.github.com/users/leodasvacas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leodasvacas/subscriptions","organizations_url":"https://api.github.com/users/leodasvacas/orgs","repos_url":"https://api.github.com/users/leodasvacas/repos","events_url":"https://api.github.com/users/leodasvacas/events{/privacy}","received_events_url":"https://api.github.com/users/leodasvacas/received_events","type":"User","site_admin":false},"body":"que o -> o","created_at":"2018-03-14T19:52:46Z","updated_at":"2018-03-14T20:01:51Z","html_url":"https://github.com/rust-br/rust-book-pt-br/pull/60#discussion_r174590090","pull_request_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/60","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/comments/174590090"},"html":{"href":"https://github.com/rust-br/rust-book-pt-br/pull/60#discussion_r174590090"},"pull_request":{"href":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/60"}}},"pull_request":{"url":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/60","id":172609462,"html_url":"https://github.com/rust-br/rust-book-pt-br/pull/60","diff_url":"https://github.com/rust-br/rust-book-pt-br/pull/60.diff","patch_url":"https://github.com/rust-br/rust-book-pt-br/pull/60.patch","issue_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/issues/60","number":60,"state":"open","locked":false,"title":"Tradução do capítulo 10 segunda edição 2ª versão (#16)","user":{"login":"marimeireles","id":17600982,"avatar_url":"https://avatars1.githubusercontent.com/u/17600982?v=4","gravatar_id":"","url":"https://api.github.com/users/marimeireles","html_url":"https://github.com/marimeireles","followers_url":"https://api.github.com/users/marimeireles/followers","following_url":"https://api.github.com/users/marimeireles/following{/other_user}","gists_url":"https://api.github.com/users/marimeireles/gists{/gist_id}","starred_url":"https://api.github.com/users/marimeireles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marimeireles/subscriptions","organizations_url":"https://api.github.com/users/marimeireles/orgs","repos_url":"https://api.github.com/users/marimeireles/repos","events_url":"https://api.github.com/users/marimeireles/events{/privacy}","received_events_url":"https://api.github.com/users/marimeireles/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-03-02T21:30:18Z","updated_at":"2018-03-14T20:01:52Z","closed_at":null,"merged_at":null,"merge_commit_sha":"8ce7b4af3d0aa9b95983ffed2349dced5036a4aa","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/60/commits","review_comments_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/60/comments","review_comment_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/comments{/number}","comments_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/issues/60/comments","statuses_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/statuses/0232bcc6fee63517a4d34d7964a0a79399996c20","head":{"label":"marimeireles:translate/chapter-10","ref":"translate/chapter-10","sha":"0232bcc6fee63517a4d34d7964a0a79399996c20","user":{"login":"marimeireles","id":17600982,"avatar_url":"https://avatars1.githubusercontent.com/u/17600982?v=4","gravatar_id":"","url":"https://api.github.com/users/marimeireles","html_url":"https://github.com/marimeireles","followers_url":"https://api.github.com/users/marimeireles/followers","following_url":"https://api.github.com/users/marimeireles/following{/other_user}","gists_url":"https://api.github.com/users/marimeireles/gists{/gist_id}","starred_url":"https://api.github.com/users/marimeireles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marimeireles/subscriptions","organizations_url":"https://api.github.com/users/marimeireles/orgs","repos_url":"https://api.github.com/users/marimeireles/repos","events_url":"https://api.github.com/users/marimeireles/events{/privacy}","received_events_url":"https://api.github.com/users/marimeireles/received_events","type":"User","site_admin":false},"repo":{"id":114181130,"name":"rust-book-pt-br","full_name":"marimeireles/rust-book-pt-br","owner":{"login":"marimeireles","id":17600982,"avatar_url":"https://avatars1.githubusercontent.com/u/17600982?v=4","gravatar_id":"","url":"https://api.github.com/users/marimeireles","html_url":"https://github.com/marimeireles","followers_url":"https://api.github.com/users/marimeireles/followers","following_url":"https://api.github.com/users/marimeireles/following{/other_user}","gists_url":"https://api.github.com/users/marimeireles/gists{/gist_id}","starred_url":"https://api.github.com/users/marimeireles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marimeireles/subscriptions","organizations_url":"https://api.github.com/users/marimeireles/orgs","repos_url":"https://api.github.com/users/marimeireles/repos","events_url":"https://api.github.com/users/marimeireles/events{/privacy}","received_events_url":"https://api.github.com/users/marimeireles/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/marimeireles/rust-book-pt-br","description":"A Linguagem de Programação Rust","fork":true,"url":"https://api.github.com/repos/marimeireles/rust-book-pt-br","forks_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/forks","keys_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/keys{/key_id}","collaborators_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/teams","hooks_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/hooks","issue_events_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/issues/events{/number}","events_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/events","assignees_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/assignees{/user}","branches_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/branches{/branch}","tags_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/tags","blobs_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/git/refs{/sha}","trees_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/git/trees{/sha}","statuses_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/statuses/{sha}","languages_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/languages","stargazers_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/stargazers","contributors_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/contributors","subscribers_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/subscribers","subscription_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/subscription","commits_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/commits{/sha}","git_commits_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/git/commits{/sha}","comments_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/comments{/number}","issue_comment_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/issues/comments{/number}","contents_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/contents/{+path}","compare_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/compare/{base}...{head}","merges_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/merges","archive_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/downloads","issues_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/issues{/number}","pulls_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/pulls{/number}","milestones_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/milestones{/number}","notifications_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/labels{/name}","releases_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/releases{/id}","deployments_url":"https://api.github.com/repos/marimeireles/rust-book-pt-br/deployments","created_at":"2017-12-13T23:56:33Z","updated_at":"2017-12-13T23:56:36Z","pushed_at":"2018-03-12T00:23:47Z","git_url":"git://github.com/marimeireles/rust-book-pt-br.git","ssh_url":"git@github.com:marimeireles/rust-book-pt-br.git","clone_url":"https://github.com/marimeireles/rust-book-pt-br.git","svn_url":"https://github.com/marimeireles/rust-book-pt-br","homepage":"https://rust-br.github.io/rust-book-pt-br/","size":25559,"stargazers_count":0,"watchers_count":0,"language":"Rust","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"rust-br:master","ref":"master","sha":"64182037205482f05c292e8b473e6dc346c3d297","user":{"login":"rust-br","id":30448826,"avatar_url":"https://avatars3.githubusercontent.com/u/30448826?v=4","gravatar_id":"","url":"https://api.github.com/users/rust-br","html_url":"https://github.com/rust-br","followers_url":"https://api.github.com/users/rust-br/followers","following_url":"https://api.github.com/users/rust-br/following{/other_user}","gists_url":"https://api.github.com/users/rust-br/gists{/gist_id}","starred_url":"https://api.github.com/users/rust-br/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rust-br/subscriptions","organizations_url":"https://api.github.com/users/rust-br/orgs","repos_url":"https://api.github.com/users/rust-br/repos","events_url":"https://api.github.com/users/rust-br/events{/privacy}","received_events_url":"https://api.github.com/users/rust-br/received_events","type":"Organization","site_admin":false},"repo":{"id":99678900,"name":"rust-book-pt-br","full_name":"rust-br/rust-book-pt-br","owner":{"login":"rust-br","id":30448826,"avatar_url":"https://avatars3.githubusercontent.com/u/30448826?v=4","gravatar_id":"","url":"https://api.github.com/users/rust-br","html_url":"https://github.com/rust-br","followers_url":"https://api.github.com/users/rust-br/followers","following_url":"https://api.github.com/users/rust-br/following{/other_user}","gists_url":"https://api.github.com/users/rust-br/gists{/gist_id}","starred_url":"https://api.github.com/users/rust-br/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rust-br/subscriptions","organizations_url":"https://api.github.com/users/rust-br/orgs","repos_url":"https://api.github.com/users/rust-br/repos","events_url":"https://api.github.com/users/rust-br/events{/privacy}","received_events_url":"https://api.github.com/users/rust-br/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/rust-br/rust-book-pt-br","description":"A Linguagem de Programação Rust","fork":true,"url":"https://api.github.com/repos/rust-br/rust-book-pt-br","forks_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/forks","keys_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/teams","hooks_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/hooks","issue_events_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/issues/events{/number}","events_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/events","assignees_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/assignees{/user}","branches_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/branches{/branch}","tags_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/tags","blobs_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/git/refs{/sha}","trees_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/statuses/{sha}","languages_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/languages","stargazers_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/stargazers","contributors_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/contributors","subscribers_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/subscribers","subscription_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/subscription","commits_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/commits{/sha}","git_commits_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/git/commits{/sha}","comments_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/comments{/number}","issue_comment_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/issues/comments{/number}","contents_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/contents/{+path}","compare_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/merges","archive_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/downloads","issues_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/issues{/number}","pulls_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls{/number}","milestones_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/milestones{/number}","notifications_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/labels{/name}","releases_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/releases{/id}","deployments_url":"https://api.github.com/repos/rust-br/rust-book-pt-br/deployments","created_at":"2017-08-08T10:06:37Z","updated_at":"2018-03-09T14:55:37Z","pushed_at":"2018-03-12T00:23:50Z","git_url":"git://github.com/rust-br/rust-book-pt-br.git","ssh_url":"git@github.com:rust-br/rust-book-pt-br.git","clone_url":"https://github.com/rust-br/rust-book-pt-br.git","svn_url":"https://github.com/rust-br/rust-book-pt-br","homepage":"https://rust-br.github.io/rust-book-pt-br/","size":18260,"stargazers_count":32,"watchers_count":32,"language":"Rust","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":17,"mirror_url":null,"archived":false,"open_issues_count":33,"license":null,"forks":17,"open_issues":33,"watchers":32,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/60"},"html":{"href":"https://github.com/rust-br/rust-book-pt-br/pull/60"},"issue":{"href":"https://api.github.com/repos/rust-br/rust-book-pt-br/issues/60"},"comments":{"href":"https://api.github.com/repos/rust-br/rust-book-pt-br/issues/60/comments"},"review_comments":{"href":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/60/comments"},"review_comment":{"href":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/rust-br/rust-book-pt-br/pulls/60/commits"},"statuses":{"href":"https://api.github.com/repos/rust-br/rust-book-pt-br/statuses/0232bcc6fee63517a4d34d7964a0a79399996c20"}},"author_association":"NONE"}}
{"actor":{"display_login":"leodasvacas"}}