activegraph
https://github.com/neo4jrb/activegraph
Ruby
An active model wrapper for the Neo4j Graph Database for Ruby.
Neo4j::Shared::DeclaredProperties#string_key
but when this happens many times while loading many objects, it results in a surprisingly significant slowdown. The branching logic handles what happens if a property can't be found. The first option attempts to find it in the existing hash. The second option checks whether the key is the class's id property and, if it is, the string hash is rebuilt with it to prevent future lookups. The third calls `to_s`. This would happen if undeclared properties are found on the object. We could add them to the string map but that would result in unchecked, un-GCed memory consumption. In the event that someone is adding properties dynamically, maybe through user input, this would be bad.
Edit
git clone [email protected]:neo4jrb/activegraph.git
cd activegraph
open
Contribute
# Make a new branchgit checkout -b -your-name--update-docs-Neo4j--Shared--DeclaredProperties-string_key-for-pr
# Commit to gitgit add git commit -m "better docs for Neo4j::Shared::DeclaredProperties#string_key"
# Open pull requestgem install hub # on a mac you can `brew install hub`
hub fork
git push <your name> -your-name--update-docs-Neo4j--Shared--DeclaredProperties-string_key-for-pr
hub pull-request
# Celebrate!