extreml 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. checksums.yaml +4 -4
  2. metadata +4 -99
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2176ef101bb8536701a8e2c98d674fc57ebb014cdc22dda621ede9cbbc896605
4
- data.tar.gz: f282d659eb2c3a53235e856c4ca1675d02a4d2c442bc94a86a43792f3a56f830
3
+ metadata.gz: fdf78f69900728ade56258357b59d0c265e3899cd75d815583013b6358eac773
4
+ data.tar.gz: 21efcdaeb00a7779b87fb7b6583f4d5c887b2c84cd4bc2139c7100cad0906062
5
5
  SHA512:
6
- metadata.gz: d709f51ba09daf3e226cacd62cb4283da4153f748b7a18e28a2af57d65ed8455eb60b1a77daf7b3c7f5e4ea4af3568f504cb3bfa4ccdcff1ec31f019e18461e2
7
- data.tar.gz: d8264e22eb185f33ceb7ae8d294dcaf6cee6c1207e7608feb1d29dd5a52821aec2042a7d5235923020cb9d0470a4aa35bd5b0a11ea6508bc1aa213d7bb2bd9c4
6
+ metadata.gz: 90e4897a9ff69e52450e55d00ed6b5938ccc4a045358e40c485d23f8f0b357d20bba9ce21058760b82005f9ae9a283d6fb721c08c264bd13f31b1d14eb37d2ed
7
+ data.tar.gz: 9b1ace372adfe41199c644762fed6dc736c040116038d177fad79322ca46f4411280e8023f4ade3c874fc478bd5ac9c7f5073d023ce08c11487d764249442f29
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: extreml
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fabio Boccacini
@@ -10,104 +10,9 @@ bindir: bin
10
10
  cert_chain: []
11
11
  date: 2020-05-09 00:00:00.000000000 Z
12
12
  dependencies: []
13
- description: |
14
- # Extreml
15
- ### Ruby XML manipulation gem
16
-
17
- A powerful ruby gem to easily manipulate XML documents, that gives acces to the elements through dynamic methods.
18
-
19
- This library contains another class, TypeElement, which exposes dynamic methods named after its nested tags.
20
-
21
- The document method in of Extreml returns aTypeElement object with a method named after the root tag which returns the first level of nesting represented as TypeElement objects.
22
-
23
- Any subsequent object has methods that reflect its structure, that return recursively an object that has the nested elements as methods.
24
-
25
- If there are more than one element with the same tag, that method will return an array containing all subsequent objects.
26
-
27
- All basic methods of TypeElement have aliases, in order to prevent method overriding in case the document contains tags with similar names, which are called with two leading underscores (es. __types).
28
-
29
-
30
- Usage:
31
- ------
32
-
33
- ### Basic methods:
34
-
35
-
36
-
37
- **Extreml:**
38
-
39
- document: returns the representation of the entire document as a TypeElement object.
40
-
41
- tree: prints the entire structure of the document for debugging purposes.
42
-
43
-
44
-
45
- **TypeElement:**
46
-
47
- name: returns the name of the element (= tag name).
48
-
49
- namespace: returns the namespace of the tag.
50
-
51
- attributes: returns an hash with the property names as key and the values as value.
52
-
53
- types: returns an array containing the names of the dynamic methods referring to the nested elements.
54
-
55
- to_s: returns the content (overrides
56
- tree: prints the structure referred part of the document for debugging purposes.
57
-
58
- All these methods have aliases (eg. __name, __namespace, etc.)
59
-
60
-
61
-
62
- **File example:**
63
- funny_people.xml
64
-
65
- <?xml version="1.0" encoding="UTF-8"?>
66
- <ns0:funnyPeople>
67
- <ns1:businessCard>
68
- <name>
69
- <firstName>Guybrush</firstName>
70
- <lastName>Threepwood</lastName>
71
- </name>
72
- <jobs:occupation name="pirate" description="Terror of threeheaded monkeys"/>
73
- <address>
74
- <island>Scabb Island</island>
75
- <city>Pirate's city</city>
76
- <street>Voodoo Blvd.</street>
77
- <number>3</number>
78
- </address>
79
- </ns1:businessCard>
80
- <ns1:businessCard>
81
- <name>
82
- <firstName>Senbei</firstName>
83
- <lastName>Norimaki</lastName>
84
- </name>
85
- <jobs:occupation name="inventor" description="A great genius"/>
86
- <address>
87
- <city>Penguin Village</city>
88
- <street>Tanuki doro</street>
89
- <number>1</number>
90
- </address>
91
- </ns1:businessCard>
92
- <types>
93
- <type name="main character"/>
94
- <type name="villain"/>
95
- <otherTypes/>
96
- </types>
97
- </ns0:funnyPeople>
98
-
99
- ## Code example:
100
-
101
- xml = Extreml.new './funny_people.xml'
102
-
103
- xml.header.version # => "1.0"
104
- xml.header.encoding # => "UTF-8"
105
-
106
- xml.document.funnyPeople.businessCard[0].name.firstName.to_s # => Guybrush
107
- xml.document.funnyPeople.businessCard[0].__name # => "businessCard"
108
-
109
- xml.document.funnyPeople.types # => #<TypeElement:0x0000557373082fc8>
110
- xml.document.funnyPeople.__types # => [:businessCard, :types]
13
+ description: |-
14
+ This gem allows to read an XML file and access its elements using methods named after the tags./
15
+ See <a href="https://github.com/fboccacini/extreml">https://github.com/fboccacini/extreml</a> for reference and usage.
111
16
  email: fboccacini@gmail.com
112
17
  executables: []
113
18
  extensions: []