bel_parser 1.0.0.alpha.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 (182) hide show
  1. checksums.yaml +7 -0
  2. data/.gemspec +28 -0
  3. data/CHANGELOG.md +10 -0
  4. data/LICENSE +191 -0
  5. data/README.md +9 -0
  6. data/VERSION +1 -0
  7. data/bin/bel2_termcheck +39 -0
  8. data/lib/bel_parser.rb +17 -0
  9. data/lib/bel_parser/ast_filter.rb +27 -0
  10. data/lib/bel_parser/ast_generator.rb +86 -0
  11. data/lib/bel_parser/ast_validator.rb +40 -0
  12. data/lib/bel_parser/expression/parser.rb +42 -0
  13. data/lib/bel_parser/expression/term_semantics.rb +36 -0
  14. data/lib/bel_parser/language.rb +7 -0
  15. data/lib/bel_parser/language/function.rb +59 -0
  16. data/lib/bel_parser/language/quoting.rb +236 -0
  17. data/lib/bel_parser/language/semantic_ast.rb +604 -0
  18. data/lib/bel_parser/language/semantics/analyzer.rb +59 -0
  19. data/lib/bel_parser/language/signature.rb +39 -0
  20. data/lib/bel_parser/language/specification.rb +49 -0
  21. data/lib/bel_parser/language/syntax/expression/incomplete_node.rb +14 -0
  22. data/lib/bel_parser/language/syntax/expression/invalid_term_function.rb +22 -0
  23. data/lib/bel_parser/language/version1.rb +50 -0
  24. data/lib/bel_parser/language/version1/functions/abundance.rb +85 -0
  25. data/lib/bel_parser/language/version1/functions/biological_process.rb +85 -0
  26. data/lib/bel_parser/language/version1/functions/catalytic_activity.rb +110 -0
  27. data/lib/bel_parser/language/version1/functions/cell_secretion.rb +80 -0
  28. data/lib/bel_parser/language/version1/functions/cell_surface_expression.rb +80 -0
  29. data/lib/bel_parser/language/version1/functions/chaperone_activity.rb +110 -0
  30. data/lib/bel_parser/language/version1/functions/complex_abundance.rb +115 -0
  31. data/lib/bel_parser/language/version1/functions/composite_abundance.rb +80 -0
  32. data/lib/bel_parser/language/version1/functions/degradation.rb +80 -0
  33. data/lib/bel_parser/language/version1/functions/fusion.rb +302 -0
  34. data/lib/bel_parser/language/version1/functions/gene_abundance.rb +125 -0
  35. data/lib/bel_parser/language/version1/functions/gtp_bound_activity.rb +110 -0
  36. data/lib/bel_parser/language/version1/functions/kinase_activity.rb +110 -0
  37. data/lib/bel_parser/language/version1/functions/list.rb +115 -0
  38. data/lib/bel_parser/language/version1/functions/micro_rna_abundance.rb +85 -0
  39. data/lib/bel_parser/language/version1/functions/molecular_activity.rb +80 -0
  40. data/lib/bel_parser/language/version1/functions/pathology.rb +85 -0
  41. data/lib/bel_parser/language/version1/functions/peptidase_activity.rb +110 -0
  42. data/lib/bel_parser/language/version1/functions/phosphatase_activity.rb +110 -0
  43. data/lib/bel_parser/language/version1/functions/products.rb +80 -0
  44. data/lib/bel_parser/language/version1/functions/protein_abundance.rb +245 -0
  45. data/lib/bel_parser/language/version1/functions/protein_modification.rb +167 -0
  46. data/lib/bel_parser/language/version1/functions/reactants.rb +80 -0
  47. data/lib/bel_parser/language/version1/functions/reaction.rb +85 -0
  48. data/lib/bel_parser/language/version1/functions/ribosylation_activity.rb +110 -0
  49. data/lib/bel_parser/language/version1/functions/rna_abundance.rb +125 -0
  50. data/lib/bel_parser/language/version1/functions/substitution.rb +96 -0
  51. data/lib/bel_parser/language/version1/functions/transcriptional_activity.rb +110 -0
  52. data/lib/bel_parser/language/version1/functions/translocation.rb +100 -0
  53. data/lib/bel_parser/language/version1/functions/transport_activity.rb +110 -0
  54. data/lib/bel_parser/language/version1/functions/truncation.rb +82 -0
  55. data/lib/bel_parser/language/version1/return_types/abundance.rb +20 -0
  56. data/lib/bel_parser/language/version1/return_types/any.rb +74 -0
  57. data/lib/bel_parser/language/version1/return_types/biological_process.rb +17 -0
  58. data/lib/bel_parser/language/version1/return_types/catalytic_activity.rb +20 -0
  59. data/lib/bel_parser/language/version1/return_types/chaperone_activity.rb +20 -0
  60. data/lib/bel_parser/language/version1/return_types/complex_abundance.rb +17 -0
  61. data/lib/bel_parser/language/version1/return_types/fusion.rb +17 -0
  62. data/lib/bel_parser/language/version1/return_types/gene_abundance.rb +17 -0
  63. data/lib/bel_parser/language/version1/return_types/gtp_bound_activity.rb +20 -0
  64. data/lib/bel_parser/language/version1/return_types/kinase_activity.rb +20 -0
  65. data/lib/bel_parser/language/version1/return_types/list.rb +17 -0
  66. data/lib/bel_parser/language/version1/return_types/micro_rna_abundance.rb +17 -0
  67. data/lib/bel_parser/language/version1/return_types/molecular_activity.rb +20 -0
  68. data/lib/bel_parser/language/version1/return_types/pathology.rb +17 -0
  69. data/lib/bel_parser/language/version1/return_types/peptidase_activity.rb +20 -0
  70. data/lib/bel_parser/language/version1/return_types/phosphatase_activity.rb +20 -0
  71. data/lib/bel_parser/language/version1/return_types/products.rb +17 -0
  72. data/lib/bel_parser/language/version1/return_types/protein_abundance.rb +17 -0
  73. data/lib/bel_parser/language/version1/return_types/protein_modification.rb +17 -0
  74. data/lib/bel_parser/language/version1/return_types/reactants.rb +17 -0
  75. data/lib/bel_parser/language/version1/return_types/ribosylation_activity.rb +20 -0
  76. data/lib/bel_parser/language/version1/return_types/rna_abundance.rb +17 -0
  77. data/lib/bel_parser/language/version1/return_types/substitution.rb +17 -0
  78. data/lib/bel_parser/language/version1/return_types/transcriptional_activity.rb +20 -0
  79. data/lib/bel_parser/language/version1/return_types/transport_activity.rb +20 -0
  80. data/lib/bel_parser/language/version1/return_types/truncation.rb +17 -0
  81. data/lib/bel_parser/language/version2.rb +50 -0
  82. data/lib/bel_parser/language/version2/functions/abundance.rb +165 -0
  83. data/lib/bel_parser/language/version2/functions/activity.rb +115 -0
  84. data/lib/bel_parser/language/version2/functions/biological_process.rb +85 -0
  85. data/lib/bel_parser/language/version2/functions/cell_secretion.rb +80 -0
  86. data/lib/bel_parser/language/version2/functions/cell_surface_expression.rb +80 -0
  87. data/lib/bel_parser/language/version2/functions/complex_abundance.rb +190 -0
  88. data/lib/bel_parser/language/version2/functions/composite_abundance.rb +80 -0
  89. data/lib/bel_parser/language/version2/functions/degradation.rb +80 -0
  90. data/lib/bel_parser/language/version2/functions/fragment.rb +119 -0
  91. data/lib/bel_parser/language/version2/functions/from_location.rb +85 -0
  92. data/lib/bel_parser/language/version2/functions/fusion.rb +227 -0
  93. data/lib/bel_parser/language/version2/functions/gene_abundance.rb +195 -0
  94. data/lib/bel_parser/language/version2/functions/list.rb +115 -0
  95. data/lib/bel_parser/language/version2/functions/location.rb +85 -0
  96. data/lib/bel_parser/language/version2/functions/micro_rna_abundance.rb +165 -0
  97. data/lib/bel_parser/language/version2/functions/molecular_activity.rb +83 -0
  98. data/lib/bel_parser/language/version2/functions/pathology.rb +85 -0
  99. data/lib/bel_parser/language/version2/functions/products.rb +80 -0
  100. data/lib/bel_parser/language/version2/functions/protein_abundance.rb +285 -0
  101. data/lib/bel_parser/language/version2/functions/protein_modification.rb +167 -0
  102. data/lib/bel_parser/language/version2/functions/reactants.rb +80 -0
  103. data/lib/bel_parser/language/version2/functions/reaction.rb +85 -0
  104. data/lib/bel_parser/language/version2/functions/rna_abundance.rb +195 -0
  105. data/lib/bel_parser/language/version2/functions/to_location.rb +85 -0
  106. data/lib/bel_parser/language/version2/functions/translocation.rb +90 -0
  107. data/lib/bel_parser/language/version2/functions/variant.rb +83 -0
  108. data/lib/bel_parser/language/version2/return_types/abundance.rb +20 -0
  109. data/lib/bel_parser/language/version2/return_types/activity.rb +20 -0
  110. data/lib/bel_parser/language/version2/return_types/any.rb +74 -0
  111. data/lib/bel_parser/language/version2/return_types/biological_process.rb +17 -0
  112. data/lib/bel_parser/language/version2/return_types/complex_abundance.rb +17 -0
  113. data/lib/bel_parser/language/version2/return_types/fragment.rb +20 -0
  114. data/lib/bel_parser/language/version2/return_types/from_location.rb +20 -0
  115. data/lib/bel_parser/language/version2/return_types/fusion.rb +17 -0
  116. data/lib/bel_parser/language/version2/return_types/gene_abundance.rb +17 -0
  117. data/lib/bel_parser/language/version2/return_types/list.rb +17 -0
  118. data/lib/bel_parser/language/version2/return_types/location.rb +20 -0
  119. data/lib/bel_parser/language/version2/return_types/micro_rna_abundance.rb +17 -0
  120. data/lib/bel_parser/language/version2/return_types/molecular_activity.rb +20 -0
  121. data/lib/bel_parser/language/version2/return_types/pathology.rb +17 -0
  122. data/lib/bel_parser/language/version2/return_types/products.rb +17 -0
  123. data/lib/bel_parser/language/version2/return_types/protein_abundance.rb +17 -0
  124. data/lib/bel_parser/language/version2/return_types/protein_modification.rb +17 -0
  125. data/lib/bel_parser/language/version2/return_types/reactants.rb +17 -0
  126. data/lib/bel_parser/language/version2/return_types/rna_abundance.rb +17 -0
  127. data/lib/bel_parser/language/version2/return_types/to_location.rb +20 -0
  128. data/lib/bel_parser/language/version2/return_types/variant.rb +20 -0
  129. data/lib/bel_parser/mixin/line_continuator.rb +15 -0
  130. data/lib/bel_parser/mixin/line_mapping.rb +14 -0
  131. data/lib/bel_parser/parser.rb +54 -0
  132. data/lib/bel_parser/parsers/ast/mapped_traversal.rb +36 -0
  133. data/lib/bel_parser/parsers/ast/node.rb +705 -0
  134. data/lib/bel_parser/parsers/ast/sexp.rb +8 -0
  135. data/lib/bel_parser/parsers/ast/traversal.rb +21 -0
  136. data/lib/bel_parser/parsers/bel_script.rb +4 -0
  137. data/lib/bel_parser/parsers/bel_script/define_annotation.rb +5476 -0
  138. data/lib/bel_parser/parsers/bel_script/define_annotation.rl +141 -0
  139. data/lib/bel_parser/parsers/bel_script/define_namespace.rb +1780 -0
  140. data/lib/bel_parser/parsers/bel_script/define_namespace.rl +121 -0
  141. data/lib/bel_parser/parsers/bel_script/set.rb +4556 -0
  142. data/lib/bel_parser/parsers/bel_script/set.rl +116 -0
  143. data/lib/bel_parser/parsers/bel_script/unset.rb +706 -0
  144. data/lib/bel_parser/parsers/bel_script/unset.rl +95 -0
  145. data/lib/bel_parser/parsers/common.rb +5 -0
  146. data/lib/bel_parser/parsers/common/blank_line.rb +211 -0
  147. data/lib/bel_parser/parsers/common/blank_line.rl +81 -0
  148. data/lib/bel_parser/parsers/common/comment_line.rb +245 -0
  149. data/lib/bel_parser/parsers/common/comment_line.rl +97 -0
  150. data/lib/bel_parser/parsers/common/common.rb +7 -0
  151. data/lib/bel_parser/parsers/common/common.rl +13 -0
  152. data/lib/bel_parser/parsers/common/identifier.rb +289 -0
  153. data/lib/bel_parser/parsers/common/identifier.rl +106 -0
  154. data/lib/bel_parser/parsers/common/list.rb +2142 -0
  155. data/lib/bel_parser/parsers/common/list.rl +144 -0
  156. data/lib/bel_parser/parsers/common/string.rb +271 -0
  157. data/lib/bel_parser/parsers/common/string.rl +107 -0
  158. data/lib/bel_parser/parsers/expression.rb +7 -0
  159. data/lib/bel_parser/parsers/expression/comment.rb +239 -0
  160. data/lib/bel_parser/parsers/expression/comment.rl +97 -0
  161. data/lib/bel_parser/parsers/expression/parameter.rb +1506 -0
  162. data/lib/bel_parser/parsers/expression/parameter.rl +97 -0
  163. data/lib/bel_parser/parsers/expression/relationship.rb +254 -0
  164. data/lib/bel_parser/parsers/expression/relationship.rl +98 -0
  165. data/lib/bel_parser/parsers/expression/statement_nested.rb +17802 -0
  166. data/lib/bel_parser/parsers/expression/statement_nested.rl +141 -0
  167. data/lib/bel_parser/parsers/expression/statement_observed_term.rb +7291 -0
  168. data/lib/bel_parser/parsers/expression/statement_observed_term.rl +92 -0
  169. data/lib/bel_parser/parsers/expression/statement_simple.rb +10475 -0
  170. data/lib/bel_parser/parsers/expression/statement_simple.rl +112 -0
  171. data/lib/bel_parser/parsers/expression/term.rb +3989 -0
  172. data/lib/bel_parser/parsers/expression/term.rl +157 -0
  173. data/lib/bel_parser/parsers/line_parser.rb +92 -0
  174. data/lib/bel_parser/parsers/mixin/buffer.rb +10 -0
  175. data/lib/bel_parser/parsers/nonblocking_io_wrapper.rb +50 -0
  176. data/lib/bel_parser/script/parser.rb +49 -0
  177. data/lib/bel_parser/vendor/ast.rb +17 -0
  178. data/lib/bel_parser/vendor/ast/node.rb +254 -0
  179. data/lib/bel_parser/vendor/ast/processor.rb +12 -0
  180. data/lib/bel_parser/vendor/ast/processor/mixin.rb +282 -0
  181. data/lib/bel_parser/vendor/ast/sexp.rb +30 -0
  182. metadata +226 -0
@@ -0,0 +1,110 @@
1
+ require_relative '../../version1'
2
+ require_relative '../../function'
3
+ require_relative '../../signature'
4
+ require_relative '../../semantic_ast'
5
+
6
+ module BELParser
7
+ module Language
8
+ module Version1
9
+ module Functions
10
+ # GTPBoundActivity: Denotes the frequency or abundance of events in which a member of a G-protein abundance is GTP-bound
11
+ class GTPBoundActivity
12
+ extend Function
13
+
14
+ SHORT = :gtp
15
+ LONG = :gtpBoundActivity
16
+ RETURN_TYPE = BELParser::Language::Version1::ReturnTypes::GTPBoundActivity
17
+ DESCRIPTION = 'Denotes the frequency or abundance of events in which a member of a G-protein abundance is GTP-bound'.freeze
18
+
19
+ def self.short
20
+ SHORT
21
+ end
22
+
23
+ def self.long
24
+ LONG
25
+ end
26
+
27
+ def self.return_type
28
+ RETURN_TYPE
29
+ end
30
+
31
+ def self.description
32
+ DESCRIPTION
33
+ end
34
+
35
+ def self.signatures
36
+ SIGNATURES
37
+ end
38
+
39
+ module Signatures
40
+
41
+ class GTPBoundActivityOfComplexAbundanceSignature
42
+ extend BELParser::Language::Signature
43
+
44
+ private_class_method :new
45
+
46
+ AST = BELParser::Language::Semantics::Builder.build do
47
+ term(
48
+ function(
49
+ identifier(
50
+ function_of(GTPBoundActivity))),
51
+ argument(
52
+ term(
53
+ function(
54
+ identifier(
55
+ return_type_of(BELParser::Language::Version1::ReturnTypes::ComplexAbundance))))))
56
+ end
57
+ private_constant :AST
58
+
59
+ STRING_FORM = 'gtpBoundActivity(F:complexAbundance)gtpBoundActivity'.freeze
60
+ private_constant :STRING_FORM
61
+
62
+ def self.semantic_ast
63
+ AST
64
+ end
65
+
66
+ def self.string_form
67
+ STRING_FORM
68
+ end
69
+ end
70
+
71
+ class GTPBoundActivityOfProteinAbundanceSignature
72
+ extend BELParser::Language::Signature
73
+
74
+ private_class_method :new
75
+
76
+ AST = BELParser::Language::Semantics::Builder.build do
77
+ term(
78
+ function(
79
+ identifier(
80
+ function_of(GTPBoundActivity))),
81
+ argument(
82
+ term(
83
+ function(
84
+ identifier(
85
+ return_type_of(BELParser::Language::Version1::ReturnTypes::ProteinAbundance))))))
86
+ end
87
+ private_constant :AST
88
+
89
+ STRING_FORM = 'gtpBoundActivity(F:proteinAbundance)gtpBoundActivity'.freeze
90
+ private_constant :STRING_FORM
91
+
92
+ def self.semantic_ast
93
+ AST
94
+ end
95
+
96
+ def self.string_form
97
+ STRING_FORM
98
+ end
99
+ end
100
+
101
+ end
102
+
103
+ SIGNATURES = Signatures.constants.map do |const|
104
+ Signatures.const_get(const)
105
+ end.freeze
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
@@ -0,0 +1,110 @@
1
+ require_relative '../../version1'
2
+ require_relative '../../function'
3
+ require_relative '../../signature'
4
+ require_relative '../../semantic_ast'
5
+
6
+ module BELParser
7
+ module Language
8
+ module Version1
9
+ module Functions
10
+ # KinaseActivity: Denotes the frequency or abundance of events in which a member acts as a kinase, performing enzymatic phosphorylation of a substrate
11
+ class KinaseActivity
12
+ extend Function
13
+
14
+ SHORT = :kin
15
+ LONG = :kinaseActivity
16
+ RETURN_TYPE = BELParser::Language::Version1::ReturnTypes::KinaseActivity
17
+ DESCRIPTION = 'Denotes the frequency or abundance of events in which a member acts as a kinase, performing enzymatic phosphorylation of a substrate'.freeze
18
+
19
+ def self.short
20
+ SHORT
21
+ end
22
+
23
+ def self.long
24
+ LONG
25
+ end
26
+
27
+ def self.return_type
28
+ RETURN_TYPE
29
+ end
30
+
31
+ def self.description
32
+ DESCRIPTION
33
+ end
34
+
35
+ def self.signatures
36
+ SIGNATURES
37
+ end
38
+
39
+ module Signatures
40
+
41
+ class KinaseActivityOfComplexAbundanceSignature
42
+ extend BELParser::Language::Signature
43
+
44
+ private_class_method :new
45
+
46
+ AST = BELParser::Language::Semantics::Builder.build do
47
+ term(
48
+ function(
49
+ identifier(
50
+ function_of(KinaseActivity))),
51
+ argument(
52
+ term(
53
+ function(
54
+ identifier(
55
+ return_type_of(BELParser::Language::Version1::ReturnTypes::ComplexAbundance))))))
56
+ end
57
+ private_constant :AST
58
+
59
+ STRING_FORM = 'kinaseActivity(F:complexAbundance)kinaseActivity'.freeze
60
+ private_constant :STRING_FORM
61
+
62
+ def self.semantic_ast
63
+ AST
64
+ end
65
+
66
+ def self.string_form
67
+ STRING_FORM
68
+ end
69
+ end
70
+
71
+ class KinaseActivityOfProteinAbundanceSignature
72
+ extend BELParser::Language::Signature
73
+
74
+ private_class_method :new
75
+
76
+ AST = BELParser::Language::Semantics::Builder.build do
77
+ term(
78
+ function(
79
+ identifier(
80
+ function_of(KinaseActivity))),
81
+ argument(
82
+ term(
83
+ function(
84
+ identifier(
85
+ return_type_of(BELParser::Language::Version1::ReturnTypes::ProteinAbundance))))))
86
+ end
87
+ private_constant :AST
88
+
89
+ STRING_FORM = 'kinaseActivity(F:proteinAbundance)kinaseActivity'.freeze
90
+ private_constant :STRING_FORM
91
+
92
+ def self.semantic_ast
93
+ AST
94
+ end
95
+
96
+ def self.string_form
97
+ STRING_FORM
98
+ end
99
+ end
100
+
101
+ end
102
+
103
+ SIGNATURES = Signatures.constants.map do |const|
104
+ Signatures.const_get(const)
105
+ end.freeze
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
@@ -0,0 +1,115 @@
1
+ require_relative '../../version1'
2
+ require_relative '../../function'
3
+ require_relative '../../signature'
4
+ require_relative '../../semantic_ast'
5
+
6
+ module BELParser
7
+ module Language
8
+ module Version1
9
+ module Functions
10
+ # List: Groups a list of terms together
11
+ class List
12
+ extend Function
13
+
14
+ SHORT = :list
15
+ LONG = :list
16
+ RETURN_TYPE = BELParser::Language::Version1::ReturnTypes::List
17
+ DESCRIPTION = 'Groups a list of terms together'.freeze
18
+
19
+ def self.short
20
+ SHORT
21
+ end
22
+
23
+ def self.long
24
+ LONG
25
+ end
26
+
27
+ def self.return_type
28
+ RETURN_TYPE
29
+ end
30
+
31
+ def self.description
32
+ DESCRIPTION
33
+ end
34
+
35
+ def self.signatures
36
+ SIGNATURES
37
+ end
38
+
39
+ module Signatures
40
+
41
+ class ListOfAbundanceEncodingSignature
42
+ extend BELParser::Language::Signature
43
+
44
+ private_class_method :new
45
+
46
+ AST = BELParser::Language::Semantics::Builder.build do
47
+ term(
48
+ function(
49
+ identifier(
50
+ function_of(List))),
51
+ argument(
52
+ parameter(
53
+ prefix(
54
+ identifier(
55
+ has_namespace,
56
+ namespace_of(:*))),
57
+ value(
58
+ value_type(
59
+ has_encoding,
60
+ encoding_of(:Abundance))))))
61
+ end
62
+ private_constant :AST
63
+
64
+ STRING_FORM = 'list(E:abundance...)list'.freeze
65
+ private_constant :STRING_FORM
66
+
67
+ def self.semantic_ast
68
+ AST
69
+ end
70
+
71
+ def self.string_form
72
+ STRING_FORM
73
+ end
74
+ end
75
+
76
+ class ListOfAbundanceSignature
77
+ extend BELParser::Language::Signature
78
+
79
+ private_class_method :new
80
+
81
+ AST = BELParser::Language::Semantics::Builder.build do
82
+ term(
83
+ function(
84
+ identifier(
85
+ function_of(List))),
86
+ variadic_arguments(
87
+ term(
88
+ function(
89
+ identifier(
90
+ return_type_of(BELParser::Language::Version1::ReturnTypes::Abundance))))))
91
+ end
92
+ private_constant :AST
93
+
94
+ STRING_FORM = 'list(F:abundance...)list'.freeze
95
+ private_constant :STRING_FORM
96
+
97
+ def self.semantic_ast
98
+ AST
99
+ end
100
+
101
+ def self.string_form
102
+ STRING_FORM
103
+ end
104
+ end
105
+
106
+ end
107
+
108
+ SIGNATURES = Signatures.constants.map do |const|
109
+ Signatures.const_get(const)
110
+ end.freeze
111
+ end
112
+ end
113
+ end
114
+ end
115
+ end
@@ -0,0 +1,85 @@
1
+ require_relative '../../version1'
2
+ require_relative '../../function'
3
+ require_relative '../../signature'
4
+ require_relative '../../semantic_ast'
5
+
6
+ module BELParser
7
+ module Language
8
+ module Version1
9
+ module Functions
10
+ # MicroRNAAbundance: Denotes the abundance of a processed, functional microRNA
11
+ class MicroRNAAbundance
12
+ extend Function
13
+
14
+ SHORT = :m
15
+ LONG = :microRNAAbundance
16
+ RETURN_TYPE = BELParser::Language::Version1::ReturnTypes::MicroRNAAbundance
17
+ DESCRIPTION = 'Denotes the abundance of a processed, functional microRNA'.freeze
18
+
19
+ def self.short
20
+ SHORT
21
+ end
22
+
23
+ def self.long
24
+ LONG
25
+ end
26
+
27
+ def self.return_type
28
+ RETURN_TYPE
29
+ end
30
+
31
+ def self.description
32
+ DESCRIPTION
33
+ end
34
+
35
+ def self.signatures
36
+ SIGNATURES
37
+ end
38
+
39
+ module Signatures
40
+
41
+ class MicroRNAAbundanceSignature
42
+ extend BELParser::Language::Signature
43
+
44
+ private_class_method :new
45
+
46
+ AST = BELParser::Language::Semantics::Builder.build do
47
+ term(
48
+ function(
49
+ identifier(
50
+ function_of(MicroRNAAbundance))),
51
+ argument(
52
+ parameter(
53
+ prefix(
54
+ identifier(
55
+ has_namespace,
56
+ namespace_of(:*))),
57
+ value(
58
+ value_type(
59
+ has_encoding,
60
+ encoding_of(:MicroRNAAbundance))))))
61
+ end
62
+ private_constant :AST
63
+
64
+ STRING_FORM = 'microRNAAbundance(E:microRNAAbundance)microRNAAbundance'.freeze
65
+ private_constant :STRING_FORM
66
+
67
+ def self.semantic_ast
68
+ AST
69
+ end
70
+
71
+ def self.string_form
72
+ STRING_FORM
73
+ end
74
+ end
75
+
76
+ end
77
+
78
+ SIGNATURES = Signatures.constants.map do |const|
79
+ Signatures.const_get(const)
80
+ end.freeze
81
+ end
82
+ end
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,80 @@
1
+ require_relative '../../version1'
2
+ require_relative '../../function'
3
+ require_relative '../../signature'
4
+ require_relative '../../semantic_ast'
5
+
6
+ module BELParser
7
+ module Language
8
+ module Version1
9
+ module Functions
10
+ # MolecularActivity: Denotes the frequency or abundance of events in which a member acts as a causal agent at the molecular scale
11
+ class MolecularActivity
12
+ extend Function
13
+
14
+ SHORT = :act
15
+ LONG = :molecularActivity
16
+ RETURN_TYPE = BELParser::Language::Version1::ReturnTypes::MolecularActivity
17
+ DESCRIPTION = 'Denotes the frequency or abundance of events in which a member acts as a causal agent at the molecular scale'.freeze
18
+
19
+ def self.short
20
+ SHORT
21
+ end
22
+
23
+ def self.long
24
+ LONG
25
+ end
26
+
27
+ def self.return_type
28
+ RETURN_TYPE
29
+ end
30
+
31
+ def self.description
32
+ DESCRIPTION
33
+ end
34
+
35
+ def self.signatures
36
+ SIGNATURES
37
+ end
38
+
39
+ module Signatures
40
+
41
+ class MolecularActivityOfAbundanceSignature
42
+ extend BELParser::Language::Signature
43
+
44
+ private_class_method :new
45
+
46
+ AST = BELParser::Language::Semantics::Builder.build do
47
+ term(
48
+ function(
49
+ identifier(
50
+ function_of(MolecularActivity))),
51
+ argument(
52
+ term(
53
+ function(
54
+ identifier(
55
+ return_type_of(BELParser::Language::Version1::ReturnTypes::Abundance))))))
56
+ end
57
+ private_constant :AST
58
+
59
+ STRING_FORM = 'molecularActivity(F:abundance)molecularActivity'.freeze
60
+ private_constant :STRING_FORM
61
+
62
+ def self.semantic_ast
63
+ AST
64
+ end
65
+
66
+ def self.string_form
67
+ STRING_FORM
68
+ end
69
+ end
70
+
71
+ end
72
+
73
+ SIGNATURES = Signatures.constants.map do |const|
74
+ Signatures.const_get(const)
75
+ end.freeze
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end