Comments (3)
Just include the code instead of the textfile if it isn't too long.
# This file is a part of TypeDBClient. License is MIT: https://github.com/Humans-of-Julia/TypeDBClient.jl/blob/main/LICENSE
struct AttributeType{V} <: AbstractAttributeType
label::Label
is_root::Bool
end
# More convenient for reference
const VALUE_TYPE = Proto.AttributeType_ValueType
# Encode the value type (as defined in VALUE_TYPE) in the type parameter
function AttributeType(label::Label, is_root::Bool, value_type::EnumType)
AttributeType{value_type}(label, is_root)
end
# Define conversion functions
let
function _as_something(value_type::EnumType)
return function(t::AttributeType{V}) where {V}
t.is_root || throw(TypeDBClientException(INVALID_CONCEPT_CASTING, V))
return AttributeType(Label("attribute"), true, value_type)
end
end
global as_boolean = _as_something(VALUE_TYPE.BOOLEAN)
global as_long = _as_something(VALUE_TYPE.LONG)
global as_double = _as_something(VALUE_TYPE.DOUBLE)
global as_string = _as_something(VALUE_TYPE.STRING)
global as_date_time = _as_something(VALUE_TYPE.DATETIME)
end
proto(::AttributeType{V}) where {V} = V
# TODO What is Object value type in Java? It needs to return `false` for that.
is_writable(::AttributeType) = true
is_writable(::AttributeType{VALUE_TYPE.OBJECT}) = false
is_keyable(::AttributeType) = false
is_keyable(::AttributeType{VALUE_TYPE.LONG}) = true
from typedbclient.jl.
OK to keep that change. Thanks
from typedbclient.jl.
Ok. I will merge this with the next merge to main.
from typedbclient.jl.
Related Issues (20)
- TagBot trigger issue HOT 2
- Let me join to your organization! HOT 2
- Project status HOT 9
- Stable connection to server for longer times during work with session
- BDD development mega issue HOT 3
- BDD: Implement "background" code
- BDD: Implement "context" code
- BDD: Implement common parsing functions
- BDD: Implement concept steps HOT 1
- BDD: Implement connection steps HOT 1
- BDD: Implement graql steps
- BDD: Configure CI to run BDD tests HOT 4
- Script prepare the translation from the java client to Julia HOT 4
- Implement session HOT 1
- Implement transaction
- Implement concepts
- BDD example implementation HOT 3
- Implement QueryManager HOT 1
- open transactions in parallel should result in transactions in a row
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from typedbclient.jl.