Home
Trees
Indices
Help
ansible
[
hide private
]
[
frames
] |
no frames
]
Identifier Index
[
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
_
]
C
cache
(in
ansible.plugins
)
chown()
(in
ShellBase
)
configure()
(in
NetworkModule
)
cache_loader
(in
ansible.plugins
)
chown()
(in
ShellModule
)
configure()
(in
EosConfigMixin
)
CACHE_PLUGIN
(in
ansible.constants
)
chroot
(in
ansible.plugins.connection
)
configure()
(in
Cli
)
CACHE_PLUGIN_CONNECTION
(in
ansible.constants
)
CHUNK_SIZE
(in
ansible.plugins.connection.accelerate
)
configure()
(in
Restconf
)
CACHE_PLUGIN_PREFIX
(in
ansible.constants
)
CIDR_PATTERN
(in
ansible.module_utils.azure_rm_common
)
configure()
(in
Cli
)
CACHE_PLUGIN_TIMEOUT
(in
ansible.constants
)
CIPHER_MAPPING
(in
ansible.parsing.vault
)
configure()
(in
Cli
)
CacheFTPHandler()
(in
Module_six_moves_urllib_request
)
CIPHER_WHITELIST
(in
ansible.parsing.vault
)
configure()
(in
NetworkModule
)
CacheModule
(in
ansible.plugins.cache.jsonfile
)
CIPHER_WRITE_WHITELIST
(in
ansible.parsing.vault
)
configure()
(in
NetworkModule
)
CacheModule
(in
ansible.plugins.cache.memcached
)
class_types
(in
ansible.compat.six
)
configure()
(in
RegistrationBase
)
CacheModule
(in
ansible.plugins.cache.memory
)
class_types
(in
ansible.module_utils.six
)
configure()
(in
Rhsm
)
CacheModule
(in
ansible.plugins.cache.redis
)
classobj
configure()
(in
Cli
)
CacheModuleKeys
(in
ansible.plugins.cache.memcached
)
CLB_ALGORITHMS
(in
ansible.module_utils.rax
)
configure_cli()
(in
NetworkModule
)
call
(in
ansible.compat.tests.mock
)
CLB_PROTOCOLS
(in
ansible.module_utils.rax
)
connect()
(in
Cli
)
callback
(in
ansible.plugins
)
cleanup()
(in
TaskQueueManager
)
connect()
(in
NetworkModule
)
callback_loader
(in
ansible.plugins
)
cleanup()
(in
AnsibleModule
)
connect()
(in
Cli
)
CALLBACK_NAME
(in
CallbackModule
)
cleanup_all_tmp_files()
(in
DataLoader
)
connect()
(in
Eapi
)
CALLBACK_NAME
(in
CallbackModule
)
cleanup_tmp_file()
(in
DataLoader
)
connect()
(in
Cli
)
CALLBACK_NAME
(in
CallbackModule
)
clear_facts()
(in
VariableManager
)
connect()
(in
Restconf
)
CALLBACK_NAME
(in
CallbackModule
)
clear_failed_hosts()
(in
TaskQueueManager
)
connect()
(in
Cli
)
CALLBACK_NAME
(in
CallbackModule
)
clear_hosts_cache()
(in
Group
)
connect()
(in
Cli
)
CALLBACK_NAME
(in
CallbackModule
)
clear_pattern_cache()
(in
Inventory
)
connect()
(in
Netconf
)
CALLBACK_NAME
(in
CallbackModule
)
cli
(in
ansible
)
connect()
(in
NetworkModule
)
CALLBACK_NAME
(in
CallbackModule
)
CLI
(in
ansible.cli
)
connect()
(in
NetCli
)
CALLBACK_NAME
(in
CallbackModule
)
Cli
(in
ansible.module_utils.asa
)
connect()
(in
NetworkModule
)
CALLBACK_NAME
(in
CallbackModule
)
Cli
(in
ansible.module_utils.eos
)
connect()
(in
Cli
)
CALLBACK_NAME
(in
CallbackModule
)
Cli
(in
ansible.module_utils.ios
)
connect()
(in
NetworkModule
)
CALLBACK_NAME
(in
CallbackModule
)
Cli
(in
ansible.module_utils.iosxr
)
connect()
(in
Nxapi
)
CALLBACK_NAME
(in
CallbackModule
)
Cli
(in
ansible.module_utils.junos
)
connect()
(in
Cli
)
CALLBACK_NAME
(in
CallbackModule
)
Cli
(in
ansible.module_utils.network
)
connect()
(in
NetworkModule
)
CALLBACK_NAME
(in
CallbackModule
)
cli
(in
NetworkModule
)
connect()
(in
Rest
)
CALLBACK_NAME
(in
CallbackModule
)
Cli
(in
ansible.module_utils.nxos
)
connect()
(in
CustomHTTPSConnection
)
CALLBACK_NAME
(in
CallbackModule
)
Cli
(in
ansible.module_utils.openswitch
)
connect()
(in
Cli
)
CALLBACK_NAME
(in
CallbackModule
)
Cli
(in
ansible.module_utils.vyos
)
connect()
(in
Connection
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_ERRORS_RE
(in
ansible.module_utils.asa
)
CONNECT_COMMAND
(in
SSLValidationHandler
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_ERRORS_RE
(in
Cli
)
connect_to_api()
(in
ansible.module_utils.vmware
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_ERRORS_RE
(in
Cli
)
connect_to_aws()
(in
ansible.module_utils.ec2
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_ERRORS_RE
(in
Cli
)
connected
(in
NetworkModule
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_ERRORS_RE
(in
ansible.module_utils.nxos
)
connected
(in
NetworkModule
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_ERRORS_RE
(in
ansible.module_utils.shell
)
connected
(in
NetworkModule
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_ERRORS_RE
(in
Cli
)
connected
(in
NetworkModule
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_PROMPTS_RE
(in
ansible.module_utils.asa
)
connected
(in
ConnectionBase
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_PROMPTS_RE
(in
Cli
)
connection
(in
ansible.plugins
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_PROMPTS_RE
(in
Cli
)
Connection
(in
ansible.plugins.connection.accelerate
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_PROMPTS_RE
(in
Cli
)
Connection
(in
ansible.plugins.connection.chroot
)
CALLBACK_NEEDS_WHITELIST
(in
CallbackModule
)
CLI_PROMPTS_RE
(in
ansible.module_utils.nxos
)
Connection
(in
ansible.plugins.connection.docker
)
CALLBACK_TYPE
(in
CallbackModule
)
CLI_PROMPTS_RE
(in
ansible.module_utils.shell
)
Connection
(in
ansible.plugins.connection.funcd
)
CALLBACK_TYPE
(in
CallbackModule
)
CLI_PROMPTS_RE
(in
Cli
)
Connection
(in
ansible.plugins.connection.jail
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Shell
)
Connection
(in
ansible.plugins.connection.libvirt_lxc
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
ConnectionBase
)
Connection
(in
ansible.plugins.connection.local
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
Connection
(in
ansible.plugins.connection.lxc
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
Connection
(in
ansible.plugins.connection.lxd
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
Connection
(in
ansible.plugins.connection.paramiko_ssh
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
Connection
(in
ansible.plugins.connection.ssh
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
Connection
(in
ansible.plugins.connection.winrm
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
Connection
(in
ansible.plugins.connection.zone
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
connection_loader
(in
ansible.plugins
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
connection_lock()
(in
ConnectionBase
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
connection_unlock()
(in
ConnectionBase
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
ConnectionBase
(in
ansible.plugins.connection
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
ConnectionError
(in
ansible.module_utils.urls
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
console
(in
ansible.cli
)
CALLBACK_TYPE
(in
CallbackModule
)
close()
(in
Connection
)
ConsoleCLI
(in
ansible.cli.console
)
CALLBACK_TYPE
(in
CallbackModule
)
close_connection()
(in
PlainTextSocketAppender
)
constants
(in
ansible
)
CALLBACK_VERSION
(in
CallbackModule
)
cloudstack
(in
ansible.module_utils
)
construct_mapping()
(in
AnsibleConstructor
)
CALLBACK_VERSION
(in
CallbackModule
)
cloudstack
(in
ansible.utils.module_docs_fragments
)
construct_yaml_map()
(in
AnsibleConstructor
)
CALLBACK_VERSION
(in
CallbackModule
)
cmd_functions
(in
ansible.utils
)
construct_yaml_seq()
(in
AnsibleConstructor
)
CALLBACK_VERSION
(in
CallbackModule
)
cmdloop()
(in
ConsoleCLI
)
construct_yaml_str()
(in
AnsibleConstructor
)
CALLBACK_VERSION
(in
CallbackModule
)
cmdloop()
(in
Debugger
)
construct_yaml_unsafe()
(in
AnsibleConstructor
)
CALLBACK_VERSION
(in
CallbackModule
)
codeCodes
(in
ansible.utils.color
)
constructor
(in
ansible.parsing.yaml
)
CALLBACK_VERSION
(in
CallbackModule
)
color
(in
ansible.utils
)
consul_kv
(in
ansible.plugins.lookup
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_CHANGED
(in
ansible.constants
)
contains()
(in
Conditional
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_DEBUG
(in
ansible.constants
)
contains()
(in
BaseCacheModule
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_DEPRECATE
(in
ansible.constants
)
contains()
(in
CacheModule
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_DIFF_ADD
(in
ansible.constants
)
contains()
(in
CacheModule
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_DIFF_LINES
(in
ansible.constants
)
contains()
(in
CacheModule
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_DIFF_REMOVE
(in
ansible.constants
)
contains()
(in
CacheModule
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_ERROR
(in
ansible.constants
)
ContentTooShortError()
(in
Module_six_moves_urllib_error
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_HIGHLIGHT
(in
ansible.constants
)
context_demo
(in
ansible.plugins.callback
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_OK
(in
ansible.constants
)
CONTINUE
(in
NextAction
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_SKIP
(in
ansible.constants
)
copy
(in
ansible.plugins.action
)
CALLBACK_VERSION
(in
CallbackModule
)
COLOR_UNREACHABLE
(in
ansible.constants
)
copy()
(in
HostState
)
CallbackBase
(in
ansible.plugins.callback
)
COLOR_VERBOSE
(in
ansible.constants
)
copy()
(in
Base
)
CallbackModule
(in
ansible.plugins.callback.actionable
)
COLOR_WARN
(in
ansible.constants
)
copy()
(in
Block
)
CallbackModule
(in
ansible.plugins.callback.context_demo
)
colorize()
(in
ansible.utils.color
)
copy()
(in
Play
)
CallbackModule
(in
ansible.plugins.callback.default
)
combine()
(in
ansible.plugins.filter.core
)
copy()
(in
Task
)
CallbackModule
(in
ansible.plugins.callback.hipchat
)
combine_vars()
(in
ansible.utils.vars
)
copy()
(in
FactCache
)
CallbackModule
(in json)
Command
(in
ansible.module_utils.network
)
copy()
(in
BaseCacheModule
)
CallbackModule
(in
ansible.plugins.callback.junit
)
Command
(in
ansible.module_utils.shell
)
copy()
(in
CacheModule
)
CallbackModule
(in
ansible.plugins.callback.log_plays
)
COMMAND_WARNINGS
(in
ansible.constants
)
copy()
(in
CacheModule
)
CallbackModule
(in
ansible.plugins.callback.logentries
)
CommandRunner
(in
ansible.module_utils.netcmd
)
copy()
(in
CacheModule
)
CallbackModule
(in
ansible.plugins.callback.mail
)
comment()
(in
ansible.plugins.filter.core
)
copy()
(in
CacheModule
)
CallbackModule
(in
ansible.plugins.callback.minimal
)
commit_config()
(in
EosConfigMixin
)
copyreg()
(in
_MovedItems
)
CallbackModule
(in
ansible.plugins.callback.oneline
)
commit_config()
(in
Cli
)
core
(in
ansible.modules
)
CallbackModule
(in
ansible.plugins.callback.osx_say
)
commit_config()
(in
Restconf
)
core
(in
ansible.plugins.filter
)
CallbackModule
(in
ansible.plugins.callback.profile_tasks
)
commit_config()
(in
Cli
)
core
(in
ansible.plugins.test
)
CallbackModule
(in
ansible.plugins.callback.skippy
)
commit_config()
(in
Netconf
)
cPickle()
(in
_MovedItems
)
CallbackModule
(in
ansible.plugins.callback.slack
)
commit_config()
(in
Config
)
create_bound_method()
(in
ansible.compat.six
)
CallbackModule
(in
ansible.plugins.callback.syslog_json
)
commit_config()
(in
Cli
)
create_bound_method()
(in
ansible.module_utils.six
)
CallbackModule
(in
ansible.plugins.callback.timer
)
compat
(in
ansible
)
create_connection()
(in
ProxyClientPool
)
CallbackModule
(in
ansible.plugins.callback.tree
)
COMPATIBLE_SHELLS
(in
ShellModule
)
create_default_pip()
(in
AzureRMModuleBase
)
camel_dict_to_snake_dict()
(in
ansible.module_utils.ec2
)
COMPATIBLE_SHELLS
(in
ShellModule
)
create_default_securitygroup()
(in
AzureRMModuleBase
)
cartesian
(in
ansible.plugins.lookup
)
COMPATIBLE_SHELLS
(in
ShellModule
)
create_file()
(in
VaultEditor
)
CGIHTTPServer()
(in
_MovedItems
)
COMPATIBLE_SHELLS
(in
ShellModule
)
create_github_token()
(in
GalaxyLogin
)
change_context()
(in
Cli
)
compile()
(in
Play
)
create_import_task()
(in
GalaxyAPI
)
changed()
(in
ansible.plugins.test.core
)
compile()
(in
Role
)
create_instance()
(in
VcaAnsibleModule
)
check_become_success()
(in
ConnectionBase
)
compile_roles_handlers()
(in
Play
)
create_key()
(in
VaultAES256
)
check_client_version()
(in
ansible.module_utils.azure_rm_common
)
complete_cd()
(in
ConsoleCLI
)
create_unbound_method()
(in
ansible.compat.six
)
check_config()
(in
Netconf
)
completedefault()
(in
ConsoleCLI
)
create_unicode()
(in
ansible.plugins.callback.logentries
)
check_config()
(in
ansible.module_utils.vyos
)
compute_client
(in
AzureRMModuleBase
)
credstash
(in
ansible.plugins.lookup
)
check_hostkey()
(in
ansible.module_utils.known_hosts
)
Conditional
(in
ansible.module_utils.netcmd
)
CREDSTASH_INSTALLED
(in
ansible.plugins.lookup.credstash
)
check_incorrect_password()
(in
ConnectionBase
)
conditional
(in
ansible.playbook
)
CRYPTO_UPGRADE
(in
ansible.parsing.vault
)
check_missing_password()
(in
ConnectionBase
)
Conditional
(in
ansible.playbook.conditional
)
cs_argument_spec()
(in
ansible.module_utils.cloudstack
)
check_password_prompt()
(in
ConnectionBase
)
config
(in
ansible
)
CS_HYPERVISORS
(in
ansible.module_utils.cloudstack
)
check_prereqs()
(in
ansible.parsing.vault
)
config
(in
NetworkModule
)
cs_required_together()
(in
ansible.module_utils.cloudstack
)
check_provisioning_state()
(in
AzureRMModuleBase
)
Config
(in
ansible.module_utils.network
)
csh
(in
ansible.plugins.shell
)
check_ps()
(in
Service
)
config
(in
NetworkModule
)
cStringIO()
(in
_MovedItems
)
checksum()
(in
ShellModule
)
config
(in
NetworkModule
)
csvfile
(in
ansible.plugins.lookup
)
checksum()
(in
ShellModule
)
config
(in
NetworkModule
)
CSVReader
(in
ansible.plugins.lookup.csvfile
)
checksum()
(in
ShellModule
)
CONFIG_FILE
(in
ansible.constants
)
CSVRecoder
(in
ansible.plugins.lookup.csvfile
)
chmod()
(in
ShellBase
)
ConfigLine
(in
ansible.module_utils.netcfg
)
CustomHTTPSConnection
(in
ansible.module_utils.urls
)
chmod()
(in
ShellModule
)
configparser()
(in
_MovedItems
)
CustomHTTPSHandler
(in
ansible.module_utils.urls
)
Home
Trees
Indices
Help
ansible
Generated by Epydoc 3.0.1 on Fri Jul 29 13:11:37 2016
http://epydoc.sourceforge.net


SUBROUTINE DSTEDC( COMPZ, N, D, E, Z, LDZ, WORK, LWORK, IWORK, $ LIWORK, INFO ) * * -- LAPACK driver routine (version 3.1) -- * Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. * November 2006 * * .. Scalar Arguments .. CHARACTER COMPZ INTEGER INFO, LDZ, LIWORK, LWORK, N * .. * .. Array Arguments .. INTEGER IWORK( * ) DOUBLE PRECISION D( * ), E( * ), WORK( * ), Z( LDZ, * ) * .. * * Purpose * ======= * * DSTEDC computes all eigenvalues and, optionally, eigenvectors of a * symmetric tridiagonal matrix using the divide and conquer method. * The eigenvectors of a full or band real symmetric matrix can also be * found if DSYTRD or DSPTRD or DSBTRD has been used to reduce this * matrix to tridiagonal form. * * This code makes very mild assumptions about floating point * arithmetic. It will work on machines with a guard digit in * add/subtract, or on those binary machines without guard digits * which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or Cray-2. * It could conceivably fail on hexadecimal or decimal machines * without guard digits, but we know of none. See DLAED3 for details. * * Arguments * ========= * * COMPZ (input) CHARACTER*1 * = 'N': Compute eigenvalues only. * = 'I': Compute eigenvectors of tridiagonal matrix also. * = 'V': Compute eigenvectors of original dense symmetric * matrix also. On entry, Z contains the orthogonal * matrix used to reduce the original matrix to * tridiagonal form. * * N (input) INTEGER * The dimension of the symmetric tridiagonal matrix. N >= 0. * * D (input/output) DOUBLE PRECISION array, dimension (N) * On entry, the diagonal elements of the tridiagonal matrix. * On exit, if INFO = 0, the eigenvalues in ascending order. * * E (input/output) DOUBLE PRECISION array, dimension (N-1) * On entry, the subdiagonal elements of the tridiagonal matrix. * On exit, E has been destroyed. * * Z (input/output) DOUBLE PRECISION array, dimension (LDZ,N) * On entry, if COMPZ = 'V', then Z contains the orthogonal * matrix used in the reduction to tridiagonal form. * On exit, if INFO = 0, then if COMPZ = 'V', Z contains the * orthonormal eigenvectors of the original symmetric matrix, * and if COMPZ = 'I', Z contains the orthonormal eigenvectors * of the symmetric tridiagonal matrix. * If COMPZ = 'N', then Z is not referenced. * * LDZ (input) INTEGER * The leading dimension of the array Z. LDZ >= 1. * If eigenvectors are desired, then LDZ >= max(1,N). * * WORK (workspace/output) DOUBLE PRECISION array, * dimension (LWORK) * On exit, if INFO = 0, WORK(1) returns the optimal LWORK. * * LWORK (input) INTEGER * The dimension of the array WORK. * If COMPZ = 'N' or N <= 1 then LWORK must be at least 1. * If COMPZ = 'V' and N > 1 then LWORK must be at least * ( 1 + 3*N + 2*N*lg N + 3*N**2 ), * where lg( N ) = smallest integer k such * that 2**k >= N. * If COMPZ = 'I' and N > 1 then LWORK must be at least * ( 1 + 4*N + N**2 ). * Note that for COMPZ = 'I' or 'V', then if N is less than or * equal to the minimum divide size, usually 25, then LWORK need * only be max(1,2*(N-1)). * * If LWORK = -1, then a workspace query is assumed; the routine * only calculates the optimal size of the WORK array, returns * this value as the first entry of the WORK array, and no error * message related to LWORK is issued by XERBLA. * * IWORK (workspace/output) INTEGER array, dimension (MAX(1,LIWORK)) * On exit, if INFO = 0, IWORK(1) returns the optimal LIWORK. * * LIWORK (input) INTEGER * The dimension of the array IWORK. * If COMPZ = 'N' or N <= 1 then LIWORK must be at least 1. * If COMPZ = 'V' and N > 1 then LIWORK must be at least * ( 6 + 6*N + 5*N*lg N ). * If COMPZ = 'I' and N > 1 then LIWORK must be at least * ( 3 + 5*N ). * Note that for COMPZ = 'I' or 'V', then if N is less than or * equal to the minimum divide size, usually 25, then LIWORK * need only be 1. * * If LIWORK = -1, then a workspace query is assumed; the * routine only calculates the optimal size of the IWORK array, * returns this value as the first entry of the IWORK array, and * no error message related to LIWORK is issued by XERBLA. * * INFO (output) INTEGER * = 0: successful exit. * < 0: if INFO = -i, the i-th argument had an illegal value. * > 0: The algorithm failed to compute an eigenvalue while * working on the submatrix lying in rows and columns * INFO/(N+1) through mod(INFO,N+1). * * Further Details * =============== * * Based on contributions by * Jeff Rutter, Computer Science Division, University of California * at Berkeley, USA * Modified by Francoise Tisseur, University of Tennessee. * * ===================================================================== * * .. Parameters .. DOUBLE PRECISION ZERO, ONE, TWO PARAMETER ( ZERO = 0.0D0, ONE = 1.0D0, TWO = 2.0D0 ) * .. * .. Local Scalars .. LOGICAL LQUERY INTEGER FINISH, I, ICOMPZ, II, J, K, LGN, LIWMIN, $ LWMIN, M, SMLSIZ, START, STOREZ, STRTRW DOUBLE PRECISION EPS, ORGNRM, P, TINY * .. * .. External Functions .. LOGICAL LSAME INTEGER ILAENV DOUBLE PRECISION DLAMCH, DLANST EXTERNAL LSAME, ILAENV, DLAMCH, DLANST * .. * .. External Subroutines .. EXTERNAL DGEMM, DLACPY, DLAED0, DLASCL, DLASET, DLASRT, $ DSTEQR, DSTERF, DSWAP, XERBLA * .. * .. Intrinsic Functions .. INTRINSIC ABS, DBLE, INT, LOG, MAX, MOD, SQRT * .. * .. Executable Statements .. * * Test the input parameters. * INFO = 0 LQUERY = ( LWORK.EQ.-1 .OR. LIWORK.EQ.-1 ) * IF( LSAME( COMPZ, 'N' ) ) THEN ICOMPZ = 0 ELSE IF( LSAME( COMPZ, 'V' ) ) THEN ICOMPZ = 1 ELSE IF( LSAME( COMPZ, 'I' ) ) THEN ICOMPZ = 2 ELSE ICOMPZ = -1 END IF IF( ICOMPZ.LT.0 ) THEN INFO = -1 ELSE IF( N.LT.0 ) THEN INFO = -2 ELSE IF( ( LDZ.LT.1 ) .OR. $ ( ICOMPZ.GT.0 .AND. LDZ.LT.MAX( 1, N ) ) ) THEN INFO = -6 END IF * IF( INFO.EQ.0 ) THEN * * Compute the workspace requirements * SMLSIZ = ILAENV( 9, 'DSTEDC', ' ', 0, 0, 0, 0 ) IF( N.LE.1 .OR. ICOMPZ.EQ.0 ) THEN LIWMIN = 1 LWMIN = 1 ELSE IF( N.LE.SMLSIZ ) THEN LIWMIN = 1 LWMIN = 2*( N - 1 ) ELSE LGN = INT( LOG( DBLE( N ) )/LOG( TWO ) ) IF( 2**LGN.LT.N ) $ LGN = LGN + 1 IF( 2**LGN.LT.N ) $ LGN = LGN + 1 IF( ICOMPZ.EQ.1 ) THEN LWMIN = 1 + 3*N + 2*N*LGN + 3*N**2 LIWMIN = 6 + 6*N + 5*N*LGN ELSE IF( ICOMPZ.EQ.2 ) THEN LWMIN = 1 + 4*N + N**2 LIWMIN = 3 + 5*N END IF END IF WORK( 1 ) = LWMIN IWORK( 1 ) = LIWMIN * IF( LWORK.LT.LWMIN .AND. .NOT. LQUERY ) THEN INFO = -8 ELSE IF( LIWORK.LT.LIWMIN .AND. .NOT. LQUERY ) THEN INFO = -10 END IF END IF * IF( INFO.NE.0 ) THEN CALL XERBLA( 'DSTEDC', -INFO ) RETURN ELSE IF (LQUERY) THEN RETURN END IF * * Quick return if possible * IF( N.EQ.0 ) $ RETURN IF( N.EQ.1 ) THEN IF( ICOMPZ.NE.0 ) $ Z( 1, 1 ) = ONE RETURN END IF * * If the following conditional clause is removed, then the routine * will use the Divide and Conquer routine to compute only the * eigenvalues, which requires (3N + 3N**2) real workspace and * (2 + 5N + 2N lg(N)) integer workspace. * Since on many architectures DSTERF is much faster than any other * algorithm for finding eigenvalues only, it is used here * as the default. If the conditional clause is removed, then * information on the size of workspace needs to be changed. * * If COMPZ = 'N', use DSTERF to compute the eigenvalues. * IF( ICOMPZ.EQ.0 ) THEN CALL DSTERF( N, D, E, INFO ) GO TO 50 END IF * * If N is smaller than the minimum divide size (SMLSIZ+1), then * solve the problem with another solver. * IF( N.LE.SMLSIZ ) THEN * CALL DSTEQR( COMPZ, N, D, E, Z, LDZ, WORK, INFO ) * ELSE * * If COMPZ = 'V', the Z matrix must be stored elsewhere for later * use. * IF( ICOMPZ.EQ.1 ) THEN STOREZ = 1 + N*N ELSE STOREZ = 1 END IF * IF( ICOMPZ.EQ.2 ) THEN CALL DLASET( 'Full', N, N, ZERO, ONE, Z, LDZ ) END IF * * Scale. * ORGNRM = DLANST( 'M', N, D, E ) IF( ORGNRM.EQ.ZERO ) $ GO TO 50 * EPS = DLAMCH( 'Epsilon' ) * START = 1 * * while ( START <= N ) * 10 CONTINUE IF( START.LE.N ) THEN * * Let FINISH be the position of the next subdiagonal entry * such that E( FINISH ) <= TINY or FINISH = N if no such * subdiagonal exists. The matrix identified by the elements * between START and FINISH constitutes an independent * sub-problem. * FINISH = START 20 CONTINUE IF( FINISH.LT.N ) THEN TINY = EPS*SQRT( ABS( D( FINISH ) ) )* $ SQRT( ABS( D( FINISH+1 ) ) ) IF( ABS( E( FINISH ) ).GT.TINY ) THEN FINISH = FINISH + 1 GO TO 20 END IF END IF * * (Sub) Problem determined. Compute its size and solve it. * M = FINISH - START + 1 IF( M.EQ.1 ) THEN START = FINISH + 1 GO TO 10 END IF IF( M.GT.SMLSIZ ) THEN * * Scale. * ORGNRM = DLANST( 'M', M, D( START ), E( START ) ) CALL DLASCL( 'G', 0, 0, ORGNRM, ONE, M, 1, D( START ), M, $ INFO ) CALL DLASCL( 'G', 0, 0, ORGNRM, ONE, M-1, 1, E( START ), $ M-1, INFO ) * IF( ICOMPZ.EQ.1 ) THEN STRTRW = 1 ELSE STRTRW = START END IF CALL DLAED0( ICOMPZ, N, M, D( START ), E( START ), $ Z( STRTRW, START ), LDZ, WORK( 1 ), N, $ WORK( STOREZ ), IWORK, INFO ) IF( INFO.NE.0 ) THEN INFO = ( INFO / ( M+1 )+START-1 )*( N+1 ) + $ MOD( INFO, ( M+1 ) ) + START - 1 GO TO 50 END IF * * Scale back. * CALL DLASCL( 'G', 0, 0, ONE, ORGNRM, M, 1, D( START ), M, $ INFO ) * ELSE IF( ICOMPZ.EQ.1 ) THEN * * Since QR won't update a Z matrix which is larger than * the length of D, we must solve the sub-problem in a * workspace and then multiply back into Z. * CALL DSTEQR( 'I', M, D( START ), E( START ), WORK, M, $ WORK( M*M+1 ), INFO ) CALL DLACPY( 'A', N, M, Z( 1, START ), LDZ, $ WORK( STOREZ ), N ) CALL DGEMM( 'N', 'N', N, M, M, ONE, $ WORK( STOREZ ), N, WORK, M, ZERO, $ Z( 1, START ), LDZ ) ELSE IF( ICOMPZ.EQ.2 ) THEN CALL DSTEQR( 'I', M, D( START ), E( START ), $ Z( START, START ), LDZ, WORK, INFO ) ELSE CALL DSTERF( M, D( START ), E( START ), INFO ) END IF IF( INFO.NE.0 ) THEN INFO = START*( N+1 ) + FINISH GO TO 50 END IF END IF * START = FINISH + 1 GO TO 10 END IF * * endwhile * * If the problem split any number of times, then the eigenvalues * will not be properly ordered. Here we permute the eigenvalues * (and the associated eigenvectors) into ascending order. * IF( M.NE.N ) THEN IF( ICOMPZ.EQ.0 ) THEN * * Use Quick Sort * CALL DLASRT( 'I', N, D, INFO ) * ELSE * * Use Selection Sort to minimize swaps of eigenvectors * DO 40 II = 2, N I = II - 1 K = I P = D( I ) DO 30 J = II, N IF( D( J ).LT.P ) THEN K = J P = D( J ) END IF 30 CONTINUE IF( K.NE.I ) THEN D( K ) = D( I ) D( I ) = P CALL DSWAP( N, Z( 1, I ), 1, Z( 1, K ), 1 ) END IF 40 CONTINUE END IF END IF END IF * 50 CONTINUE WORK( 1 ) = LWMIN IWORK( 1 ) = LIWMIN * RETURN * * End of DSTEDC * END


Celtic fined by UEFA over banner and chanting
by BeSoccerUEFA's control, ethics and disciplinary body fines Celtic and Lazio following October's heated Europa League clash in Glasgow.
Celtic have been fined €15,000 (£12,886) by UEFA for obsence chanting and displaying an "illicit banner" in their Europa League win against Lazio at Celtic Park last month.
Home supporters unveiled several banners ahead of the game, including one depicting former Italian prime minister Benito Mussolini hanging upside down.
Another contained a message in Italian that translated to "f*** off".
Featured links
- Mourinho replaces Pochettino at Tottenham
- The latest football transfers news and rumours
- Wales, golf, Madrid... in that order
- Luis Enrique returns to Spain national team
UEFA's control, ethics and disciplinary body has also fined Lazio €10,000 (£8,593) for "illicit chanting" during the meeting on October 24, which Celtic won 2-1.
Meanwhile, Club Brugge have been fined €14,000 for breaching safety regulations by blocking the stairways during their home Champions League clash with Paris Saint-Germain a month ago.
Ligue 1 champions PSG have been told to pay €50,000 and threatened with a one-match away ban for supporters if they offend again in the next 12 months after setting off fireworks in the same match.


notes from the impenetrable
it’s hard to be [a] God on Sunday or any other day a wise man spoke ; live just the little bits try to stay awake ; in other words an interruption in revolt against itself eternal ; or nothing that impenetrable black square suspended in ether another other’s prayer ; that it may be impossible to know the unknow able or know the know able twice ; removed from the self ; as modern man supposed should already be some where else where heare! that asymptotic dive so close to Babylon (nightmare) ; embrace the differentiation –of otherness sublime to know a | l i (v) e staring Hades in her Eurydicean face that sameness only soothes in death and there is nothing more different –than me than me than infinite jest et tous i think a familiar danger but of // something else!


My Team
Jared
Manager
ID: 1
Email:
<EMAIL_ADDRESS>Office number: 1
Alec
Engineer
ID: 1
Email:
<EMAIL_ADDRESS>GitHub:
ibealec
Grace
Engineer
ID: 1
Email:
<EMAIL_ADDRESS>GitHub:
gchoi2u
Tammer
Engineer
ID: 1
Email:
<EMAIL_ADDRESS>GitHub:
tammerg
John
Intern
ID: 1
Email:
<EMAIL_ADDRESS>School: 2University


Come smoke some bud at Mary's Joint!
Sign up with your email address to receive news and updates about Mary's Joint!


Amazon files lawsuit contesting Pentagon's US$10b cloud contract to Microsoft
S AN FRANCISCO, Nov 23 ― Amazon.com Inc yesterday filed a lawsuit in the US Court of Federal Claims contesting the Pentagon's award of an up to US$10 billion (RM41.7 billion) cloud computing contract to Microsoft Corp.
An Amazon spokesman said that the company filed a complaint and supplemental motion for discovery. The filing was under seal.
“The Complaint and related filings contain source selection sensitive information, as well as AWS's proprietary information, trade secrets, and confidential financial information, the public release of which would cause either party severe competitive harm,” Amazon said in a court document seeking a protective order.
“The record in this bid protest likely will contain similarly sensitive information.”
Last week, US Defence Secretary Mark Esper rejected any suggestion of bias in the Pentagon's decision to award Microsoft the contract after Amazon announced plans to challenge it.
Amazon was considered a favorite for the contract, part of a broader digital modernization process of the Pentagon, before Microsoft emerged as the surprise winner.
The company has previously said that politics got in the way of a fair contracting process. US President Donald Trump has long criticised Amazon and its founder Jeff Bezos. ― Reuters


|
cds
1.2.0
|
Hazard Pointer garbage collector. More...
#include <cds/gc/hp.h>
Data Structures | |
| struct | container_node |
| Base for container node. More... | |
| class | Guard |
| Hazard Pointer guard. More... | |
| class | GuardArray |
| Array of Hazard Pointer guards. More... | |
| class | thread_gc |
| Wrapper for hzp::ThreadGC class. More... |
Public Types | |
| typedef hzp::ThreadGC | thread_gc_impl |
| Thread GC implementation for internal usage. |
Public Member Functions | |
| HP (size_t nHazardPtrCount=0, size_t nMaxThreadCount=0, size_t nMaxRetiredPtrCount=0, hzp::scan_type nScanType=hzp::inplace) | |
| Initializes hzp::GarbageCollector singleton. | |
| ~HP () | |
| Terminates GC singleton. | |
| hzp::scan_type | getScanType () const |
| Get current scan strategy. | |
| void | setScanType (hzp::scan_type nScanType) |
| Set current scan strategy. |
Static Public Member Functions | |
| template<typename T > | |
| static void | retire (T *p, void(*pFunc)(T *)) |
Retire pointer p with function pFunc . | |
| template<class Disposer , typename T > | |
| static void | retire (T *p) |
Retire pointer p with functor of type Disposer . | |
| static bool | isUsed () |
| Checks if Hazard Pointer GC is constructed and may be used. | |
| static void | scan () |
| Forced GC cycle call for current thread. |
Hazard Pointer garbage collector.
This class realizes a wrapper for Hazard Pointer garbage collector internal implementation.
Sources:
See How to use section for details of garbage collector applying.
|
inline |
Initializes hzp::GarbageCollector singleton.
The constructor initializes GC singleton with passed parameters. If GC instance is not exist then the function creates the instance. Otherwise it does nothing.
The Michael's HP reclamation schema depends of three parameters:
nHazardPtrCount
- hazard pointer count per thread. Usually it is small number (up to 10) depending from the data structure algorithms. By default, if nHazardPtrCount
= 0, the function uses maximum of the hazard pointer count for CDS library.nMaxThreadCount
- max count of thread with using Hazard Pointer GC in your application. Default is 100.nMaxRetiredPtrCount
- capacity of array of retired pointers for each thread. Must be greater than nHazardPtrCount * nMaxThreadCount
. Default is 2 * nHazardPtrCount * nMaxThreadCount
. | nHazardPtrCount | Hazard pointer count per thread |
| nMaxThreadCount | Max count of simultaneous working thread in your application |
| nMaxRetiredPtrCount | Capacity of the array of retired objects for the thread |
| nScanType | Scan type (see hzp::scan_type enum) |
|
inline |
|
inline |
Get current scan strategy.
See hzp::GarbageCollector::Scan for scan algo description
|
static |
Retire pointer p
with function pFunc
.
The function places pointer p
to array of pointers ready for removing. (so called retired pointer array). The pointer can be safely removed when no hazard pointer points to it. Deleting the pointer is the function pFunc
call.
|
static |
Retire pointer p
with functor of type Disposer
.
The function places pointer p
to array of pointers ready for removing. (so called retired pointer array). The pointer can be safely removed when no hazard pointer points to it.
Deleting the pointer is an invocation of some object of type Disposer
; the interface of Disposer
is:
Since the functor call can happen at any time after retire
call, additional restrictions are imposed to Disposer
type:
p
should not depend on where the functor will be called.delete
functor: Functor based on std::allocator
:
|
static |
Forced GC cycle call for current thread.
Usually, this function should not be called directly.
|
inline |
Set current scan strategy.
Scan strategy changing is allowed on the fly.
About scan strategy see getScanType
| nScanType | new scan strategy |


Plugin Information |
|---|
View Zentimestamp on the plugin site for more information. |
This plugin is up for adoption. Want to help improve this plugin? Click here to learn more!
This plugin export a BUILD_TIMESTAMP
variable.
Description
From Jenkins 1.597, the plugin adds the Jenkins BUILD_TIMESTAMP
variable to the Configure System page of Manage Jenkins. Note: you must activate the Global Property!
You must specify a java.text.SimpleDateFormat pattern such as the value 'yyyyMMddHHmmss
'.
Features
- Export a
BUILD_TIMESTAMP
variable to the Jenkins instance (all jobs on all slaves will be impacted). - Export a
BUILD_TIMESTAMP
variable to the slave (all jobs on this slave will be impacted). - Export a
BUILD_TIMESTAMP
variable to the job (only the job will be impacted)
Changelog
Release 4.2 (July 25, 2015)
- Fix JENKINS-26958 - workflow plugin compatibility
Release 4.1 (May 24, 2015)
- Commented out logging statement
Release 4.0 (April 07, 2015)
- Fix JENKINS-26626 - Switch to use BUILD_TIMESTAMP environment variable and make it compatible with Jenkins 1.597+
Release 3.3 (May 16, 2013)
- Fix JENKINS-17975 - SCM polling stops to work if the previously used build node no longer exists
Release 3.2 (March 10, 2012)
- Make it compatible to MatrixProject
Release 3.1 (March 07, 2012)
- Make it compatible to envinject jenkins plugin (Remove
RunListener
and add anEnvironmentContributor
). - Fix JENKINS-12694 - Zentimestamp plugin v3.0 no longer compatible with hudson.
Release 3.0 (December 21, 2011)
- Add the ability to change the date format at node level
Release 2.2 (March 1, 2011)
- Change UI labels from Hudson to Jenkins
Release 2.1 (February 19, 2011)
- Updated over new Jenkins 1.397 API and metadata
Release 2.0.1 (July 02, 2010)
- Fixed regression for backward compatibility with zentimestamp 1.2
Release 2.0 (June 20, 2010)
- The plugin is now a job property that enables users to change the
BUILD_ID
variable from Hudson publishers too
Release 1.2 (February 10, 2009)
- Upgraded to new Hudson API
- Added integration tests
Release 1.1 (June 10, 2009)
- Fixed Help 404 error with Hudson 1.3xx
Release 1.0 (August 12, 2008)
- Initial release


SG Film
Home
(current)
API
Studio Ghibli Filmography
A collection of Studio Ghibli films over the years, created from the Studio Ghibli API.


Already a Bloomberg.com user?
Sign in with the same account.
Google Inc
Microsoft Corp
Oracle Corp
Apple Inc
In the annals of corporate keynoteage, three hours is an extraordinarily long presentation. But Google (GOOG) in 2013 is a big company, so today, at its annual I/O conference for developers, the search giant filled an entire morning with news and updates to its broad portfolio of products.
The news, though manna to many of the 6,000 developers who filled the Moscone Center in San Francisco, will appear incremental and perhaps even trivial to normal, nontechnical Google users. But a few moments from the morning deserve at least a little extra attention.
Google Chief Executive Larry Page surprised the audience when he took the stage to wax about the incredible rate of recent innovation in high tech and the possibilities opening up to everyone in the industry. “The opportunities we have are tremendous,” he said, his voice raspy from his recently explained medical condition. “We haven’t seen this rate of change in computing for a long time, probably not since the birth of personal computing, when I think about it. I think we are all here because we share a deep sense of optimism about the potential of technology to improve people’s lives.”
Page estimated that Google and the larger technology industry are only at 1 percent of what is possible, “and probably even less than that.”
Page then answered questions from the crowd. In separate answers, he criticized Microsoft (MSFT) for not embracing open Web standards and said of enterprise software maker Oracle (ORCL) that “money seems more important to them than collaboration.” Answering a question about the Google Fiber initiative, to bring 100 megabit connections to such places as Provo, Utah, Page said: “As computer scientists I view it as sad. We have all these computers out there, and they are connected toe each other through tiny, tiny pipes that are super small.”
A litany of Google execs discussed updates to its search engine and maps products and rolled out a new education application store for Android tablets that will help it compete with Apple (AAPL) devices in the classroom. The company also launched a new music subscription service to compete with such rivals as Pandora, Rhapsody, Spotify, and Rdio.
The music service, Google Play Music All Access, will cost $9.99 a month and enable members to stream any song in Google’s catalog. It’s entering a crowded market, but Google’s advantage is that it can smoothly integrate its music service into the Android operating system. That’s a large installed base: Sundar Pichai, Google’s new Android chief, announced at the start of the keynote that 900 million phones running the Android operating system have been activated over the past five years. Hugo Barra, a vice president of the Android division, called the new music service “radio without rules.”
Google’s technical chops were on display in a few neat tricks on stage. As part of the company’s update to its Google+ social network, Google said it was employing advanced algorithms and machine learning to improve a user’s photo collection. Google can automatically fix blemishes within photos and automatically select the best pictures in a set by looking at such variables as the number of smiles in the frame. Another feature, called Auto Awesome, automatically takes multiple portraits and strings them together in a short video.
In another demo showing the live multiplayer game capabilities of the Chrome browser, five volunteers played each other on stage in a racing video game on five different devices.
The company is also improving its voice search capabilities and bringing them into the Chrome browser (voice search is already accessible from Android phones). A user can ask a question such as, “OK, Google, show me seafood restaurants in Santa Cruz,” and the browser will serve up the top results. For direct questions, it will speak the answer. The service should raise the bar for other speech services, such as Siri from Apple. Amit Signhal, Google’s search chief, predicted conversational voice search will one day be the standard and said, “our investment and commitment to getting there sooner rather than later is immense.”
Google rolled out a significant redesign of its popular Maps tool—which millions of people use to get around and avoid asking for directions. Instead of sitting on the cloud and gradually reloading every time a user zooms in or out, Google’s redesigned Maps will sit predominantly within the Web browser. As a result, users can scroll though more maps more seamlessly, street names and widths get larger depending on where you are going, and users can more easily toggle between different views, like overhead view from Google Earth, Street View, and 360 degree panoramas from inside stores, restaurants, and major landmarks.
The new Google Maps is available for preview starting tomorrow morning. By then, hopefully, Google’s keynote should finally be over.


Class: Sunspot::Setup
- Inherits:
-
Object
- Object
- Sunspot::Setup
- Defined in:
- sunspot/lib/sunspot/setup.rb
Overview
This class encapsulates the search/indexing setup for a given class. Its contents are built using the Sunspot.setup method.
Instance Attribute Summary (collapse)
-
- (Object) class_object_id
readonly
:nodoc:.
Class Method Summary (collapse)
-
+ (Object) for(clazz)
Retrieve the setup instance for the given class, or for the nearest ancestor that has a setup, if any.
-
+ (Object) setup(clazz, &block)
Retrieve or create the Setup instance for the given class, evaluating the given block to add to the setup’s configuration.
Instance Method Summary (collapse)
-
- (Object) add_document_boost(attr_name, &block)
Add a document boost to documents at index time.
-
- (Object) add_dynamic_field_factory(name, type, options = {}, &block)
Add dynamic field_factories.
-
- (Object) add_field_factory(name, type, options = {}, &block)
Add field factory for scope/ordering.
-
- (Object) add_text_field_factory(name, options = {}, &block)
Add field_factories for fulltext search.
-
- (Object) all_field_factories
Get all static, dynamic, and text field_factories associated with this setup as well as all inherited field_factories.
-
- (Object) all_more_like_this_fields
Return all more_like_this fields.
-
- (Object) all_text_fields
Return all text fields.
-
- (Object) clazz
Return the class associated with this setup.
-
- (Object) document_boost_for(model)
Get the document boost for a given model.
-
- (Object) dynamic_field_factories
Get all dynamic field_factories for this and parent setups.
-
- (Object) dynamic_field_factory(field_name)
Return the DynamicFieldFactory with the given base name.
-
- (Object) field(field_name)
Return the Field with the given (public-facing) name.

-
- (Object) fields
Return all attribute fields.
-
- (Setup) initialize(clazz)
constructor
A new instance of Setup.
-
- (Object) more_like_this_fields(field_name)
Return one or more more_like_this fields (can be either attribute or text fields) for the given name.
-
- (Object) setup(&block)
Builder method for evaluating the setup DSL.
-
- (Object) stored_fields(field_name, dynamic_field_name = nil)
Return one or more stored fields (can be either attribute or text fields) for the given name.

-
- (Object) text_fields(field_name)
Return one or more text fields with the given public-facing name.
- - (Object) type_names
Constructor Details
- (Setup) initialize(clazz)
A new instance of Setup
8 9 10 11 12 13 14 15 16 17 18 |
# File 'sunspot/lib/sunspot/setup.rb', line 8 def initialize(clazz) @class_object_id = clazz.object_id @class_name = clazz.name @field_factories, @text_field_factories, @dynamic_field_factories, @field_factories_cache, @text_field_factories_cache, @dynamic_field_factories_cache = *Array.new(6) { Hash.new } @stored_field_factories_cache = Hash.new { |h, k| h[k] = [] } @more_like_this_field_factories_cache = Hash.new { |h, k| h[k] = [] } @dsl = DSL::Fields.new(self) add_field_factory(:class, Type::ClassType.instance) end |
Instance Attribute Details
- (Object) class_object_id (readonly)
:nodoc:
7 8 9 |
# File 'sunspot/lib/sunspot/setup.rb', line 7 def class_object_id @class_object_id end |
Class Method Details
+ (Object) for(clazz)
Retrieve the setup instance for the given class, or for the nearest ancestor that has a setup, if any.
Parameters
| clazz | Class for which to retrieve a setup |
Returns
| Sunspot::Setup | Setup instance associated with the given class or its nearest ancestor |
311 312 313 |
# File 'sunspot/lib/sunspot/setup.rb', line 311 def for(clazz) #:nodoc: setups[clazz.name.to_sym] || self.for(clazz.superclass) if clazz end |
+ (Object) setup(clazz, &block)
Retrieve or create the Setup instance for the given class, evaluating the given block to add to the setup’s configuration
294 295 296 |
# File 'sunspot/lib/sunspot/setup.rb', line 294 def setup(clazz, &block) #:nodoc: self.for!(clazz).setup(&block) end |
Instance Method Details
- (Object) add_document_boost(attr_name, &block)
Add a document boost to documents at index time. Document boost can be static (the same for all documents of this class), or extracted on a per- document basis using either attribute or block extraction as per usual.
85 86 87 88 89 90 91 92 93 94 95 96 |
# File 'sunspot/lib/sunspot/setup.rb', line 85 def add_document_boost(attr_name, &block) @document_boost_extractor = if attr_name if attr_name.respond_to?(:to_f) DataExtractor::Constant.new(attr_name) else DataExtractor::AttributeExtractor.new(attr_name) end else DataExtractor::BlockExtractor.new(&block) end end |
- (Object) add_dynamic_field_factory(name, type, options = {}, &block)
Add dynamic field_factories
Parameters
| field_factories | Array of dynamic field objects |
67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'sunspot/lib/sunspot/setup.rb', line 67 def add_dynamic_field_factory(name, type, = {}, &block) stored, more_like_this = [:stored], [:more_like_this] field_factory = FieldFactory::Dynamic.new(name, type, , &block) @dynamic_field_factories[field_factory.signature] = field_factory @dynamic_field_factories_cache[field_factory.name] = field_factory if stored @stored_field_factories_cache[field_factory.name] << field_factory end if more_like_this @more_like_this_field_factories_cache[field_factory.name] << field_factory end end |
- (Object) add_field_factory(name, type, options = {}, &block)
Add field factory for scope/ordering
27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'sunspot/lib/sunspot/setup.rb', line 27 def add_field_factory(name, type, = {}, &block) stored, more_like_this = [:stored], [:more_like_this] field_factory = FieldFactory::Static.new(name, type, , &block) @field_factories[field_factory.signature] = field_factory @field_factories_cache[field_factory.name] = field_factory if stored @stored_field_factories_cache[field_factory.name] << field_factory end if more_like_this @more_like_this_field_factories_cache[field_factory.name] << field_factory end end |
- (Object) add_text_field_factory(name, options = {}, &block)
Add field_factories for fulltext search
Parameters
| field_factories | Array of Sunspot::Field objects |
47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'sunspot/lib/sunspot/setup.rb', line 47 def add_text_field_factory(name, = {}, &block) stored, more_like_this = [:stored], [:more_like_this] field_factory = FieldFactory::Static.new(name, Type::TextType.instance, , &block) @text_field_factories[name] = field_factory @text_field_factories_cache[field_factory.name] = field_factory if stored @stored_field_factories_cache[field_factory.name] << field_factory end if more_like_this @more_like_this_field_factories_cache[field_factory.name] << field_factory end end |
- (Object) all_field_factories
Get all static, dynamic, and text field_factories associated with this setup as well as all inherited field_factories
Returns
| Array | Collection of all text and scope field_factories associated with this setup |
225 226 227 228 229 |
# File 'sunspot/lib/sunspot/setup.rb', line 225 def all_field_factories all_field_factories = [] all_field_factories.concat(field_factories).concat(text_field_factories).concat(dynamic_field_factories) all_field_factories end |
- (Object) all_more_like_this_fields
Return all more_like_this fields
188 189 190 191 192 |
# File 'sunspot/lib/sunspot/setup.rb', line 188 def all_more_like_this_fields @more_like_this_field_factories_cache.values.map do |field_factories| field_factories.map { |field_factory| field_factory.build } end.flatten end |
- (Object) all_text_fields
Return all text fields
181 182 183 |
# File 'sunspot/lib/sunspot/setup.rb', line 181 def all_text_fields text_field_factories.map { |text_field_factory| text_field_factory.build } end |
- (Object) clazz
Return the class associated with this setup.
Returns
| clazz | Class setup is configured for |
249 250 251 |
# File 'sunspot/lib/sunspot/setup.rb', line 249 def clazz Util.full_const_get(@class_name) end |
- (Object) document_boost_for(model)
Get the document boost for a given model
256 257 258 259 260 |
# File 'sunspot/lib/sunspot/setup.rb', line 256 def document_boost_for(model) if @document_boost_extractor @document_boost_extractor.value_for(model) end end |
- (Object) dynamic_field_factories
Get all dynamic field_factories for this and parent setups
Returns
| Array | Dynamic field_factories |
238 239 240 |
# File 'sunspot/lib/sunspot/setup.rb', line 238 def dynamic_field_factories collection_from_inheritable_hash(:dynamic_field_factories) end |
- (Object) dynamic_field_factory(field_name)
Return the DynamicFieldFactory with the given base name
164 165 166 167 168 169 |
# File 'sunspot/lib/sunspot/setup.rb', line 164 def dynamic_field_factory(field_name) @dynamic_field_factories_cache[field_name.to_sym] || raise( UnrecognizedFieldError, "No dynamic field configured for #{@class_name} with name '#{field_name}'" ) end |
- (Object) field(field_name)
Return the Field with the given (public-facing) name
108 109 110 111 112 113 114 115 116 117 |
# File 'sunspot/lib/sunspot/setup.rb', line 108 def field(field_name) if field_factory = @field_factories_cache[field_name.to_sym] field_factory.build else raise( UnrecognizedFieldError, "No field configured for #{@class_name} with name '#{field_name}'" ) end end |
- (Object) field_factories
Get the field_factories associated with this setup as well as all inherited field_factories
Returns
| Array | Collection of all field_factories associated with this setup |
201 202 203 |
# File 'sunspot/lib/sunspot/setup.rb', line 201 def field_factories collection_from_inheritable_hash(:field_factories) end |
- (Object) fields
Return all attribute fields
174 175 176 |
# File 'sunspot/lib/sunspot/setup.rb', line 174 def fields field_factories.map { |field_factory| field_factory.build } end |
- (Object) more_like_this_fields(field_name)
Return one or more more_like_this fields (can be either attribute or text fields) for the given name.
155 156 157 158 159 |
# File 'sunspot/lib/sunspot/setup.rb', line 155 def more_like_this_fields(field_name) @more_like_this_field_factories_cache[field_name.to_sym].map do |field_factory| field_factory.build end end |
- (Object) setup(&block)
Builder method for evaluating the setup DSL
101 102 103 |
# File 'sunspot/lib/sunspot/setup.rb', line 101 def setup(&block) Util.instance_eval_or_call(@dsl, &block) end |
- (Object) stored_fields(field_name, dynamic_field_name = nil)
Return one or more stored fields (can be either attribute or text fields) for the given name.
141 142 143 144 145 146 147 148 149 |
# File 'sunspot/lib/sunspot/setup.rb', line 141 def stored_fields(field_name, dynamic_field_name = nil) @stored_field_factories_cache[field_name.to_sym].map do |field_factory| if dynamic_field_name field_factory.build(dynamic_field_name) else field_factory.build end end end |
- (Object) text_field_factories
Get the text field_factories associated with this setup as well as all inherited text field_factories
Returns
| Array | Collection of all text field_factories associated with this setup |
213 214 215 |
# File 'sunspot/lib/sunspot/setup.rb', line 213 def text_field_factories collection_from_inheritable_hash(:text_field_factories) end |
- (Object) text_fields(field_name)
Return one or more text fields with the given public-facing name. This implementation will always return a single field (in an array), but CompositeSetup objects might return more than one.
124 125 126 127 128 129 130 131 132 133 134 135 |
# File 'sunspot/lib/sunspot/setup.rb', line 124 def text_fields(field_name) text_field = if field_factory = @text_field_factories_cache[field_name.to_sym] field_factory.build else raise( UnrecognizedFieldError, "No text field configured for #{@class_name} with name '#{field_name}'" ) end [text_field] end |
- (Object) type_names
20 21 22 |
# File 'sunspot/lib/sunspot/setup.rb', line 20 def type_names [@class_name] end |


{{numReviews}} review
{{numReviews}} reviews
{{item.description}}
Price: {{item.price | currency }}
A review is required
Your name is required
A star rating is required


OpenJava allows meta-programmer to extend the syntax of language in limited way. The easiest part of the syntax extension is adding new modifiers for class declaration or member declarations.
In this section, suppose an example of syntax extension for method declarations which explicitly describes the modified method should override the methed in superclasses. With this extension, base-level programmers can detect errors at compile-time. Otherwise, the regular Java compiler doesn't complain about it because it's proper method declaration defining a new method in the class.
In defining a new class which must override some methods in
superclasses, programmers would add the modifier overriding
to each method overriding the corresponding method in superclasses.
Here, we define a new class MyObject which surely overrides
the method toString() in the superclass java.lang.Object:
public class MyObject instantiates OverrideCheckerClass { public overriding String toString() { return "MyString"; } }
OpenJava compiler doesn't show any error message for this source code
as it overrides the supermethod properly. But the system should
show some error messages if the source code is as follows:
because there is no toStrung() method in the superclasses of the class MyObjectWithError.public class MyObjectWithError instantiates OverrideCheckerClass { public overriding String toStrung() { return "MyString"; } }
In this example, only the error checking is performed thus no translation
of source code are performed by the metaclass. Thus the system
should produce the source code in the regular Java like following for
the class MyObject:
public class MyObject { public String toString() { return "MyString"; } }
Only the difference from the original is the absense of the extended modifier overriding.
Extended modifiers are automatically removed by the
system in generating source code. Thus we do not have to care about
it here.
We should define such a metaclass OverrideCheckerClass
to override two methods. The first method:
is for the purpose of allowing the custom modifier overriding.public static boolean isRegisteredModifier(String)
And the second method is:
Though there are no translation, we must show alert in case of missing overriding.public void translateDefinition()
The source code following is a such implementation.
import openjava.mop.*; import openjava.ptree.*; public class OverrideCheckerClass instantiates Metaclass extends OJClass { private static final String OVERRIDING = "overriding"; public static boolean isRegisteredModifier( String keyword ) { if (keyword.equals( OVERRIDING )) return true; return OJClass.isRegisteredModifier( keyword ); } public void translateDefinition() throws MOPException { OJMethod[] methods = getDeclaredMethods(); for (int i = 0; i < methods.length; ++i) { if (! methods[i].getModifiers().has( OVERRIDING )) continue; String name = methods[i].getName(); OJClass[] ptypes = methods[i].getParameterTypes(); try { getSuperclass().getMethod( name, ptypes, this ); } catch (NoSuchMemberException e) { System.err.println( "warning: " + methods[i] + " doesn't " + "override any method in the superclasses." ); } } } }
In order to add a new modifier, we override the method isRegisteredModifier() and make it return true for the String object "overriding".


organizing idea-share
What are your dreams for the world?
What are your dreams for the way people relate to themselves, to one another, to the Earth, and to other aspects of the universe?


The Artful Escape re-emerges with a 2020 release date
by Aran SuddiThe Artful Escape first made an appearance during E3 2017 during Microsoft’s conference and may have kind of got lost in the shuffle at the time. Since then it’s been pretty quiet. The Artful Escape has appeared on lists to say it is enhanced for Xbox One X. Today, during XO19, The Artful Escape reappeared briefly as it was confirmed the game would be released in 2020.
The Artful Escape is based on taking hallucinogenics so you’ll have to wonder exactly how the research for the game was done. It looks pretty stylish and we’ll hopefully be learning more about the game in the near future.
Source: XO19


| Date | Meet | Location | Time | Results |
|---|---|---|---|---|
| 2-10-2022 | Mountain View All Commers (FAT) | Mountain View HS | 4:00 PM | |
| 2-16-2022 | Apalachee Home Meet | Apalachee HS | 4:00 PM | |
| 2-25-2022 | Ranch Races by the Lanier Longhorns (FAT) | Lanier HS | 4:00 PM | |
| 3-1-2022 | 9th and 10th Grade Invt | Mill Creek HS | 4:00 PM | |
| 3-3-2022 | All Comers(FAT) | Discovery HS | 4:00 PM | |
| 3-10-2022 |
Welcome to the Ranch IV By Lanier Longorns
(FAT)
SENIOR NIGHT |
Lanier HS | 4:00 PM | |
| 3-16-2022 | Grayson All-Comers 4 | Grayson HS | 4:00 PM | |
| 3-18-2022 | North Gwinnett Friday Night Twilight | North Gwinnett HS | 4:00 PM | |
| 3-26-2022 - 3-28-2022 | Gwinnett County Championships (ALL) | Collins Hill HS | TBA | |
| 4-1-2022 | Lanier Fast and Furious Track Meet | Lanier HS | TBA | |
| 4-4-2022 | Spring Break | --- | --- | --- |
| 4-8-2022 | Spring Break | --- | --- | --- |
| 4-16-2022 | Dexter Woods Invt | North Gwinnett HS | 8:00 AM | |
| 4-26-2022 | 8AAAAAA Region Track Championship | Haberesham HS | 11:00 AM | |
| 4-28-2022 | 8AAAAAA Region Track Championship | Haberesham HS | 11:00 AM | |
| 5-7-2022 | 8AAAAAA Sectional Meet | River Ridge HS Woodstock, GA | 8:00 AM | |
| 5-12-2022 | Georgia 6A State Track Championship | Carrollton HS | 12:00 PM | |
| 5-13-2022 | Georgia 6A State Track Championship | Carrollton HS | 12:00 PM | |
| 5-14-2022 | Georgia 6A State Track Championship | Carrollton HS | 12:00 PM |


DECORATION TYPE
Beads
KES.300
ITEM PRICE
GET TOTAL
Brass
KES.300
ITEM PRICE
GET TOTAL
Engraving
KES.400
ITEM PRICE
GET TOTAL
Brass
KES.300
GET TOTAL
Wallets
Decoration Types
Beads
Brass
Brass
Engraving


Statement interface.
Drivers must implement this interface.
This resembles (a subset of) the PDOStatement interface.
| author |
Konsta Vesterinen<EMAIL_ADDRESS>|
|---|---|
| author |
Roman Borschel<EMAIL_ADDRESS>|
| link |
www.doctrine-project.org |
| since | 2.0 |
| package |
Default |
bindParam(mixed $column, mixed &$variable, integer|null $type = null, integer|null $length = null) : boolean
As mentioned above, the named parameters are not natively supported by the mysqli driver, use executeQuery(), fetchAll(), fetchArray(), fetchColumn(), fetchAssoc() methods to have the named parameter emulated by doctrine.
Most parameters are input parameters, that is, parameters that are used in a read-only fashion to build up the query. Some drivers support the invocation of stored procedures that return data as output parameters, and some also as input/output parameters that both send in data and are updated to receive it.
mixed
Parameter identifier. For a prepared statement using named placeholders, this will be a parameter name of the form :name. For a prepared statement using question mark placeholders, this will be the 1-indexed position of the parameter.
mixed
Name of the PHP variable to bind to the SQL statement parameter.
integer|null
Explicit data type for the parameter using the PDO::PARAM_* constants. To return an INOUT parameter from a stored procedure, use the bitwise OR operator to set the PDO::PARAM_INPUT_OUTPUT bits for the data_type parameter.
integer|null
You must specify maxlength when using an OUT bind so that PHP allocates enough memory to hold the returned value.
boolean
TRUE on success or FALSE on failure.
bindValue(mixed $param, mixed $value, integer $type = null) : boolean
As mentioned above, the named parameters are not natively supported by the mysqli driver, use executeQuery(), fetchAll(), fetchArray(), fetchColumn(), fetchAssoc() methods to have the named parameter emulated by doctrine.
mixed
Parameter identifier. For a prepared statement using named placeholders, this will be a parameter name of the form :name. For a prepared statement using question mark placeholders, this will be the 1-indexed position of the parameter.
mixed
The value to bind to the parameter.
integer
Explicit data type for the parameter using the PDO::PARAM_* constants.
boolean
TRUE on success or FALSE on failure.
closeCursor() : boolean
boolean
TRUE on success or FALSE on failure.
columnCount() : integer
integer
The number of columns in the result set represented by the PDOStatement object. If there is no result set, this method should return 0.
errorCode() : string
| see | \Doctrine\DBAL\Driver\Doctrine_Adapter_Interface::errorCode() |
|---|---|
string
The error code string.
errorInfo() : array
| see | \Doctrine\DBAL\Driver\Doctrine_Adapter_Interface::errorInfo() |
|---|---|
array
The error info array.
execute(array|null $params = null) : boolean
If the prepared statement included parameter markers, you must either: call PDOStatement->bindParam() to bind PHP variables to the parameter markers: bound variables pass their value as input and receive the output value, if any, of their associated parameter markers or pass an array of input-only parameter values.
array|null
An array of values with as many elements as there are bound parameters in the SQL statement being executed.
boolean
TRUE on success or FALSE on failure.
fetch(integer|null $fetchMode = null) : mixed
| see |
\Doctrine\DBAL\Driver\PDO::FETCH_*
constants. |
|---|
integer|null
Controls how the next row will be returned to the caller. The value must be one of the PDO::FETCH_* constants, defaulting to PDO::FETCH_BOTH.
mixed
The return value of this method on success depends on the fetch mode. In all cases, FALSE is returned on failure.
fetchAll(integer|null $fetchMode = null) : array
| see |
\Doctrine\DBAL\Driver\PDO::FETCH_*
constants. |
|---|
integer|null
Controls how the next row will be returned to the caller. The value must be one of the PDO::FETCH_* constants, defaulting to PDO::FETCH_BOTH.
array
fetchColumn(integer $columnIndex) : string|boolean
integer
0-indexed number of the column you wish to retrieve from the row. If no value is supplied, PDOStatement->fetchColumn() fetches the first column.
string|boolean
A single column in the next row of a result set, or FALSE if there are no more rows.
rowCount() : integer
If the last SQL statement executed by the associated Statement object was a SELECT statement, some databases may return the number of rows returned by that statement. However, this behaviour is not guaranteed for all databases and should not be relied on for portable applications.
integer
The number of rows.
setFetchMode(integer $fetchMode, mixed $arg2 = null, mixed $arg3 = null) : boolean
| see |
\Doctrine\DBAL\Driver\PDO::FETCH_*
constants. |
|---|
integer
The fetch mode must be one of the PDO::FETCH_* constants.
mixed
mixed
boolean


The Shared desktop ontologies provide RDF vocabularies for the Semantic Desktop. This includes basic ontologies like RDF and RDFS and all the Nepomuk ontologies like NRL, NIE, and NFO, which are also maintained and developed in this open-source project.
This package is known to build and work properly using an LFS-7.4 platform.
Download (HTTP): http://downloads.sourceforge.net/oscaf/shared-desktop-ontologies-0.11.0.tar.bz2
Download MD5 sum: db75d155ac9b60e3d187e23544744acc
Download size: 3.8 MB
Estimated disk space required: 6.7 MB
Estimated build time: less than 0.1 SBU
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/shared-desktop-ontologies
Install Shared-desktop-ontologies by running the following commands:
mkdir build && cd build && cmake -DCMAKE_INSTALL_PREFIX=$KDE_PREFIX ..
This package does not come with a test suite.
Now, as the root
user:
make install
Last updated on 2013-08-26 10:26:25 -0700


The sensor API only works on devices which have the sensors and provide access to them, and when served via HTTPS.


Introduction¶
Welcome to the Ring programming language!
Ring is an Innovative and practical general-purpose multi-paradigm language that can be embedded in C/C++ projects, extended using C/C++ code and/or used as standalone language. The supported programming paradigms are Imperative, Procedural, Object-Oriented, Functional, Meta programming, Declarative programming using nested structures, and Natural programming. The language is portable (Windows, Linux, macOS, Android, etc.) and can be used to create Console, GUI, Web, Games and Mobile applications. The language is designed to be Simple, Small, Flexible and Fast. Its Dynamic Language (Dynamic Typing and Weakly Typed) that compile the source code to byte code then execute it by the Ring Virtual Machine, which is integrated with the Ring Compiler in one program.
In this chapter we are going to discuss the goals behind the language design and implementation.
Motivation¶
In Nov. 2011, I started to think about creating a new version of the Programming Without Coding Technology (PWCT) software from scratch.
I was interested in creating multi-platform edition of the software beside adding support for Web & Mobile development. Most of the PWCT source code was written in VFP and the software comes with a simple scripting language for creating the components called (RPWI). The software contains components that support code generation in programming languages like Harbour, C, Supernova & Python.
What I was looking for is a programming language that can be used to build the development environment, provides multi-platform support, more productivity, better performance, can be used for components scripting & can be used for developing different kinds of applications.
Instead of using a mix of programming languages, I decided to use one programming language for creating the development environment, for components scripting & for creating the applications.
I looked at many programming languages like C, C++, Java, C#, Lua, PHP, Python & Ruby. I avoided using C or C++ directly because I want high-level of productivity more than the level provided by these languages, also a language behind visual programming environment for novice programmers or professionals must be easy to use & productive.
Java & C# are avoided for some reason too! I wanted to use a dynamic programming language and these languages are static typing, Java is multi-platform, also C# through Mono, but the use of huge number of classes and forcing the use of Object-Orientation, using a verbose language is not right for me. I need a small language, but fast and productive, also I need better control on the Garbage Collector (GC), I need a better one that is designed for fast applications.
Lua is small and fast, but it’s avoided because I need more powerful language for large applications.
PHP is a Web programming language and it’s syntax is very similar to C, this leads to a language not general as I want and not simple as I need to have.
Python & Ruby are more like what I need, but I need something more simple, smaller, faster & productive.
Python and Ruby are Case-Sensitive, the list index start counting from 0, you have to define the function before calling it, Ruby usage of Object-Orientation and message passing is more than what I need and decrease performance, Python syntax (indentation, using self, :, pass & _) is not good for my goals.
All of these languages are successful languages, and very good for their domains, but what I need is a different language that comes with new ideas and intelligent implementation (Innovative, Ready, Simple, Small, Flexible and Fast).
Ring and other languages¶
Ring is an innovative programming language that comes with better support for Natural Language Programming and Declarative Programming. The innovation comes in supporting these paradigms with new practical techniques on the top of Object-Oriented Programming and Functional Programming.
Also Ring is influenced by the next programming languages
- Lua
- Python
- Ruby
- C
- C#
- BASIC
- QML
- xBase
- Supernova
Special Thanks to Matz¶
Special Thanks to Matz (Yukihiro Matsumoto - The Creator of Ruby Programming Language) for spreading the word.
History¶
In Sept. 2013 I started the design and the implementation of the Ring programming language. After 21 months of development, In May 2015 the language Compiler & Virtual Machine were ready for use!
After that I spent three months testing the language again, trying to discover any bug to fix, writing better tests, by the end of August 2015, all know bugs were fixed, Writing many tests and testing automation helped a lot in getting a stable product.
In September 12, 2015, most of the documentation was written. Before releasing the language I started the marketing by writing a post in Arabic language about it to my facebook profile page asking for contributors interested in the language idea after reading a short description, In the same day I got a lot of emails from developers and friends interested to contribute!
Ring 1.0 is released on January 25, 2016
Ring 1.1 is released on October 6, 2016
Ring 1.2 is released on January 25, 2017
Ring 1.3 is released on May 15, 2017
Ring 1.4 is released on June 29, 2017
Ring 1.5 is released on August 21, 2017
Ring 1.6 is released on November 30, 2017
Ring 1.7 is released on January 25, 2018
Ring 1.8 is released on June 25, 2018
Ring 1.9 is released on October 6, 2018
Ring 1.10 is released on January 25, 2019
Features¶
The Ring language comes with the next features
Tip
The language is ready for production!
Free Open Source (MIT License)
Hybrid Implementation (Compiler + Virtual Machine)
Declarative programming on the top of Object-Oriented programming
Natural Language Programming on the top of Object-Oriented programming
Natural Language Programming Library
Three different styles for writing the code and you can create your style
Syntax Flexibility (You can change the language keywords and operators)
The language keywords can be translated from English to other languages (Arabic, French, etc)
Compact Syntax, No explicit end for statements (No ; or ENTER is required)
Using braces { } we can access objects and use attributes/methods as variables/functions
Transparent Implementation (See the Tokens, Grammar, and Byte Code for each program)
Visual Implementation - Developed using Visual Programming (PWCT)
Writen in ANSI C (The code is generated + Looks identical to Handwritten Code)
- A small language
- The compiler + The Virtual Machine (20,000 lines of C code)
- The other 500,000 lines of code are related to libraries!
Portable (Windows, Linux, macOS, Android, etc)
Comments (One line & Multi-lines)
Not Case-Sensitive
Dynamic Typing
Weakly typed (Automatic conversion between numbers and strings only)
Lexical Scoping (Global, Local & Object State)
Default scope for variables inside functions (Local)
Default scope for variables outside functions (global)
We can have separate global scope for each library or sub project
Garbage Collector - Automatic Memory Management (Escape Analysis and Reference Counting)
In most cases (90%) using Escape Analysis we don’t need to run the Garbage Collector (Faster)
Structure Programming
Rich control structures & Operators
For in get item by reference not value, you can read/edit the item
Use exit to go outside from more than one loop (Use it for programming in the small only)
Use exit to go outside from loop in the Caller function (Use it for programming in the small only)
Procedures/Functions
Main Function (Optional - To avoid using the Global Scope)
Call Function before the definition (Top-Down Programming)
Recursion
Multi-line literals
Access (read/write) string letter by index
The list index start by 1
No keyword to end Functions/Classes/Packages
Range operator ex: 1:10 and “a”:”z”
First Class Variables, Lists, Objects and Functions
Store/Copy Lists/Objects by value (Deep Copy)
Pass Lists/Objects by reference
Native Object-Oriented Support
- Encapsulation
- Setter/Getter (optional)
- private state (optional)
- Instantiation
- Polymorphism
- Composition
- Inheritance (Single Inheritance)
- Operator Overloading
- Packages
Reflection and Meta-programming
Clear program structure (Statements then functions then packages & classes)
Exception Handling
Eval() to execute code during run-time
8-bit clean, work on binary data directly
I/O commands
Math functions
String functions
List functions
File processing functions
Database support (ODBC, SQLite, MySQL & PostgreSQL)
Security Functions (OpenSSL)
Internet Functions (LibCurl)
Zip Functions
CGI Library (Written in Ring)
- HTTP Get
- HTTP Post
- File upload
- Cookies
- URL Encode
- HTML Templates
- HTML Special Characters
- HTML Generation using Functions
- HTML Generation using Classes
- CRUD Example (using MVC)
- Users Example (Register, Login and Check)
Deploying web applications in the Cloud
Extension using C/C++ (Simple API)
Embedding the language in C/C++ programs
Embedding Ring in Ring
- Comes with code generator (Written in Ring) to quickly wrap C/C++ Libraries
- Used to Support Allegro by creating RingAllegro
- Used to Support LibSDL by creating RingLibSDL
- Used to Support Qt by creating RingQt
Create 2D Games for Desktop and Mobile (Using the Allegro Library)
RingLibSDL Extension
Comes with simple Game Engine for 2D Games
RingOpenGL Extension
RingFreeGLUT Extension
Create GUI Applications for Desktop and Mobile (Using the Qt Framework)
Comes with IDE contains the Code Editor (Ring Notepad) and the Form Designer
RingREPL (Read-Eval-Print-Loop)
Tracing and Debugging
Type Hints Library
Comes with Ring2EXE to distribute applications
RingLibuv Extension
No Global Interpreter (VM) lock (No GIL) - Better for threads and concurrency (Faster)
Comes with RingPM (Package Manager)
Many Samples and Applications
Complete Documentation.
License¶
The Ring Programming Language
Version 1.10
The MIT License (MIT)
Copyright (c) Mahmoud Fayed
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


Contact Form
Enter your data
Fill your details
First Name:
Last Name:
Date:
Phone no:
Saved Data
Firstname
Lastname
Date
Phone no
Deleted Details
Firstname
Lastname
Address
Phone no
My previous assignments
Google
Sample Google Page
VoR
A page dedicated to a popular blog View of Reality
Agile Cafe
A sample poster of Agile Cafe 2014, desgined by me


A collection of Irucka Embry's miscellaneous functions
(Engineering Economics, Civil & Environmental/Water Resources Engineering,
Geometry, Statistics, GNU Octave length functions, Trigonometric functions
in degrees, etc.).
| Version: |
0.9.7 |
| Depends: |
R (≥ 3.0.0), stats, data.table (≥ 1.10.2) |
| Imports: |
zoo, pracma, iemiscdata, import, gsubfn (≥ 0.7), fpCompare, listless, units, CHNOSZ, IAPWS95, testit, stringi, rgdal, sp |
| Suggests: |
install.load, ie2misc, Rcpp (≥ 0.11.5), NISTunits, financial, optiRum, rivr, knitr, rmarkdown, testthat, ramify |
| Published: |
2018-05-16 |
| Author: |
Irucka Embry [aut, cre], Felix Andrews [aut, ctb] (zoo code), Hans
Werner Borchers [aut, ctb] (pracma code), Samit Basu [aut, ctb]
(FreeMat code), David Bateman [aut, ctb] (GNU Octave code), Rik Wehbring
[aut, ctb] (GNU Octave code) |
| Maintainer: |
Irucka Embry <iembry at ecoccs.com> |
| BugReports: |
https://gitlab.com/iembry/iemisc/issues |
| License: |
GPL (≥ 3) |
| URL: |
https://gitlab.com/iembry/iemisc |
| NeedsCompilation: |
no |
| Citation: |
iemisc citation info |
| Materials: |
README NEWS |
| CRAN checks: |
iemisc results |


1. About¶
Note
BEAM stands for Bogdan/Björn’s Erlang Abstract Machine.
1.1. Introduction¶
This project is an attempt to make the Erlang/OTP framework more approachable and re-programmable in a manner which otherwise is complex. Although, Erlang supports hot code-loading and many of the advanced constructs, but using that correctly is not without complexities. This project tries to take some simple decisions thereby making the life of developer easy in realising dynamic code patching and reprogrammability. This project can be used as a standalone engine or can be embedded in another Erlang project, while much of what will be demonstrated is based out of its standalone deployment.
Note
Documentation and testing is lacking, but you will see some action both of these fronts. Till then happy hacking around. Additionally, you are most welcome to make contributions.
1.2. Motivations¶
1.3. Architecture¶
The websocket interface is provided to train the system, while Google LevelDB is used for storing and retrieving Erlang functions. Additionally, the functions are cached in memory, so subsequent invocation shall be much faster.
At present there is no restriction on function execution, so anyone with access can simply run any function available within this framework. Having said that there is HTTP Basic authentication both at websocket and HTTPS REST interface for simple checks. But once you are authenticated all the functions are available for execution.
1.3.1. Components¶
The framework has the following components:
- core - Set of utilities for running Erlang/OTP functions.
- websocket - A simple websocket interface to train beampacket and tell it about functions.
- https rest - A HTTPS REST interface, where the functions defined through the websocket interface are served as endpoint (HTTP POST with application/json body).
- storage - There is a local Google leveldb which is extensively used primarily to meet the time-to-market requirement. This shall change as time progresses towards a better strategy.
1.4. The Future¶
It is very hard to predict where this project will move on. This is a very humble beginning, where it is not entirely clear how this project shall find use in the larger audience.
1.5. Similar Projects¶
We are not aware of projects which tries to do this as-it-is, but then intenet is too vast for us to comment. Do leave a comment in case you find any similar open source or commercial projects.
1.6. Deployment¶
1.6.1. Software Dependencies¶
This framework supports Gnu/Linux and MacOSX operating system, but with little change it can be made to build on any of the POSIX compliant operating system when Erlang/OTP is available. This project depends upon a lot of open source dependencies, which are listed in rebar.config.
1.6.2. Development Environment Setup¶
Although the installation for various GNU/Linux distributions differ but the dependencies are easily available on any one of them.
<IP_ADDRESS>. Ubuntu or Debian¶
The following commands were tested on Ubuntu 16.04 and Debian 9 but things should be similar (if not same) on other releases and Debian.
The following commands needs to be as a system administrator or with sudo (as shown below) so that the relavent packages are installed in the system.
If your system is not updated then probably it is a good idea to do that before installing anything else.
sudo apt-get update
Install the build essential and deps for Erlang/OTP
sudo apt-get install -y wget build-essentials libsctp1 libwxgtk3.0
Get Erlang/OTP 20+ from ErlangSolutions at https://www.erlang-solutions.com/resources/download.html
Say you downloaded Erlang/OTP 20.1 then install it for ubuntu as follows:
wget https://packages.erlang-solutions.com/erlang/esl-erlang/FLAVOUR_1_general/esl-erlang_20.1-1~ubuntu~xenial_amd64.deb sudo dpkg -i esl-erlang_20.1-1~ubuntu~xenial_amd64.deb
Alternatively, you can install the erlang from Ubuntu or Debian repo as well.
1.6.3. Build and Test¶
After you are done setting up the development environment the build is pretty straight-forward (see below).
git clone https://github.com/beamparticle/beamparticle cd beamparticle make release
In case you want to build a package then use the deb-package makefile target towards the same (see below).
make deb-package
1.7. Browser Support¶
- Chrome
- Firefox
Note that Safari do not work due to bug#80362. The request from Safari do not include the Authorization header, which is the source of an issue.
1.8. Thanks¶
Thanks for evaluating and contributing to this project. Hope you find it useful. Feel free to create issues for bugs or new features.
Erlang/OTP is a very old programming language and a very powerful one as well (though under utilized). The objective of the framework is to try to leverage some part of the power and give back to the community a reprogrammable engine with the power of BEAM.
A special note of thanks to redBus for being the first in integrating it within its production environment and allowing github:neeraj9 to introduce this to a much larger audience.
1.9. Authors¶
- Neeraj Sharma (neeraj.sharma@alumni.iitg.ernet.in)


Name: Olga Coskun
Nationality: Russian
Address: Istanbul, Turkey
Ruby / Ruby on Rails: MVC, OOP, REST, SOLID, Code Style, RSpec, Minitest
Microservices: API, JSON, JWT, Swagger, Interactors, Serializers, Dry-rb, Postman, Sidekiq
Front end: HTML5, CSS3, Bootstrap, Skeleton, JavaScript
SQL: PostgreSQL
Git
DevOps: VDS, Capistrano, NGINX, Passenger, DigitalOcean, Heroku, Cloudinary, Docker, Kubernetes
Linux: Ubuntu
Others: XML, Python, Pascal
July 2023. "Kubernetes для пользователей" (certificate), "stepic.org"
July 2023. "Docker для начинающих + практический опыт" (certificate), "stepic.org"
July 2023. "Анализ безопасности веб-проектов" (certificate), "stepic.org"
May 2023. Course "QA Postman API" (certificate), "stepic.org"
February 2022. Томский политехнический университет", "Томография: увидеть невидимое".
September 2021. Свидетельство "Школа Нервно-мышечных болезней им. Б.М. Гехта", "Школа Нервно-мышечных болезней им. Б.М. Гехта".
August 2019. Course "Divide and Conquer, Sorting and Searching, and Randomized Algorithms", "Stanford University".
July 2019. Course "Verb Tenses and Passives", "University of California Irvine Extension".
June 2019. Course "Perfect Tenses and Modals", "University of California Irvine Extension".
March 2019. Course "Rails with Active Record and Action Pack", "John Hopkins University".
March 2019. Course "Ruby on Rails: An Introduction", "John Hopkins University".
January — June 2018. Course "Ruby on Rails crash course", "Good Programmer".
December 2017 — January 2018. Course "Ruby on Rails development"(certificate), INTUIT National Open University.
January 2018. Course "English" (certificate), NTUIT National Open University.
August 2017. Course "Ruby Tutorial course" (certificate), "SOLOLEARN".
October 2016. Course "Javascript. Level 1. Web-Development fundamentals" (certificate), "Computer Training Center at Bauman Moscow State Technical University".
August 2016. Course "HTML and CSS. Level 1. Creation of sites in HTML5 and CSS3" (certificate), "Computer Training Center at Bauman Moscow State Technical University".
August 2016. Course "HTML Fundamentls course" (certificate), "SOLOLEARN"
Julay 2016. Course "Python Development" (certificate), "stepic.org"
February 2013. Exam from Microsoft. "Microsoft Dynamics NAV 2009 Applications for Microsoft Dynamics NAV 2009 (certificate)
February 2013. Exam from Microsoft. "Microsoft Dynamics NAV 2009 Warehouse Management (certificate)
February 2013. Exam from Microsoft. "Microsoft Dynamics NAV 2009 Manufacturing (certificate)
January 2013. Exam from Microsoft. "Microsoft Dynamics NAV 2009 Trade and Inventory (certificate)
February 2013. Exam from Microsoft. "Microsoft Dynamics NAV 2009 Core Setup and Finance (certificate)
December 2010. Course "M2780 Maintaining a Microsoft SQL Server 2005 Database" (certificate), "Computer Training Center at Bauman Moscow State Technical University".
December 2006. Course "Microsoft Windows 2000 Network & Operating System Essentials" (certificate), "Computer Training Center at Bauman Moscow State Technical University".
Ruby on Rails developer
June 2021 -May 2022
Medical clinic. USA. Remote.
Improvement of functionality at the request of the customer.
Writing capybara tests.
Localization of the application into other languages.
Bug fixes.
Integration with external services.
Working with the protocol HL7.
Ruby on Rails developer
Mart 2021 - June 2021
Siri. Moscow. Remote.
I created new microservice, also improved and developed others.
In my work I used API, JSON, JWT, Swagger, Interactors, Serializers, Dry-rb, Postman, AASM, Sidekiq, Kubernetes.
Full stack developer
Mart 2020 - February 2021
Medical clinic. Moscow. Remote.
I built application from zero. The application for patient's appointments. Admin part used for doctors. There are special schedule for every doctor. Separate offices for doctors. Loading documents. Notices for doctors and patients.
Frontend - bootstrap, js.
Backend - Ruby on Rails.
I made all settings and deploy VDS hosting, cloud storage.
I used Cron for background tasks.
Rspec tests, user's support.
Ruby on Rails developer
September 2019 - February 2020
Internet market. Moscow. Remote.
Localization of the application into Turkish.
Covering the application with tests.
Perform other tasks as requested by the customer.
Fix bugs.
Consultant of Axapta and Navision
May 2012 - January 2014.
Columbus IT Partner Russia. Moscow, Russia.
NAV 5 - support users of Company "Royal Canin"(The food for dogs and cats): Finance, logistic, warehouse, user's
Settings, create user's manuals, teaching
AX 2009 - support users of food-retail for 2 supermarkets "SPAR", "Partner": logistic, warehouse, user's settings, create
User's manuals, technical tasks for programming, AOT, testing jobs.
Consultant of Navision
December 2011 - May 2012.
Impact-soft. Moscow, Russia.
Assistance in the technical specifications Development
Customer training
Setup program for the client
Consultant of Navision
May 2008 - December 2011.
SIM-Yaroslavl -(official mark MAZDA, RENAUTL, SUZUKI, HYUNDAI). Yaroslavl, Russia.
Administration of MS Navision
Setting up User Rights in the operating environment and specialized software
Staff training and implementation of control measures
Maintain continuous operation of servers and workstations
Manage contracts for telecommunications network, the Internet and printers
Finance Manager
January 2007 - January 2008.
Czech Insurance Company, Yaroslavl, Russia.
Provide financial support nat. persons
Life Insurance
Advising on Pensions
Medical Insurance
Children and Family Insuranc.
Address issues related to the protection and promotion of family.
Loan officer
January 2005 - January 2007.
Home Credit and Finance bank. Kostroma, Russia.
Consumer lending nat. persons
Advise clients on banking products
Introduce banking services
Arrange loans for goods, credit or cash
Plastic cards
Shop manager
January 2004 - January 2005.
Computer's shop. Kostroma, Russia.
Advise clients on the purchase computer and office technology
Maintain documentation of sales; work with databases
Negotiate with suppliers for the supply of items
Credits from banks
Build/set up new computers, install operating systems/software; warranty service/repair.
Administration gaming and Internet servers
Communications Dept. Manager
January 2003 - January 2004.
Internet and phone company. Kostroma, Russia.
Prepare contracts for communication services
Advise clients on available services
Advise on Internet & IP-telephony settings
Maintain clients & communication services database
Interact with government organizations
Kostroma State University, 1999 – 2004.
Academy, Faculty of Economics.
Obtained diploma of higher education in Management(Master Degree).
Russian - native
English - Intermediate(fluent)
Turkish - B1.


Survey Questions
About You
Name (Required)
Link to Photo Image (Required)
Question 1
Being in a hospital for long periods of time doesn't bother you.
1 (Strongly Agree)
2
3
4
5 (Strongly Disagree)
Question 2
The sight of blood makes you feel uneasy.
1 (Strongly Agree)
2
3
4
5 (Strongly Disagree)
Question 3
You do not like needles.
1 (Strongly Agree)
2
3
4
5 (Strongly Disagree)
Question 4
Hospital cafeteria food is awesome!
1 (Strongly Agree)
2
3
4
5 (Strongly Disagree)
Question 5
Sixteen hour shifts do not bother you.
1 (Strongly Agree)
2
3
4
5 (Strongly Disagree)
Question 6
Seattle is an amazing city to live in.
1 (Strongly Agree)
2
3
4
5 (Strongly Disagree)
Question 7
You prefer to take care of others before yourself.
1 (Strongly Agree)
2
3
4
5 (Strongly Disagree)
Question 8
You work well in teams.
1 (Strongly Agree)
2
3
4
5 (Strongly Disagree)
Question 9
You would date a co-worker.
1 (Strongly Agree)
2
3
4
5 (Strongly Disagree)
Question 10
You love the rush of adrenaline!
1 (Strongly Agree)
2
3
4
5 (Strongly Disagree)
Submit
Closest Friend Match


And king David himself followed the bier.


Welcome world!
I'm Inaara Ali, a senior at Emory University majoring in Data Science (QSS), concentrating in Anthropology and double majoring in International Studies. A lifelong creative writer and enthusiast of comparative cultures and politics, I love to tell stories. In particular, I enjoy uncovering and communicating the hidden stories found within data after extracting insight.
Tell Me More


|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object de.uni.bamberg.wiai.minf.forflow.datagenerator.controller.datageneration.filltype.Interval
public class Interval
Interval implements FillBehaviour
0 ≤ x ≤ 20
is an interval
which contains 0 and 20, as well as all numbers
between them.
An interval can be described as:
[x, y]
. The two
numbers are called the endpoints of the interval.
To distinguish between between the upper and lower endpoint, we
call them upper bound and lower bound.
Notation of intervals
To indicate that one of the endpoints is to be excluded from the set,
we use the following notation:
]x, y[ = {z | x < z < y}
[x, y[ = {z | x ≤ z < y}
]x, y] = {z | x < z ≤ y}
[x, y] = {z | x ≤ z ≤ y}
Observable
Notice, the class implements FillBehaviour
interface.
It makes this kind of strategy observable.
Observable means in this context, whenever an observer
registers to or un-registers from this class, the subject
itself notifies the UI to register this class in a specific
list of generators.
| Constructor Summary | |
|---|---|
Interval()
default constructor set the interval to integer values. |
| Method Summary | |
|---|---|
int |
calculateN(java.net.URI file)
this method is not used here and therefore throws an UnsupportedOperationException . |
int[] |
getEndpointsOfInterval()
returns the current interval for an attribute as an array of length two. |
int |
getIntervalSteps()
gets the interval stepping |
IntervalType |
getIntervalTyp()
gets the interval type. |
int |
getLowerBound()
gets the lower bound endpoint. |
int |
getN()
each filling behaviour whether it is via a value file, an interval or by editor each of them has a range of values. |
java.lang.String |
getName()
gets the name of this filling. |
int |
getUpperBound()
gets the upper bound endpoint. |
java.lang.String |
getValueAt(int n)
this method has the job of retrieving the value at the specified index. |
void |
notifyOberverFillBehaviour()
Here's the fun part; this is where we tell all observers about the state. |
void |
registerObserverFillBehaviour(ObserverFillBehaviour observer)
When an observer registers, it's just added to the end of an observer list. |
void |
removeObserverFillBehaviour(ObserverFillBehaviour observer)
Likewise, when an observer wants to un-register we just take it off the list. |
boolean |
setInterval(java.lang.String interval)
sets the interval of a given attribute (facet). |
void |
setIntervalSteps(int steps)
sets the interval stepping by the given parameter |
void |
setIntervalType(IntervalType intervalType)
sets the interval type. |
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public Interval()
| Method Detail |
|---|
public boolean setInterval(java.lang.String interval)
]a, b[ → ]0, 15[
[a, b[ → [1, 15[
]a, b] → ]0, 14]
[a, b] → [1, 14]
interval
- the interval is given as a string, 'cos
we need the brackets to indicate the case.
public final int[] getEndpointsOfInterval()
public final int getLowerBound()
public final int getUpperBound()
public void setIntervalSteps(int steps)
steps
- sets the steppingpublic final int getIntervalSteps()
public void setIntervalType(IntervalType intervalType)
intervalType
- integer or double valuespublic final IntervalType getIntervalTyp()
public final int calculateN(java.net.URI file)
UnsupportedOperationException
.
This method is not applicable for intervals so
an alternative method does the job.
calculateN
in interface FillBehaviour
file
- the path to the file to calc the values
calculateN(int, int)
public final int getN()
FillBehaviour
f(x) | | |------------ (1/N) | | |___________|______ N values
getN
in interface FillBehaviour
public final java.lang.String getValueAt(int n)
FillBehaviour
getValueAt
in interface FillBehaviour
n
- the index specifies the value at position n to retrieve.
public final java.lang.String getName()
FillBehaviour
getName
in interface FillBehaviour
public void registerObserverFillBehaviour(ObserverFillBehaviour observer)
ObservableFillBehaviour
registerObserverFillBehaviour
in interface ObservableFillBehaviour
observer
- an object to notify about changespublic void removeObserverFillBehaviour(ObserverFillBehaviour observer)
ObservableFillBehaviour
removeObserverFillBehaviour
in interface ObservableFillBehaviour
observer
- an object which doesn't want any notifications anymore.public void notifyOberverFillBehaviour()
ObservableFillBehaviour
notifyOberverFillBehaviour
in interface ObservableFillBehaviour
public final java.lang.String toString()
toString
in class java.lang.Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


Here's What I Do
Since 2010 working with Email Marketing, I specialize in every subject of it.
- eCRM;
- Automation of Email Marketing campaigns
- Return Path tools and sender certification process to optimize delivery and deliverability
- Advanced knowledge in trigger tools of some major ESPs, such as Experian, Emailvision (Smart Focus) and Exact Target
- In all projects of eCRM that I'm involved, I always try to focus on three points, which are the sales, relationship, and enrichment of the database information


--- layout: default title: "404: Page not found" permalink: 404.html ---
Sorry, I have misplaced that URL or it's pointing to something that doesn't exist. Click here to head back home.


This guide will provide description for the views that comes with this application and steps on how to create additional correlation searches.
Each cell containing a technique is colored based on the percentage of enabled correlation searches.
If there isn’t any related correlation searches, the cell is left uncolored.
If there are available correlation searches within Enterprise Security (and ESCU), then cells are colored based on percentage of enabled/active ones.
Currently the ranges are set as follows:
You can mouse over to the cells that contain techniques in order to view the number of available and enabled correlation rules that are specific to that technique.
This dashboard/form has filtering options based on “Event Time Range” and “Urgency” level of Notable Events. It provides and overview of triggered techniques within MITRE ATT&CK Matrix colored according to the “Urgency” level of Notable Events.
You can click on the triggered technique which provides the drill-down functionality and opens up Enterprise Security App Incident Review view for further analysis/investigation.
This dashboard/form provides an overview of triggered rules based on MITRE ATT&CK Tactics and Notable assets/identities. This is an effort to provide a better visibility for a notable asset/identity journey through MITRE ATT&CK Framework. The number of triggered Notable Events according to MITRE ATT&CK techniques are aggregated by Notable Assets where notable_asset
is populated by src
, dest
or user
from related Data Models.
Currently following panels are available:
There are 2 ways to accomplish this task.
mitre_user_rule_technique_lookup.csv
file.The view in the application utilized Analytic Stories that are tagged with the Correlation Searches. Hence, in order to associate a Correlation Search with MITRE ATT&CK Techniques, you will need to create a new Analytic Story and add your Correlation Search with the appropriate tags.
Note: Please go to Splunk Documentation on How to create a Correlation Search
For example, if we want the Correlation Search “Brute Force Access Behavior Detected” to be associated with “Brute Force” Technique under “Credential Access” tactic, we need to perform the following steps:
Go to “Configure –> Content –> Content Management” from Enterprise Security Application menu. Click on “Create New Content” and select “Analytic Story”
Enter a Name and fill other details as necessary for this analytic story. Click on “Add Search” and select “Brute Force Access Behavior Detected”
Enter detection
for Type field and under Annotations enter mitre_attack
for Name and Brute Force
for Mappings (this should match the technique)
Click Save to save the Analytic Story with annotation and mapping with the defined correlation search. You can add many correlation searches under one analytic story with defined mappings.
Once saved, the correlation search will populate both the Compliance and Triggered Techniques dashboards.
Each correlation rule is associated with 1 or more technique IDs. For a given correlation rule you if you simply want to add the technique ID(s), then you have 2 choices:
Utilize Map Rule to Technique views
OR
Edit mitre_user_rule_technique_lookup.csv
directly.
NOTE: The scheduled searches combine this lookup along with analytic stories and checks against existing saved/correlation searches in order to create mitre_all_rule_technique_lookup.csv
, which is used within the app.
(1) Utilize Map Rule to Technique views
a. Go to “Configuration –> Map Rule to Technique” from MITRE ATT&CK Framework App menu. Initially it should appear something similar to following image.
Panel Descriptions:
Existing User Defined Mappings: This panel displays the contents of user defined mappings and refreshed every 30 seconds to display updates.
Newly Added User Defined Mapping: This panel displays the newly selected rule-to-technique mapping which is added to the lookup table.
b. Next, select the rule name form Rule Name dropdown menu item and associate with technique IDs from MITRE ATT&CK Technique multi-select then hit Submit. Both panels will be updated accordingly.
Important NOTE: If a rule name is already defined, this view does NOT add any mappings to the lookup in order to avoid duplicates. You will see No results found
message and will need to edit the lookup table manually.
(2) Edit mitre_user_rule_technique_lookup.csv
directly.
You can edit the csv directly or utilize Lookup Editor app from web interface.
The lookup file expects 2 fields:
rule_name
: The rule name as it appears in savedsearches.conf
(e.g. “Access - Excessive Failed Logins - Rule”)technique_id
: MITRE ATT&CK Technique ID (e.g. T1078 for Valid Accounts) list separated by spaces